aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGuido Falsi <madpilot@FreeBSD.org>2018-03-09 21:11:54 +0000
committerGuido Falsi <madpilot@FreeBSD.org>2018-03-09 21:11:54 +0000
commit49975386b42ac3081a8a39b347149b1d16849290 (patch)
tree98b3963e9c55940eb80f59854e24713a6a934e68
parente61cf02fa769190f78567b440bed435b9a56a401 (diff)
- Update net/unison to new major release 2.51.2
- Preserve previous major release 2.48.14 as net/unison248 for compatibility reasons
Notes
Notes: svn path=/head/; revision=464009
-rw-r--r--UPDATING11
-rw-r--r--net/Makefile1
-rw-r--r--net/unison/Makefile3
-rw-r--r--net/unison/distinfo6
-rw-r--r--net/unison248/Makefile108
-rw-r--r--net/unison248/distinfo3
-rw-r--r--net/unison248/files/patch-Makefile.OCaml34
-rw-r--r--net/unison248/files/patch-copy.ml (renamed from net/unison/files/patch-copy.ml)0
-rw-r--r--net/unison248/files/patch-fsmonitor_linux_Makefile20
-rw-r--r--net/unison248/files/patch-fsmonitor_linux_inotify__stubs.c17
-rw-r--r--net/unison248/files/unison.desktop.in12
-rw-r--r--net/unison248/pkg-descr11
-rw-r--r--net/unison248/pkg-message4
-rw-r--r--net/unison248/pkg-message.nox113
-rw-r--r--net/unison248/pkg-plist8
15 files changed, 236 insertions, 5 deletions
diff --git a/UPDATING b/UPDATING
index 20e71d3dad57..12cf81541a24 100644
--- a/UPDATING
+++ b/UPDATING
@@ -5,6 +5,17 @@ they are unavoidable.
You should get into the habit of checking this file for changes each time
you update your ports collection, before attempting any port upgrades.
+20180309:
+ AFFECTS: users of net/unison
+ AUTHOR: madpilot@FreeBSD.org
+
+ Unison has been upgraded to version 2.51, which uses a different
+ wire protocol than 2.48 did. In order to support synchronization
+ with other computers where Unison is still at version 2.48, a new
+ port net/unison248 has been created. It provides unison248 and,
+ for the x11 flavor, also unison248-text. This unison248 port can
+ be installed in parallel with the existing net/unison port.
+
20180308:
AFFECTS: */php* */pecl* */pear*
AUTHOR: mat@FreeBSD.org
diff --git a/net/Makefile b/net/Makefile
index 7d8ec39a3729..e847997aa6fd 100644
--- a/net/Makefile
+++ b/net/Makefile
@@ -1435,6 +1435,7 @@
SUBDIR += unison-devel
SUBDIR += unison232
SUBDIR += unison240
+ SUBDIR += unison248
SUBDIR += unix2tcp
SUBDIR += uplog
SUBDIR += urelay
diff --git a/net/unison/Makefile b/net/unison/Makefile
index e1bbdcf92415..edcae5cc302d 100644
--- a/net/unison/Makefile
+++ b/net/unison/Makefile
@@ -2,9 +2,8 @@
# $FreeBSD$
PORTNAME= unison
-PORTVERSION= 2.48.15
+PORTVERSION= 2.51.2
DISTVERSIONPREFIX= v
-DISTVERSIONSUFFIX= v4
CATEGORIES= net
MAINTAINER= madpilot@FreeBSD.org
diff --git a/net/unison/distinfo b/net/unison/distinfo
index 1dbdd4d9ac85..2a3281b48bf1 100644
--- a/net/unison/distinfo
+++ b/net/unison/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1518118647
-SHA256 (bcpierce00-unison-v2.48.15v4_GH0.tar.gz) = f8c7e982634bbe1ed6510fe5b36b6c5c55c06caefddafdd9edc08812305fdeec
-SIZE (bcpierce00-unison-v2.48.15v4_GH0.tar.gz) = 1911781
+TIMESTAMP = 1520431786
+SHA256 (bcpierce00-unison-v2.51.2_GH0.tar.gz) = a2efcbeab651be6df69cc9b253011a07955ecb91fb407a219719451197849d5e
+SIZE (bcpierce00-unison-v2.51.2_GH0.tar.gz) = 1398790
diff --git a/net/unison248/Makefile b/net/unison248/Makefile
new file mode 100644
index 000000000000..0c3d2880d230
--- /dev/null
+++ b/net/unison248/Makefile
@@ -0,0 +1,108 @@
+# Created by: Dan Pelleg <dpelleg+unison@cs.cmu.edu>
+# $FreeBSD$
+
+PORTNAME= unison
+PORTVERSION= 2.48.15
+DISTVERSIONPREFIX= v
+DISTVERSIONSUFFIX= v4
+CATEGORIES= net
+
+MAINTAINER= madpilot@FreeBSD.org
+COMMENT= User-level file synchronization tool
+
+LICENSE= GPLv3
+
+FLAVORS= x11 nox11
+FLAVOR?= ${FLAVORS[1]}
+
+VERSIONSUFFIX= 248
+
+nox11_PKGNAMESUFFIX= ${VERSIONSUFFIX}-nox11
+nox11_CONFLICTS_INSTALL= unison${VERSIONSUFFIX}
+
+x11_PKGNAMESUFFIX= ${VERSIONSUFFIX}
+x11_CONFLICTS_INSTALL= unison${VERSIONSUFFIX}-nox11
+x11_BUILD_DEPENDS= lablgtk2:x11-toolkits/ocaml-lablgtk2 \
+ icotool:graphics/icoutils
+x11_LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \
+ libfreetype.so:print/freetype2
+x11_RUN_DEPENDS= lablgtk2:x11-toolkits/ocaml-lablgtk2
+
+PLIST_SUB= PORTVERSION=${PORTVERSION} VERSIONSUFFIX=${VERSIONSUFFIX}
+USES= gmake localbase
+USE_OCAML= yes
+WRKSRC_SUBDIR= src
+NO_OCAML_RUNDEPENDS=yes
+CONFLICTS= unison-devel-[0-9]*
+MAKE_ENV= CLIBS="${LIBS:S/^-/-ccopt -/}" COFLAGS="${CFLAGS:C/ *(-[^ ]*) */ -ccopt \"\1 \"/gW}"
+MAKE_JOBS_UNSAFE= yes
+ALL_TARGET= unison all
+
+USE_GITHUB= yes
+GH_ACCOUNT= bcpierce00
+
+DOCS= BUGS.txt NEWS README
+
+OPTIONS_DEFINE= DOCS FSMONITOR
+OPTIONS_DEFAULT?= FSMONITOR
+
+FSMONITOR_DESC= Compile and install fsmonitor plugin
+
+OPTIONS_SUB= YES
+
+FSMONITOR_LIB_DEPENDS= libinotify.so:devel/libinotify
+
+.if ${FLAVOR} == nox11
+MAKE_ARGS= UISTYLE=text
+PKGMESSAGE= ${PKGDIR}/pkg-message.nox11
+PLIST_SUB+= X11="@comment "
+.else
+MAKE_ARGS= UISTYLE=gtk2
+SUB_FILES= ${PORTNAME}.desktop
+SUB_LIST= PORTVERSION=${PORTVERSION} VERSIONSUFFIX=${VERSIONSUFFIX}
+USE_GNOME+= atk cairo gdkpixbuf2 glib20 gtk20 pango
+USES+= gettext-runtime
+PLIST_SUB+= X11=""
+.endif
+
+post-patch-FSMONITOR-off:
+ @${REINPLACE_CMD} -e 's/-include fsmonitor/#&/' \
+ ${WRKSRC}/Makefile.OCaml
+
+post-patch-FSMONITOR-on:
+ @${REINPLACE_CMD} \
+ -e '/let suffix = if Util.osType/s/else "" in/else "${VERSIONSUFFIX}" in/' \
+ ${WRKSRC}/fswatch.ml
+
+post-patch:
+.if ${FLAVOR} == nox11
+ @${REINPLACE_CMD} -e 's/CFLAGS/COFLAGS/g' \
+ ${WRKSRC}/Makefile.OCaml ${WRKSRC}/fsmonitor/linux/Makefile
+.else
+ @${REINPLACE_CMD} -Ee 's@(\+|/)(lablgtk2)@\1site-lib/\2@' \
+ -e 's/CFLAGS/COFLAGS/g' \
+ ${WRKSRC}/Makefile.OCaml ${WRKSRC}/fsmonitor/linux/Makefile
+.endif
+
+.if ${FLAVOR} == x11
+post-build:
+ @${ECHO} Building text-only version
+ @${ECHO} ${WRKSRC}
+ ${SETENV} ${MAKE_ENV} ${MAKE_CMD} -C ${WRKSRC} UISTYLE=text NAME=unison-text
+ @cd ${WRKSRC}/win32rc && ${LOCALBASE}/bin/icotool -x U.ico
+.endif
+
+do-install:
+ ${INSTALL_PROGRAM} ${WRKSRC}/${PORTNAME} ${STAGEDIR}${PREFIX}/bin/${PORTNAME}${VERSIONSUFFIX}
+ @${MKDIR} ${STAGEDIR}${DOCSDIR}
+ cd ${WRKSRC} && ${INSTALL_DATA} ${DOCS} ${STAGEDIR}${DOCSDIR}
+.if ${FLAVOR} == x11
+ ${INSTALL_PROGRAM} ${WRKSRC}/${PORTNAME}-text ${STAGEDIR}${PREFIX}/bin/${PORTNAME}${VERSIONSUFFIX}-text
+ ${INSTALL_DATA} ${WRKDIR}/${PORTNAME}.desktop ${STAGEDIR}${DESKTOPDIR}/${PORTNAME}${VERSIONSUFFIX}.desktop
+ ${INSTALL_DATA} ${WRKSRC}/win32rc/U_4_48x48x32.png ${STAGEDIR}${PREFIX}/share/pixmaps/${PORTNAME}${VERSIONSUFFIX}.png
+.endif
+
+do-install-FSMONITOR-on:
+ ${INSTALL_PROGRAM} ${WRKSRC}/${PORTNAME}-fsmonitor ${STAGEDIR}${PREFIX}/bin/${PORTNAME}-fsmonitor${VERSIONSUFFIX}
+
+.include <bsd.port.mk>
diff --git a/net/unison248/distinfo b/net/unison248/distinfo
new file mode 100644
index 000000000000..1dbdd4d9ac85
--- /dev/null
+++ b/net/unison248/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1518118647
+SHA256 (bcpierce00-unison-v2.48.15v4_GH0.tar.gz) = f8c7e982634bbe1ed6510fe5b36b6c5c55c06caefddafdd9edc08812305fdeec
+SIZE (bcpierce00-unison-v2.48.15v4_GH0.tar.gz) = 1911781
diff --git a/net/unison248/files/patch-Makefile.OCaml b/net/unison248/files/patch-Makefile.OCaml
new file mode 100644
index 000000000000..3e91ae298763
--- /dev/null
+++ b/net/unison248/files/patch-Makefile.OCaml
@@ -0,0 +1,34 @@
+--- Makefile.OCaml.orig 2017-03-23 16:39:49 UTC
++++ Makefile.OCaml
+@@ -32,7 +32,11 @@ ifeq ($(shell uname),OpenBSD)
+ else
+ ifeq ($(shell uname),NetBSD)
+ OSARCH=NetBSD
++else
++ifeq ($(shell uname),FreeBSD)
++ OSARCH=FreeBSD
+ endif
++endif
+ ifeq ($(shell uname),Linux)
+ OSARCH=Linux
+ endif
+@@ -311,6 +315,10 @@ ifeq ($(OSARCH),Linux)
+ -include fsmonitor/linux/Makefile src/fsmonitor/linux/Makefile
+ endif
+
++ifeq ($(OSARCH),FreeBSD)
++-include fsmonitor/linux/Makefile src/fsmonitor/linux/Makefile
++endif
++
+ ifeq ($(OSARCH),win32gnuc)
+ -include fsmonitor/windows/Makefile src/fsmonitor/windows/Makefile
+ endif
+@@ -436,7 +444,7 @@ win32rc/unison.res.lib: win32rc/unison.res
+
+ %.o %.obj: %.c
+ @echo "$(OCAMLOPT): $< ---> $@"
+- $(CAMLC) $(CAMLFLAGS) -ccopt $(OUTPUT_SEL)$(CWD)/$@ -c $(CWD)/$<
++ $(CAMLC) $(CAMLFLAGS) -ccopt $(OUTPUT_SEL)$(CWD)/$@ -c $(CFLAGS) $(CWD)/$<
+
+ $(NAME)$(EXEC_EXT): $(CAMLOBJS) $(COBJS)
+ @echo Linking $@
diff --git a/net/unison/files/patch-copy.ml b/net/unison248/files/patch-copy.ml
index 3c961c6773ee..3c961c6773ee 100644
--- a/net/unison/files/patch-copy.ml
+++ b/net/unison248/files/patch-copy.ml
diff --git a/net/unison248/files/patch-fsmonitor_linux_Makefile b/net/unison248/files/patch-fsmonitor_linux_Makefile
new file mode 100644
index 000000000000..820041472d23
--- /dev/null
+++ b/net/unison248/files/patch-fsmonitor_linux_Makefile
@@ -0,0 +1,20 @@
+--- fsmonitor/linux/Makefile.orig 2017-03-23 16:47:46 UTC
++++ fsmonitor/linux/Makefile
+@@ -18,6 +18,10 @@ else
+ FSMCAMLLIBS=$(FSMOCAMLLIBS)
+ endif
+
++ifeq ($(OSARCH),FreeBSD)
++ CLIBS+=-cclib -linotify
++endif
++
+ buildexecutable:: $(FSMONITOR)$(EXEC_EXT)
+
+ $(FSMONITOR)$(EXEC_EXT): $(FSMCAMLOBJS) $(FSMCOBJS)
+@@ -26,4 +30,4 @@ $(FSMONITOR)$(EXEC_EXT): $(FSMCAMLOBJS) $(FSMCOBJS)
+
+ clean::
+ rm -f $(DIR)/*.cm[iox] $(DIR)/*.o $(DIR)/*~
+- rm -f $(FSMONITOR)$(EXEC_EXT)
+\ No newline at end of file
++ rm -f $(FSMONITOR)$(EXEC_EXT)
diff --git a/net/unison248/files/patch-fsmonitor_linux_inotify__stubs.c b/net/unison248/files/patch-fsmonitor_linux_inotify__stubs.c
new file mode 100644
index 000000000000..fa0be0ade537
--- /dev/null
+++ b/net/unison248/files/patch-fsmonitor_linux_inotify__stubs.c
@@ -0,0 +1,17 @@
+--- fsmonitor/linux/inotify_stubs.c.orig 2017-03-23 16:25:03 UTC
++++ fsmonitor/linux/inotify_stubs.c
+@@ -27,9 +27,13 @@
+ #include <caml/signals.h>
+ #include <caml/callback.h>
+
++#include <sys/param.h>
++
++#if !defined(__FreeBSD__)
+ #include <features.h>
++#endif
+
+-#if __GLIBC__ >= 2 && __GLIBC_MINOR__ >= 4
++#if (__GLIBC__ >= 2 && __GLIBC_MINOR__ >= 4) || defined(__FreeBSD__)
+ #define GLIBC_SUPPORT_INOTIFY 1
+ #else
+ #define GLIBC_SUPPORT_INOTIFY 0
diff --git a/net/unison248/files/unison.desktop.in b/net/unison248/files/unison.desktop.in
new file mode 100644
index 000000000000..eb48bf8116c0
--- /dev/null
+++ b/net/unison248/files/unison.desktop.in
@@ -0,0 +1,12 @@
+[Desktop Entry]
+Encoding=UTF-8
+Name=Unison %%PORTVERSION%%
+GenericName=File-synchronization tool
+Type=Application
+Terminal=false
+StartupNotify=true
+Categories=GTK;Utility;
+Exec=unison%%VERSIONSUFFIX%%
+Icon=unison%%VERSIONSUFFIX%%.png
+Comment=Synchronize files (directories) over different disks (hosts)
+Comment[ru]=Синхронизация файлов (каталогов) на нескольких дисках (компьютерах)
diff --git a/net/unison248/pkg-descr b/net/unison248/pkg-descr
new file mode 100644
index 000000000000..ba302a0f4ae6
--- /dev/null
+++ b/net/unison248/pkg-descr
@@ -0,0 +1,11 @@
+Unison is a file-synchronization tool for Unix and Windows. It allows two
+replicas of a collection of files and directories to be stored on different
+hosts (or different disks on the same host), modified separately, and then
+brought up to date by propagating the changes in each replica to the other.
+
+Unison shares a number of features with tools such as configuration
+management packages (CVS, PRCS, etc.) distributed filesystems (Coda, etc.)
+uni-directional mirroring utilities (rsync, etc.) and other synchronizers
+(Intellisync, Reconcile, etc).
+
+WWW: http://www.cis.upenn.edu/~bcpierce/unison/
diff --git a/net/unison248/pkg-message b/net/unison248/pkg-message
new file mode 100644
index 000000000000..3c1cfd40d2c0
--- /dev/null
+++ b/net/unison248/pkg-message
@@ -0,0 +1,4 @@
+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+Together with a gtk-enabled version, a text-only unison-text binary
+is installed as it depends on a smaller number of libraries.
+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
diff --git a/net/unison248/pkg-message.nox11 b/net/unison248/pkg-message.nox11
new file mode 100644
index 000000000000..fe8b86b9b4eb
--- /dev/null
+++ b/net/unison248/pkg-message.nox11
@@ -0,0 +1,3 @@
+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+A text-only unison binary is installed.
+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
diff --git a/net/unison248/pkg-plist b/net/unison248/pkg-plist
new file mode 100644
index 000000000000..7496e9435cec
--- /dev/null
+++ b/net/unison248/pkg-plist
@@ -0,0 +1,8 @@
+bin/unison%%VERSIONSUFFIX%%
+%%FSMONITOR%%bin/unison-fsmonitor%%VERSIONSUFFIX%%
+%%X11%%share/applications/unison%%VERSIONSUFFIX%%.desktop
+%%X11%%bin/unison%%VERSIONSUFFIX%%-text
+%%X11%%share/pixmaps/unison%%VERSIONSUFFIX%%.png
+%%PORTDOCS%%%%DOCSDIR%%/BUGS.txt
+%%PORTDOCS%%%%DOCSDIR%%/NEWS
+%%PORTDOCS%%%%DOCSDIR%%/README