diff --git a/net/unison/Makefile b/net/unison/Makefile new file mode 100644 index 00000000000..1fdcd89dac0 --- /dev/null +++ b/net/unison/Makefile @@ -0,0 +1,60 @@ +# $OpenBSD: Makefile,v 1.1.1.1 2002/12/22 09:47:24 sturm Exp $ + +COMMENT= "multi-platform file synchronization tool" + +DISTNAME= unison-2.9.1 +CATEGORIES= net + +HOMEPAGE= http://www.cis.upenn.edu/~bcpierce/unison/ + +MAINTAINER= Zvezdan Petkovic + +# GPL +PERMIT_PACKAGE_CDROM= Yes +PERMIT_PACKAGE_FTP= Yes +PERMIT_DISTFILES_CDROM= Yes +PERMIT_DISTFILES_FTP= Yes + +MASTER_SITES= ${HOMEPAGE}/download/stable/${DISTNAME}/ +DISTFILES= src.tar.gz +DIST_SUBDIR= ${DISTNAME} + +MODULES= ocaml + +USE_GMAKE= Yes + +FLAVORS= gtk +FLAVOR?= +.if ${FLAVOR:L:Mgtk} +BUILD_DEPENDS+= ::x11/lablgtk +LIB_DEPENDS= gtk.1.2,gdk.1.2::x11/gtk+ +MAKE_FLAGS= UISTYLE=gtk +USE_X11= Yes +.else +MAKE_FLAGS= UISTYLE=text +.endif + +MAKE_FLAGS+= NATIVE=${MODOCAML_NATIVE:S/Yes/true/:S/No/false/} \ + OCAMLOPT=ocamlopt.opt +# We are still not sure whether ocaml works -with-pthreads on all +# architectures. For now keep it at default false. +# MAKE_FLAGS+= THREADS=true + +NO_REGRESS= Yes + +# CFLAGS _must_ be empty. This is an OCaml compiler. +CFLAGS= + +# Empty to avoid multiple all:: entries and use the first target entry. +ALL_TARGET= + +DOCS= BUGS.txt NEWS README + +# Avoid the nightmare of their Makefile install target. +# Do not use INSTALL_PROGRAM, as the bytecode version must not be stripped! +do-install: + ${INSTALL_SCRIPT} ${WRKSRC}/unison ${PREFIX}/bin + ${INSTALL_DATA_DIR} ${PREFIX}/share/doc/unison + @cd ${WRKSRC} && ${INSTALL_DATA} ${DOCS} ${PREFIX}/share/doc/unison + +.include diff --git a/net/unison/distinfo b/net/unison/distinfo new file mode 100644 index 00000000000..7eea7a935af --- /dev/null +++ b/net/unison/distinfo @@ -0,0 +1,3 @@ +MD5 (unison-2.9.1/src.tar.gz) = d8084fa87c13671de21ec1b701a4606c +RMD160 (unison-2.9.1/src.tar.gz) = f00ae5ab3e6e9bd04e184b3c1bc6a4c78b84fdc1 +SHA1 (unison-2.9.1/src.tar.gz) = d355639b8191f5c74e652fe257fd98dcf76d4cc0 diff --git a/net/unison/patches/patch-Makefile_OCaml b/net/unison/patches/patch-Makefile_OCaml new file mode 100644 index 00000000000..4e1dec3be7a --- /dev/null +++ b/net/unison/patches/patch-Makefile_OCaml @@ -0,0 +1,59 @@ +$OpenBSD: patch-Makefile_OCaml,v 1.1.1.1 2002/12/22 09:47:24 sturm Exp $ +# Authors assumed here that any non-Solaris Unix system must be Linux. +# This corrects the thing but requires changing linux to Linux elsewhere. +# Also, an assumption about bash changed to ksh for OpenBSD. +--- Makefile.OCaml.orig Thu Apr 11 01:13:23 2002 ++++ Makefile.OCaml Wed Dec 18 18:37:35 2002 +@@ -42,7 +42,7 @@ else + ifeq ($(shell hostname),saul.cis.upenn.edu) + OSARCH=solaris + else +- OSARCH=linux ++ OSARCH=$(shell uname -s) + endif + ETAGS=etags + endif +@@ -157,9 +157,12 @@ endif + ifeq ($(OSARCH), win32gnuc) + GUILIBDIR=$(OCAMLLIBDIR)/lablgtk/cclibs + endif +-ifeq ($(OSARCH), linux) ++ifeq ($(OSARCH), Linux) + X11LIBDIR=/usr/X11R6/lib + endif ++ifeq ($(OSARCH), OpenBSD) ++ X11LIBDIR=${X11BASE}/lib ++endif + + # Developer-only directories + ifeq ($(shell hostname), saul.cis.upenn.edu) +@@ -243,7 +246,10 @@ ifeq ($(STATIC), true) + # libcurses is not in a standard place in older Solaris releases. + STATICLIBS+=-cclib -R/usr/xpg4/lib + endif +- ifeq ($(OSARCH), linux) ++ ifeq ($(OSARCH), Linux) ++ STATICLIBS+=-cclib -static ++ endif ++ ifeq ($(OSARCH), OpenBSD) + STATICLIBS+=-cclib -static + endif + CLIBS=$(STATICLIBS) +@@ -254,9 +260,14 @@ endif + + # Include an automatically generated list of dependencies + include .depend +- +-ifeq ($(shell echo type -t ocamldot | bash), file) +- OCAMLDOT=true ++ifeq ($(OSARCH), OpenBSD) ++ ifeq ($(shell echo type ocamldot | ksh), file) ++ OCAMLDOT=true ++ endif ++else ++ ifeq ($(shell echo type -t ocamldot | bash), file) ++ OCAMLDOT=true ++ endif + endif + + # Rebuild dependencies (must be invoked manually) diff --git a/net/unison/pkg/DESCR b/net/unison/pkg/DESCR new file mode 100644 index 00000000000..87270af58e0 --- /dev/null +++ b/net/unison/pkg/DESCR @@ -0,0 +1,10 @@ +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. + +Flavors: + gtk - build with a Gtk GUI (recommended for X users) + +WWW: ${HOMEPAGE} diff --git a/net/unison/pkg/PLIST b/net/unison/pkg/PLIST new file mode 100644 index 00000000000..07064f38716 --- /dev/null +++ b/net/unison/pkg/PLIST @@ -0,0 +1,6 @@ +@comment $OpenBSD: PLIST,v 1.1.1.1 2002/12/22 09:47:24 sturm Exp $ +bin/unison +share/doc/unison/BUGS.txt +share/doc/unison/NEWS +share/doc/unison/README +@dirrm share/doc/unison