summaryrefslogtreecommitdiff
path: root/net/rsync
diff options
context:
space:
mode:
authorbjs <bjs@pkgsrc.org>2008-03-09 20:56:57 +0000
committerbjs <bjs@pkgsrc.org>2008-03-09 20:56:57 +0000
commit9e5632267def9991b1c3c9b9dabe4c891aea3375 (patch)
tree7d4588f71c251bee44a0940ce9e4147f0df5d66f /net/rsync
parentc0e008f2f1627cd50deb9bea72700a64c4bb4fe8 (diff)
downloadpkgsrc-9e5632267def9991b1c3c9b9dabe4c891aea3375.tar.gz
Update to rsync 3.0.0: Too many changes to list here, so please
see <http://samba.rsync.org/> or ${WRKSRC}/CHANGES for more information. While here: - Build it with libtool. - Include buildlink3.mk file for libiconv and change hacks.mk to set USE_GNU_ICONV=yes instead of including libiconv's b3.mk. - Added options.mk for inet6 and debug options. - Added example configuration file (all entries commented out)
Diffstat (limited to 'net/rsync')
-rw-r--r--net/rsync/Makefile44
-rw-r--r--net/rsync/PLIST4
-rw-r--r--net/rsync/distinfo11
-rw-r--r--net/rsync/hacks.mk4
-rw-r--r--net/rsync/options.mk20
-rw-r--r--net/rsync/patches/patch-aa62
-rw-r--r--net/rsync/patches/patch-ab97
7 files changed, 149 insertions, 93 deletions
diff --git a/net/rsync/Makefile b/net/rsync/Makefile
index 7a583e901f5..0c38d3e3a0b 100644
--- a/net/rsync/Makefile
+++ b/net/rsync/Makefile
@@ -1,8 +1,7 @@
-# $NetBSD: Makefile,v 1.69 2007/12/02 11:31:00 wiz Exp $
+# $NetBSD: Makefile,v 1.70 2008/03/09 20:56:57 bjs Exp $
-DISTNAME= rsync-2.6.9
+DISTNAME= rsync-3.0.0
CATEGORIES= net
-PKGREVISION= 1
MASTER_SITES= http://rsync.samba.org/ftp/rsync/ \
http://rsync.samba.org/ftp/rsync/old-versions/ \
ftp://ftp.sunet.se/pub/unix/admin/rsync/ \
@@ -15,20 +14,43 @@ COMMENT= Network file distribution/synchronisation utility
PKG_INSTALLATION_TYPES= overwrite pkgviews
PKG_DESTDIR_SUPPORT= user-destdir
-INSTALLATION_DIRS= bin ${PKGMANDIR}/man1 ${PKGMANDIR}/man5 share/doc/rsync
-
GNU_CONFIGURE= yes
-CONFIGURE_ARGS+= --with-included-popt \
- --with-rsyncd-conf=${PKG_SYSCONFDIR}/rsyncd.conf
TEST_TARGET= test
+USE_LIBTOOL= yes
+
+CONFIGURE_ARGS+= --with-included-popt
+CONFIGURE_ARGS+= --with-rsyncd-conf=${${PKG_SYSCONFDIR}/rsyncd.conf:L:Q}
+CONFIGURE_SCRIPT= configure.sh
+CONF_FILES= ${EGDIR}/rsyncd.conf ${PKG_SYSCONFDIR}/rsyncd.conf
+EGDIR= ${PREFIX}/share/examples/${PKGBASE}
PKG_SYSCONFSUBDIR= rsync
SUBST_CLASSES+= paths
SUBST_MESSAGE.paths= Fixing hardcoded paths.
SUBST_STAGE.paths= post-patch
-SUBST_FILES.paths= rsync.h rsync.1 rsyncd.conf.5
-SUBST_SED.paths= -e 's|/etc/rsyncd|${PKG_SYSCONFDIR}/rsyncd|g' \
- -e 's|/usr/bin/rsync|${PREFIX}/bin/rsync|g'
-
+SUBST_FILES.paths= ${WRKDIR}/rsyncd.conf rsync.1 rsyncd.conf.5
+SUBST_SED.paths= -e 's|/etc/rsyncd|${PKG_SYSCONFDIR}/rsyncd|g'
+SUBST_SED.paths+= -e 's|/usr/bin/rsync|${PREFIX}/bin/rsync|g'
+SUBST_VARS.paths= VARBASE
+
+.PHONY: install-examples
+install-examples:
+ ${RUN} \
+ ${INSTALL_DATA_DIR} ${DESTDIR}${EGDIR} && \
+ ${INSTALL_DATA} ${WRKDIR}/rsyncd.conf ${DESTDIR}${EGDIR}
+post-extract:
+ ${RUN} \
+ ${CP} ${FILESDIR}/rsyncd.conf ${WRKDIR}
+post-install: install-examples
+ ${RUN} \
+ ${INSTALL_DATA_DIR} \
+ ${DESTDIR}${PREFIX}/share/doc/${PKGBASE} && \
+ ${INSTALL_DATA} ${WRKSRC}/tech_report.tex \
+ ${DESTDIR}${PREFIX}/share/doc/${PKGBASE} && \
+ ${INSTALL_DATA} ${WRKSRC}/README \
+ ${DESTDIR}${PREFIX}/share/doc/${PKGBASE}
+
+.include "options.mk"
+.include "../../converters/libiconv/buildlink3.mk"
.include "../../mk/bsd.pkg.mk"
diff --git a/net/rsync/PLIST b/net/rsync/PLIST
index bf2dd72eafc..5f7b057bcbb 100644
--- a/net/rsync/PLIST
+++ b/net/rsync/PLIST
@@ -1,7 +1,9 @@
-@comment $NetBSD: PLIST,v 1.2 2002/01/10 11:00:19 martti Exp $
+@comment $NetBSD: PLIST,v 1.3 2008/03/09 20:56:57 bjs Exp $
bin/rsync
man/man1/rsync.1
man/man5/rsyncd.conf.5
share/doc/rsync/README
share/doc/rsync/tech_report.tex
+share/examples/rsync/rsyncd.conf
+@dirrm share/examples/rsync
@dirrm share/doc/rsync
diff --git a/net/rsync/distinfo b/net/rsync/distinfo
index 0c8e1dab10c..c64d04fe059 100644
--- a/net/rsync/distinfo
+++ b/net/rsync/distinfo
@@ -1,7 +1,6 @@
-$NetBSD: distinfo,v 1.26 2007/08/23 13:47:50 tron Exp $
+$NetBSD: distinfo,v 1.27 2008/03/09 20:56:57 bjs Exp $
-SHA1 (rsync-2.6.9.tar.gz) = 341618e230ea2e0e551d0ccf06f840d4f824c843
-RMD160 (rsync-2.6.9.tar.gz) = 36d270d9f01e9a8e808f426196796001bdd3d5d2
-Size (rsync-2.6.9.tar.gz) = 811841 bytes
-SHA1 (patch-aa) = f8193d10197d44f78d923b9c2e4809072d25e988
-SHA1 (patch-ab) = 1666dbc37c04c219886b2e5d160792e9b9e2b97d
+SHA1 (rsync-3.0.0.tar.gz) = 8c5582ba2977cd4bf96add95226c64b949931eec
+RMD160 (rsync-3.0.0.tar.gz) = ab71155c8329a195f2c194c2284546d4cae07a97
+Size (rsync-3.0.0.tar.gz) = 757821 bytes
+SHA1 (patch-ab) = eb9a5227351ddf52c9fcb4fcaca1459f4d24357f
diff --git a/net/rsync/hacks.mk b/net/rsync/hacks.mk
index bbaabc751db..cd26fe4dad5 100644
--- a/net/rsync/hacks.mk
+++ b/net/rsync/hacks.mk
@@ -1,9 +1,9 @@
-# $NetBSD: hacks.mk,v 1.2 2007/10/16 23:48:58 tnn Exp $
+# $NetBSD: hacks.mk,v 1.3 2008/03/09 20:56:57 bjs Exp $
### [Tue Nov 21 19:32:00 UTC 2006 : tvierling]
### iconv(..., NULL, 0, NULL, 0) crashes in libc version of iconv(3)
###
.if ${OPSYS} == "Interix"
PKG_HACKS+= pkgsrc-iconv
-.include "../../converters/libiconv/buildlink3.mk"
+USE_GNU_ICONV= yes
.endif
diff --git a/net/rsync/options.mk b/net/rsync/options.mk
new file mode 100644
index 00000000000..a8c9d09d1e1
--- /dev/null
+++ b/net/rsync/options.mk
@@ -0,0 +1,20 @@
+# $NetBSD: options.mk,v 1.1 2008/03/09 20:56:57 bjs Exp $
+
+PKG_OPTIONS_VAR= PKG_OPTIONS.rsync
+PKG_SUPPORTED_OPTIONS= debug inet6
+
+.include "../../mk/bsd.options.mk"
+
+.if !empty(PKG_OPTIONS:Minet6)
+CONFIGURE_ARGS+= --enable-ipv6
+.else
+CONFIGURE_ARGS+= --disable-ipv6
+.endif
+
+.if !empty(PKG_OPTIONS:Mdebug)
+CONFIGURE_ARGS+= --enable-debug
+MAKE_ENV+= STRIP_RSYNC=${STRIP}
+.else
+CONFIGURE_ARGS+= --disable-debug
+MAKE_ENV+= STRIP_RSYNC=${TRUE}
+.endif
diff --git a/net/rsync/patches/patch-aa b/net/rsync/patches/patch-aa
deleted file mode 100644
index cde3138330d..00000000000
--- a/net/rsync/patches/patch-aa
+++ /dev/null
@@ -1,62 +0,0 @@
-$NetBSD: patch-aa,v 1.11 2007/08/23 13:47:50 tron Exp $
-
---- sender.c.orig 2006-09-20 02:53:32.000000000 +0100
-+++ sender.c 2007-08-23 14:43:38.000000000 +0100
-@@ -123,6 +123,7 @@
- char fname[MAXPATHLEN];
- struct file_struct *file;
- unsigned int offset;
-+ size_t l = 0;
-
- if (ndx < 0 || ndx >= the_file_list->count)
- return;
-@@ -133,6 +134,20 @@
- file->dir.root, "/", NULL);
- } else
- offset = 0;
-+
-+ l = offset + 1;
-+ if (file) {
-+ if (file->dirname)
-+ l += strlen(file->dirname);
-+ if (file->basename)
-+ l += strlen(file->basename);
-+ }
-+
-+ if (l >= sizeof(fname)) {
-+ rprintf(FERROR, "Overlong pathname\n");
-+ exit_cleanup(RERR_FILESELECT);
-+ }
-+
- f_name(file, fname + offset);
- if (remove_source_files) {
- if (do_unlink(fname) == 0) {
-@@ -224,6 +239,7 @@
- enum logcode log_code = log_before_transfer ? FLOG : FINFO;
- int f_xfer = write_batch < 0 ? batch_fd : f_out;
- int i, j;
-+ size_t l = 0;
-
- if (verbose > 2)
- rprintf(FINFO, "send_files starting\n");
-@@ -259,6 +275,20 @@
- fname[offset++] = '/';
- } else
- offset = 0;
-+
-+ l = offset + 1;
-+ if (file) {
-+ if (file->dirname)
-+ l += strlen(file->dirname);
-+ if (file->basename)
-+ l += strlen(file->basename);
-+ }
-+
-+ if (l >= sizeof(fname)) {
-+ rprintf(FERROR, "Overlong pathname\n");
-+ exit_cleanup(RERR_FILESELECT);
-+ }
-+
- fname2 = f_name(file, fname + offset);
-
- if (verbose > 2)
diff --git a/net/rsync/patches/patch-ab b/net/rsync/patches/patch-ab
index 8e0e57ee392..cd878670926 100644
--- a/net/rsync/patches/patch-ab
+++ b/net/rsync/patches/patch-ab
@@ -1,22 +1,97 @@
-$NetBSD: patch-ab,v 1.10 2004/10/21 19:54:26 tv Exp $
+$NetBSD: patch-ab,v 1.11 2008/03/09 20:56:57 bjs Exp $
---- Makefile.in.orig 2004-08-12 14:59:03.000000000 -0400
+--- Makefile.in.orig 2008-02-12 20:29:09.000000000 -0500
+++ Makefile.in
-@@ -59,12 +59,11 @@ CHECK_OBJS=getgroups.o getfsdev.o t_stub
- all: rsync$(EXEEXT)
+@@ -13,6 +13,7 @@ CFLAGS=@CFLAGS@
+ CPPFLAGS=@CPPFLAGS@
+ EXEEXT=@EXEEXT@
+ LDFLAGS=@LDFLAGS@
++LTCFLAGS?= -prefer-pic
+
+ INSTALLCMD=@INSTALL@
+ INSTALLMAN=@INSTALL@
+@@ -54,26 +55,27 @@ CHECK_SYMLINKS = testsuite/chown-fake.te
+ CHECK_OBJS=tls.o getgroups.o getfsdev.o t_stub.o t_unsafe.o trimslash.o wildtest.o
+
+ # note that the -I. is needed to handle config.h when using VPATH
++LTOBJ_SAVE= $(OBJ_RESTORE:%.o.sav=%.lo.sav)
++LTOBJ_RESTORE= $(OBJ_SAVE:.o=.lo)
+ .c.o:
+ @OBJ_SAVE@
+- $(CC) -I. -I$(srcdir) $(CFLAGS) $(CPPFLAGS) -c $< @CC_SHOBJ_FLAG@
+-@OBJ_RESTORE@
++ $(LIBTOOL) --mode=compile --tag=CC $(CC) -I. -I$(srcdir) $(CFLAGS) $(LTCFLAGS) $(CPPFLAGS) -c $< -o $(@:.o=.lo) $(LTOBJ_RESTORE)
+
+ all: conf_stop make_stop rsync$(EXEEXT) @MAKE_MAN@
install: all
- -mkdir -p ${DESTDIR}${bindir}
- ${INSTALLCMD} ${INSTALL_STRIP} -m 755 rsync$(EXEEXT) ${DESTDIR}${bindir}
- -mkdir -p ${DESTDIR}${mandir}/man1
- -mkdir -p ${DESTDIR}${mandir}/man5
-- ${INSTALLMAN} -m 644 $(srcdir)/rsync.1 ${DESTDIR}${mandir}/man1
-- ${INSTALLMAN} -m 644 $(srcdir)/rsyncd.conf.5 ${DESTDIR}${mandir}/man5
-+ ${BSD_INSTALL_PROGRAM} rsync$(EXEEXT) ${DESTDIR}${bindir}
-+ ${BSD_INSTALL_MAN} $(srcdir)/rsync.1 ${DESTDIR}${mandir}/man1
-+ ${BSD_INSTALL_MAN} $(srcdir)/rsyncd.conf.5 ${DESTDIR}${mandir}/man5
-+ ${BSD_INSTALL_DATA_DIR} ${DESTDIR}${PREFIX}/share/doc/rsync
-+ ${BSD_INSTALL_DATA} README tech_report.tex ${DESTDIR}${PREFIX}/share/doc/rsync
+- if test -f $(srcdir)/rsync.1; then ${INSTALLMAN} -m 644 $(srcdir)/rsync.1 ${DESTDIR}${mandir}/man1; fi
+- if test -f $(srcdir)/rsyncd.conf.5; then ${INSTALLMAN} -m 644 $(srcdir)/rsyncd.conf.5 ${DESTDIR}${mandir}/man5; fi
++ ${BSD_INSTALL_PROGRAM_DIR} ${DESTDIR}${bindir}
++ ${LIBTOOL} --mode=install ${BSD_INSTALL_PROGRAM} ${INSTALL_STRIP} rsync$(EXEEXT) ${DESTDIR}${bindir}
++ ${BSD_INSTALL_MAN_DIR} ${DESTDIR}${mandir}/man1
++ ${BSD_INSTALL_MAN_DIR} ${DESTDIR}${mandir}/man5
++ if test -f $(srcdir)/rsync.1; then ${BSD_INSTALL_MAN} $(srcdir)/rsync.1 ${DESTDIR}${mandir}/man1; fi
++ if test -f $(srcdir)/rsyncd.conf.5; then ${BSD_INSTALL_MAN} $(srcdir)/rsyncd.conf.5 ${DESTDIR}${mandir}/man5; fi
install-strip:
$(MAKE) INSTALL_STRIP='-s' install
+
+ rsync$(EXEEXT): $(OBJS)
+- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(OBJS) $(LIBS)
++ $(LIBTOOL) --mode=link $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(OBJS:.o=.lo) $(LIBS)
+
+ $(OBJS): $(HEADERS)
+ $(CHECK_OBJS): $(HEADERS)
+@@ -82,7 +84,7 @@ flist.o: rounding.h
+
+ rounding.h: rounding.c rsync.h
+ @for r in 0 1 3; do \
+- if $(CC) $(CFLAGS) $(LDFLAGS) -o rounding -DEXTRA_ROUNDING=$$r -I. $(srcdir)/rounding.c >/dev/null 2>&1; then \
++ if $(LIBTOOL) --mode=link $(CC) $(CFLAGS) $(LDFLAGS) -o rounding -DEXTRA_ROUNDING=$$r -I. $(srcdir)/rounding.c >/dev/null 2>&1; then \
+ echo "#define EXTRA_ROUNDING $$r" >rounding.h; \
+ if test -f "$$HOME/build_farm/build_test.fns"; then \
+ echo "EXTRA_ROUNDING is $$r" >&2; \
+@@ -97,21 +99,21 @@ rounding.h: rounding.c rsync.h
+ fi
+
+ tls$(EXEEXT): $(TLS_OBJ)
+- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(TLS_OBJ) $(LIBS)
++ $(LIBTOOL) --mode=link $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(TLS_OBJ:.o=.lo) $(LIBS)
+
+ getgroups$(EXEEXT): getgroups.o
+- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ getgroups.o $(LIBS)
++ $(LIBTOOL) --mode=link $(CC) $(CFLAGS) $(LDFLAGS) -o $@ getgroups.lo $(LIBS)
+
+ getfsdev$(EXEEXT): getfsdev.o
+- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ getfsdev.o $(LIBS)
++ $(LIBTOOL) --mode=link $(CC) $(CFLAGS) $(LDFLAGS) -o $@ getfsdev.lo $(LIBS)
+
+ TRIMSLASH_OBJ = trimslash.o syscall.o lib/compat.o lib/snprintf.o
+ trimslash$(EXEEXT): $(TRIMSLASH_OBJ)
+- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(TRIMSLASH_OBJ) $(LIBS)
++ $(LIBTOOL) --mode=link $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(TRIMSLASH_OBJ:.o=.lo) $(LIBS)
+
+ T_UNSAFE_OBJ = t_unsafe.o syscall.o util.o t_stub.o lib/compat.o lib/snprintf.o
+ t_unsafe$(EXEEXT): $(T_UNSAFE_OBJ)
+- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(T_UNSAFE_OBJ) $(LIBS)
++ $(LIBTOOL) --mode=link $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(T_UNSAFE_OBJ:.o=.lo) $(LIBS)
+
+ gen: conf proto.h man
+
+@@ -209,9 +211,10 @@ check: all $(CHECK_PROGS) $(CHECK_SYMLIN
+ check29: all $(CHECK_PROGS) $(CHECK_SYMLINKS)
+ rsync_bin=`pwd`/rsync$(EXEEXT) $(srcdir)/runtests.sh --protocol=29
+
++LT_BUILD_POPT= $(BUILD_POPT:.o=.lo)
+ wildtest.o: wildtest.c lib/wildmatch.c rsync.h config.h
+ wildtest$(EXEEXT): wildtest.o lib/compat.o lib/snprintf.o @BUILD_POPT@
+- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ wildtest.o lib/compat.o lib/snprintf.o @BUILD_POPT@ $(LIBS)
++ $(LIBTOOL) --mode=link $(CC) $(CFLAGS) $(LDFLAGS) -o $@ wildtest.lo lib/compat.lo lib/snprintf.lo $(LT_BUILD_POPT) $(LIBS)
+
+ testsuite/chown-fake.test:
+ ln -s chown.test $(srcdir)/testsuite/chown-fake.test