aboutsummaryrefslogtreecommitdiff
path: root/sysutils/freefilesync
diff options
context:
space:
mode:
authorKevin Lo <kevlo@FreeBSD.org>2016-03-09 02:21:21 +0000
committerKevin Lo <kevlo@FreeBSD.org>2016-03-09 02:21:21 +0000
commitbe19a7dce2e25305c0bbbd56bddc92fb7f2bc948 (patch)
treec1cabfa55b7909a8432cfbda9c320bf8553b348e /sysutils/freefilesync
parent3c396a3170aa516d8a26553fe2cde55129be055b (diff)
downloadports-be19a7dce2e25305c0bbbd56bddc92fb7f2bc948.tar.gz
ports-be19a7dce2e25305c0bbbd56bddc92fb7f2bc948.zip
Notes
Diffstat (limited to 'sysutils/freefilesync')
-rw-r--r--sysutils/freefilesync/Makefile30
-rw-r--r--sysutils/freefilesync/distinfo2
-rw-r--r--sysutils/freefilesync/files/patch-Makefile51
-rw-r--r--sysutils/freefilesync/files/patch-fs_native.cpp12
-rw-r--r--sysutils/freefilesync/files/patch-ui_version__check.cpp23
-rw-r--r--sysutils/freefilesync/files/patch-zen_file__access.cpp11
-rw-r--r--sysutils/freefilesync/files/patch-zen_shell__execute.h11
-rw-r--r--sysutils/freefilesync/files/patch-zen_tick__count.h11
-rw-r--r--sysutils/freefilesync/pkg-descr6
-rw-r--r--sysutils/freefilesync/pkg-plist101
10 files changed, 258 insertions, 0 deletions
diff --git a/sysutils/freefilesync/Makefile b/sysutils/freefilesync/Makefile
new file mode 100644
index 000000000000..a7d0d29f6399
--- /dev/null
+++ b/sysutils/freefilesync/Makefile
@@ -0,0 +1,30 @@
+# $FreeBSD$
+
+PORTNAME= freefilesync
+PORTVERSION= 7.9
+CATEGORIES= sysutils
+MASTER_SITES= http://www.freefilesync.org/download/2o5osm21vcjbobv/ \
+ http://www.freefilesync.org/archive/
+DISTNAME= FreeFileSync_${PORTVERSION}_Source
+
+MAINTAINER= kevlo@FreeBSD.org
+COMMENT= Backup software to synchronize files and folders
+
+LICENSE= GPLv3
+
+BUILD_DEPENDS= ${LOCALBASE}/include/zenxml/xml.h:${PORTSDIR}/textproc/zenxml
+LIB_DEPENDS= libboost_system.so:${PORTSDIR}/devel/boost-libs \
+ libnotify.so:${PORTSDIR}/devel/libnotify
+
+WRKSRC= ${WRKDIR}/FreeFileSync/Source
+
+USES= dos2unix gmake pkgconfig zip
+USE_LDCONFIG= yes
+USE_WX= 3.0+
+WX_UNICODE= yes
+
+post-patch:
+ @${REINPLACE_CMD} -e 's/wx-config/${WX_CONFIG:T}/' \
+ -e 's,g++,${CXX},' ${WRKSRC}/Makefile
+
+.include <bsd.port.mk>
diff --git a/sysutils/freefilesync/distinfo b/sysutils/freefilesync/distinfo
new file mode 100644
index 000000000000..07a637a9e511
--- /dev/null
+++ b/sysutils/freefilesync/distinfo
@@ -0,0 +1,2 @@
+SHA256 (FreeFileSync_7.9_Source.zip) = 68a80960b4ac5a0cef94e504a46ac97aa0c2a9be2e012a11b090621d1fd6dec1
+SIZE (FreeFileSync_7.9_Source.zip) = 2991263
diff --git a/sysutils/freefilesync/files/patch-Makefile b/sysutils/freefilesync/files/patch-Makefile
new file mode 100644
index 000000000000..cdee15d6f74c
--- /dev/null
+++ b/sysutils/freefilesync/files/patch-Makefile
@@ -0,0 +1,51 @@
+--- Makefile.orig 2016-03-09 02:07:44 UTC
++++ Makefile
+@@ -1,14 +1,14 @@
+ APPNAME = FreeFileSync
+-prefix = /usr
++prefix = $(PREFIX)
+ BINDIR = $(DESTDIR)$(prefix)/bin
+ SHAREDIR = $(DESTDIR)$(prefix)/share
+ APPSHAREDIR = $(SHAREDIR)/$(APPNAME)
+ DOCSHAREDIR = $(SHAREDIR)/doc/$(APPNAME)
+
+ CXXFLAGS = -std=c++14 -pipe -DWXINTL_NO_GETTEXT_MACRO -I../.. -I../../zenXml -include "zen/i18n.h" -include "zen/warn_static.h" -Wall \
+--O3 -DNDEBUG `wx-config --cxxflags --debug=no` -DZEN_LINUX -pthread
++-O3 -DNDEBUG `wxgtk2u-3.0-config --cxxflags --debug=no` -DZEN_LINUX -pthread
+
+-LINKFLAGS = -s `wx-config --libs std, aui --debug=no` -lboost_thread -lboost_chrono -lboost_system -lz -pthread
++LINKFLAGS = -s `wxgtk2u-3.0-config --libs std, aui --debug=no` -lboost_thread -lboost_chrono -lboost_system -lz -pthread
+
+ #Gtk - support recycler/icon loading/no button border/grid scrolling
+ CXXFLAGS += `pkg-config --cflags gtk+-2.0`
+@@ -96,10 +96,10 @@ launchpad: FreeFileSync
+
+ ../Obj/FFS_GCC_Make_Release/ffs/src/%.o : %.cpp
+ mkdir -p $(dir $@)
+- g++ $(CXXFLAGS) -c $< -o $@
++ c++ $(CXXFLAGS) -c $< -o $@
+
+ FreeFileSync: $(OBJECT_LIST)
+- g++ -o ../Build/$(APPNAME) $(OBJECT_LIST) $(LINKFLAGS)
++ c++ -o ../Build/$(APPNAME) $(OBJECT_LIST) $(LINKFLAGS)
+
+ clean:
+ rm -rf ../Obj/FFS_GCC_Make_Release
+@@ -108,16 +108,11 @@ clean:
+
+ install:
+ mkdir -p $(BINDIR)
+- cp ../Build/$(APPNAME) $(BINDIR)
++ cp ../Build/$(APPNAME) $(BINDIR)/freefilesync
+
+ mkdir -p $(APPSHAREDIR)
+ cp -R ../Build/Languages/ \
+ ../Build/Help/ \
+- ../Build/Sync_Complete.wav \
+ ../Build/Resources.zip \
+ ../Build/styles.gtk_rc \
+ $(APPSHAREDIR)
+-
+- mkdir -p $(DOCSHAREDIR)
+- cp ../Build/Changelog.txt $(DOCSHAREDIR)/changelog
+- gzip $(DOCSHAREDIR)/changelog
diff --git a/sysutils/freefilesync/files/patch-fs_native.cpp b/sysutils/freefilesync/files/patch-fs_native.cpp
new file mode 100644
index 000000000000..49b4b60dac35
--- /dev/null
+++ b/sysutils/freefilesync/files/patch-fs_native.cpp
@@ -0,0 +1,12 @@
+--- fs/native.cpp.orig 2016-03-09 02:07:44 UTC
++++ fs/native.cpp
+@@ -84,8 +84,7 @@ void preAllocateSpaceBestEffort(FileHand
+
+ #elif defined ZEN_LINUX
+ //don't use potentially inefficient ::posix_fallocate!
+- const int rv = ::fallocate(fh, //int fd,
+- 0, //int mode,
++ const int rv = ::posix_fallocate(fh, //int fd,
+ 0, //off_t offset
+ streamSize); //off_t len
+ if (rv != 0)
diff --git a/sysutils/freefilesync/files/patch-ui_version__check.cpp b/sysutils/freefilesync/files/patch-ui_version__check.cpp
new file mode 100644
index 000000000000..44951bab256b
--- /dev/null
+++ b/sysutils/freefilesync/files/patch-ui_version__check.cpp
@@ -0,0 +1,23 @@
+--- ui/version_check.cpp.orig 2016-03-09 02:07:44 UTC
++++ ui/version_check.cpp
+@@ -112,17 +112,10 @@ std::string geHttpPostParameters() //mus
+ const auto osvMinor = getOsVersion().minor;
+
+ #elif defined ZEN_LINUX
+- params += "&os_name=Linux";
+- assert(std::this_thread::get_id() == mainThreadId);
+-
+- const wxLinuxDistributionInfo distribInfo = wxGetLinuxDistributionInfo();
+- assert(contains(distribInfo.Release, L'.'));
+- std::vector<wxString> digits = split<wxString>(distribInfo.Release, L'.'); //e.g. "15.04"
+- digits.resize(2);
+- //distribInfo.Id //e.g. "Ubuntu"
++ params += "&os_name=FreeBSD";
+
+- const int osvMajor = stringTo<int>(digits[0]);
+- const int osvMinor = stringTo<int>(digits[1]);
++ const int osvMajor = 0;
++ const int osvMinor = 0;
+
+ #elif defined ZEN_MAC
+ params += "&os_name=Mac";
diff --git a/sysutils/freefilesync/files/patch-zen_file__access.cpp b/sysutils/freefilesync/files/patch-zen_file__access.cpp
new file mode 100644
index 000000000000..a5ca03672f80
--- /dev/null
+++ b/sysutils/freefilesync/files/patch-zen_file__access.cpp
@@ -0,0 +1,11 @@
+--- ../../zen/file_access.cpp.orig 2016-03-07 22:01:11.201619000 +0800
++++ ../../zen/file_access.cpp 2016-03-07 22:01:27.906454000 +0800
+@@ -25,7 +25,7 @@
+ #endif
+
+ #elif defined ZEN_LINUX
+- #include <sys/vfs.h> //statfs
++ #include <sys/mount.h> //statfs
+ #include <sys/time.h> //lutimes
+ #ifdef HAVE_SELINUX
+ #include <selinux/selinux.h>
diff --git a/sysutils/freefilesync/files/patch-zen_shell__execute.h b/sysutils/freefilesync/files/patch-zen_shell__execute.h
new file mode 100644
index 000000000000..faaf0329e6e6
--- /dev/null
+++ b/sysutils/freefilesync/files/patch-zen_shell__execute.h
@@ -0,0 +1,11 @@
+--- ../../zen/shell_execute.h.orig 2016-03-08 10:01:14.347569000 +0800
++++ ../../zen/shell_execute.h 2016-03-08 10:01:42.930783000 +0800
+@@ -120,7 +120,7 @@
+ {
+ //Posix::system - execute a shell command
+ int rv = ::system(command.c_str()); //do NOT use std::system as its documentation says nothing about "WEXITSTATUS(rv)", ect...
+- if (rv == -1 || WEXITSTATUS(rv) == 127) //http://linux.die.net/man/3/system "In case /bin/sh could not be executed, the exit status will be that of a command that does exit(127)"
++ if (rv == -1 ) //http://linux.die.net/man/3/system "In case /bin/sh could not be executed, the exit status will be that of a command that does exit(127)"
+ throw FileError(_("Incorrect command line:") + L"\n" + utfCvrtTo<std::wstring>(command));
+ }
+ else
diff --git a/sysutils/freefilesync/files/patch-zen_tick__count.h b/sysutils/freefilesync/files/patch-zen_tick__count.h
new file mode 100644
index 000000000000..8f601cd6d0a0
--- /dev/null
+++ b/sysutils/freefilesync/files/patch-zen_tick__count.h
@@ -0,0 +1,11 @@
+--- ../../zen/tick_count.h.orig 2016-03-07 17:18:11.038986000 +0800
++++ ../../zen/tick_count.h 2016-03-07 17:20:01.674266000 +0800
+@@ -128,7 +128,7 @@
+ #elif defined ZEN_LINUX
+ //gettimeofday() seems fine but is deprecated
+ timespec now = {};
+- if (::clock_gettime(CLOCK_MONOTONIC_RAW, &now) != 0) //CLOCK_MONOTONIC measures time reliably across processors!
++ if (::clock_gettime(CLOCK_MONOTONIC, &now) != 0) //CLOCK_MONOTONIC measures time reliably across processors!
+ return TickVal();
+
+ #elif defined ZEN_MAC
diff --git a/sysutils/freefilesync/pkg-descr b/sysutils/freefilesync/pkg-descr
new file mode 100644
index 000000000000..c38281abe6a6
--- /dev/null
+++ b/sysutils/freefilesync/pkg-descr
@@ -0,0 +1,6 @@
+FreeFileSync is a free Open Source software that helps you synchronize
+files and synchronize folders for Windows, Linux, FreeBSD and Mac OS X.
+It is designed to save your time setting up and running backup jobs while
+having nice visual feedback along the way.
+
+WWW: http://www.freefilesync.org/
diff --git a/sysutils/freefilesync/pkg-plist b/sysutils/freefilesync/pkg-plist
new file mode 100644
index 000000000000..7de85f9b3865
--- /dev/null
+++ b/sysutils/freefilesync/pkg-plist
@@ -0,0 +1,101 @@
+bin/freefilesync
+share/FreeFileSync/FreeFileSync.hhc
+share/FreeFileSync/FreeFileSync.hhp
+share/FreeFileSync/Resources.zip
+share/FreeFileSync/arabic.lng
+share/FreeFileSync/bulgarian.lng
+share/FreeFileSync/chinese_simple.lng
+share/FreeFileSync/chinese_traditional.lng
+share/FreeFileSync/croatian.lng
+share/FreeFileSync/czech.lng
+share/FreeFileSync/danish.lng
+share/FreeFileSync/dutch.lng
+share/FreeFileSync/english_uk.lng
+share/FreeFileSync/finnish.lng
+share/FreeFileSync/french.lng
+share/FreeFileSync/german.lng
+share/FreeFileSync/greek.lng
+share/FreeFileSync/hebrew.lng
+share/FreeFileSync/hindi.lng
+share/FreeFileSync/html/base.css
+share/FreeFileSync/html/command-line.html
+share/FreeFileSync/html/comparison-settings.html
+share/FreeFileSync/html/daylight-saving-time.html
+share/FreeFileSync/html/exclude-items.html
+share/FreeFileSync/html/expert-settings.html
+share/FreeFileSync/html/external-applications.html
+share/FreeFileSync/html/freefilesync.html
+share/FreeFileSync/html/macros.html
+share/FreeFileSync/html/realtimesync.html
+share/FreeFileSync/html/run-as-service.html
+share/FreeFileSync/html/schedule-a-batch-job.html
+share/FreeFileSync/html/synchronize-with-sftp.html
+share/FreeFileSync/html/tips-and-tricks.html
+share/FreeFileSync/html/variable-drive-letters.html
+share/FreeFileSync/html/versioning.html
+share/FreeFileSync/html/volume-shadow-copy.html
+share/FreeFileSync/hungarian.lng
+share/FreeFileSync/images/add-folder-pair.png
+share/FreeFileSync/images/automator-file-dropped.png
+share/FreeFileSync/images/basic-step-choose-folders.png
+share/FreeFileSync/images/basic-step-compare.png
+share/FreeFileSync/images/basic-step-start-sync.png
+share/FreeFileSync/images/basic-step-sync-config.png
+share/FreeFileSync/images/calendar-job-added.png
+share/FreeFileSync/images/com-settings-context.png
+share/FreeFileSync/images/comparison-settings.png
+share/FreeFileSync/images/comparison-variant-double-click.png
+share/FreeFileSync/images/config-double-click.png
+share/FreeFileSync/images/config-multiple-selection.png
+share/FreeFileSync/images/copy-alternative-path.png
+share/FreeFileSync/images/dialog-drag-move.png
+share/FreeFileSync/images/direct-synchronize.png
+share/FreeFileSync/images/donate.png
+share/FreeFileSync/images/explorer-context.png
+share/FreeFileSync/images/filter-context.png
+share/FreeFileSync/images/filter.png
+share/FreeFileSync/images/freefilesync-logo.png
+share/FreeFileSync/images/gnome-scheduler.png
+share/FreeFileSync/images/ignore-time-shift.png
+share/FreeFileSync/images/launch-automator.png
+share/FreeFileSync/images/main-window.png
+share/FreeFileSync/images/new-calendar-alarm.png
+share/FreeFileSync/images/open-finder-items.png
+share/FreeFileSync/images/path-by-volume-name.png
+share/FreeFileSync/images/realtimesync-create-shortcut.png
+share/FreeFileSync/images/realtimesync-logo.png
+share/FreeFileSync/images/realtimesync-main-window.png
+share/FreeFileSync/images/realtimesync-monitor-usb.png
+share/FreeFileSync/images/realtimesync-schedule.png
+share/FreeFileSync/images/realtimesync-shortcut-properties.png
+share/FreeFileSync/images/remove-drop-down-path.png
+share/FreeFileSync/images/remove-local-settings.png
+share/FreeFileSync/images/save-automator.png
+share/FreeFileSync/images/select-time-span.png
+share/FreeFileSync/images/setup-batch-job.png
+share/FreeFileSync/images/sftp-login.png
+share/FreeFileSync/images/show-thumbnails.png
+share/FreeFileSync/images/sync-settings-context.png
+share/FreeFileSync/images/synchronization-variant-double-click.png
+share/FreeFileSync/images/two-folder-drop.png
+share/FreeFileSync/images/view-filter-default.png
+share/FreeFileSync/images/windows-scheduler.png
+share/FreeFileSync/images/xp-scheduler.png
+share/FreeFileSync/italian.lng
+share/FreeFileSync/japanese.lng
+share/FreeFileSync/korean.lng
+share/FreeFileSync/lithuanian.lng
+share/FreeFileSync/outdated/norwegian.lng
+share/FreeFileSync/outdated/scottish_gaelic.lng
+share/FreeFileSync/polish.lng
+share/FreeFileSync/portuguese.lng
+share/FreeFileSync/portuguese_br.lng
+share/FreeFileSync/romanian.lng
+share/FreeFileSync/russian.lng
+share/FreeFileSync/serbian.lng
+share/FreeFileSync/slovenian.lng
+share/FreeFileSync/spanish.lng
+share/FreeFileSync/styles.gtk_rc
+share/FreeFileSync/swedish.lng
+share/FreeFileSync/turkish.lng
+share/FreeFileSync/ukrainian.lng