aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ftp/mirror/Makefile21
-rw-r--r--ftp/mirror/distinfo1
-rw-r--r--ftp/mirror/files/patch-aa37
-rw-r--r--ftp/mirror/files/patch-ab87
-rw-r--r--ftp/mirror/files/patch-ac61
-rw-r--r--ftp/mirror/pkg-comment1
-rw-r--r--ftp/mirror/pkg-descr5
-rw-r--r--ftp/mirror/pkg-plist9
-rw-r--r--ftp/mirror/scripts/configure7
9 files changed, 229 insertions, 0 deletions
diff --git a/ftp/mirror/Makefile b/ftp/mirror/Makefile
new file mode 100644
index 000000000000..a560f6bbe220
--- /dev/null
+++ b/ftp/mirror/Makefile
@@ -0,0 +1,21 @@
+# New ports collection makefile for: mirror
+# Version required: 2.3
+# Date created: 15 May 1995
+# Whom: torstenb
+#
+# $Id:$
+#
+
+DISTNAME= mirror-2.3
+CATEGORIES+= networking
+MASTER_SITES= ftp://src.doc.ic.ac.uk/computing/archiving/mirror/
+
+MAINTAINER= torstenb@FreeBSD.ORG
+
+NO_WRKSUBDIR= yes
+MAKEFILE= makefile
+
+pre-install:
+ mkdir -p ${PREFIX}/lib/mirror
+
+.include <bsd.port.mk>
diff --git a/ftp/mirror/distinfo b/ftp/mirror/distinfo
new file mode 100644
index 000000000000..c80011d8c1c8
--- /dev/null
+++ b/ftp/mirror/distinfo
@@ -0,0 +1 @@
+MD5 (mirror-2.3.tar.gz) = d90c5d40bab60ce96459daed1785189c
diff --git a/ftp/mirror/files/patch-aa b/ftp/mirror/files/patch-aa
new file mode 100644
index 000000000000..a897a53e9b05
--- /dev/null
+++ b/ftp/mirror/files/patch-aa
@@ -0,0 +1,37 @@
+*** makefile.orig Tue Jan 18 22:58:21 1994
+--- makefile Mon May 15 17:50:25 1995
+***************
+*** 6,12 ****
+ support/cyber-patches support/lstest.pl new-patches-by
+
+ all:
+! echo try make mirror.tar
+
+ mirror.tar: $(FILES)
+ rev=`./mirror -v | perl -ane 'print "$$F[2]\n";'`; echo $rev; \
+--- 6,12 ----
+ support/cyber-patches support/lstest.pl new-patches-by
+
+ all:
+! # echo try make mirror.tar
+
+ mirror.tar: $(FILES)
+ rev=`./mirror -v | perl -ane 'print "$$F[2]\n";'`; echo $rev; \
+***************
+*** 20,22 ****
+--- 20,34 ----
+ checkin $(FILES)
+
+ # install, clean ...
++ install:
++ install -c ftp.pl ${PREFIX}/lib/mirror/
++ install -c lsparse.pl ${PREFIX}/lib/mirror/
++ install -c dateconv.pl ${PREFIX}/lib/mirror/
++ install -c mirror.defaults ${PREFIX}/lib/mirror/mirror.defaults.sample
++ install -c mirror.pl ${PREFIX}/bin/mirror
++ install -c mirror.man ${PREFIX}/man/man1/mirror.1
++ gzip -9nf ${PREFIX}/man/man1/mirror.1
++ install -c mm ${PREFIX}/bin/mirrormaster
++ install -c mm.man ${PREFIX}/man/man1/mirrormaster.1
++ gzip -9nf ${PREFIX}/man/man1/mirrormaster.1
++ install -c do_unlinks ${PREFIX}/lib/mirror/do_unlinks
diff --git a/ftp/mirror/files/patch-ab b/ftp/mirror/files/patch-ab
new file mode 100644
index 000000000000..a2fe764c1e43
--- /dev/null
+++ b/ftp/mirror/files/patch-ab
@@ -0,0 +1,87 @@
+*** mirror.defaults.orig Mon May 15 17:15:11 1995
+--- mirror.defaults Mon May 15 17:25:11 1995
+***************
+*** 11,30 ****
+ # The LOCAL hostname - if not the same as `hostname`
+ # (I advertise the name src.doc.ic.ac.uk but the machine is
+ # really puffin.doc.ic.ac.uk.)
+! hostname=src.doc.ic.ac.uk
+ # Keep all local_dirs relative to here
+! local_dir=/public/
+! remote_password=ukuug-soft@doc.ic.ac.uk
+ mail_to=
+ # Don't mirror file modes. Set all dirs/files to these
+ dir_mode=0755
+ file_mode=0444
+! # By defaults files are owned by root.zero
+! user=0
+! group=0
+! # # Keep a log file in each updated directory
+! # update_log=.mirror
+! update_log=
+ # Don't overwrite my mirror log with the remote one.
+ # Don't pull back any of their mirror temporary files.
+ # Don't touch anything whose name begins with a space!
+--- 11,30 ----
+ # The LOCAL hostname - if not the same as `hostname`
+ # (I advertise the name src.doc.ic.ac.uk but the machine is
+ # really puffin.doc.ic.ac.uk.)
+! # hostname=src.doc.ic.ac.uk
+ # Keep all local_dirs relative to here
+! local_dir=/home/ftp/pub
+! # remote_password=mirror@$hostname
+ mail_to=
+ # Don't mirror file modes. Set all dirs/files to these
+ dir_mode=0755
+ file_mode=0444
+! # By defaults files are owned by root.wheel
+! # user=0
+! # group=0
+! # Keep a log file in each updated directory
+! update_log=.mirror
+! # update_log=
+ # Don't overwrite my mirror log with the remote one.
+ # Don't pull back any of their mirror temporary files.
+ # Don't touch anything whose name begins with a space!
+***************
+*** 32,38 ****
+ exclude_patt=(^|/)(\.mirror$|core$|\.cap|\.in\..*\.$|MIRROR.LOG|#.*#|\.FSP|\.cache|\.zipped|\.notar|\.message|lost+found/|\ )
+ # Try to compress everything
+ compress_patt=.
+! compress_prog=compress
+ # Don't compress information files, files that don't benifit from
+ # being compressed, files that tell ftpd, gopher, wais... to do things,
+ # the sources for compression programs...
+--- 32,38 ----
+ exclude_patt=(^|/)(\.mirror$|core$|\.cap|\.in\..*\.$|MIRROR.LOG|#.*#|\.FSP|\.cache|\.zipped|\.notar|\.message|lost+found/|\ )
+ # Try to compress everything
+ compress_patt=.
+! compress_prog=gzip
+ # Don't compress information files, files that don't benifit from
+ # being compressed, files that tell ftpd, gopher, wais... to do things,
+ # the sources for compression programs...
+***************
+*** 45,55 ****
+ # shk is multimedia? used on apple2s.
+ compress_excl+|-z(\d+)?$|\.tgz|_tgz|\.tar\.Z|\.tar\.gz|\.taz$|\.arc$|\.zip$|\.lzh$|\.zoo$|\.exe$|\.lha$|\.zom$|\.gif$|\.jpeg$|\.jpg$|\.mpeg$|\.au$|\.shk$|read.*me|index|info|faq|gzip|compress|(^|/)\.\.?$
+ # Don't delete own mirror log, .notar or .cache files (incl in subdirs)
+! # delete_excl=(^|/)\.(mirror|notar|cache)$
+ # Ignore any local readme and .mirror files
+! local_ignore=README.doc.ic|(^|/)\.(mirror|notar)$
+ # Automatically delete local copies of files that the
+ # remote site has zapped
+ do_deletes=true
+! max_delete_files=50%
+! max_delete_dirs=50%
+--- 45,55 ----
+ # shk is multimedia? used on apple2s.
+ compress_excl+|-z(\d+)?$|\.tgz|_tgz|\.tar\.Z|\.tar\.gz|\.taz$|\.arc$|\.zip$|\.lzh$|\.zoo$|\.exe$|\.lha$|\.zom$|\.gif$|\.jpeg$|\.jpg$|\.mpeg$|\.au$|\.shk$|read.*me|index|info|faq|gzip|compress|(^|/)\.\.?$
+ # Don't delete own mirror log, .notar or .cache files (incl in subdirs)
+! delete_excl=(^|/)\.(mirror|notar|cache)$
+ # Ignore any local readme and .mirror files
+! local_ignore=README.local|(^|/)\.(mirror|notar)$
+ # Automatically delete local copies of files that the
+ # remote site has zapped
+ do_deletes=true
+! max_delete_files=10%
+! max_delete_dirs=10%
diff --git a/ftp/mirror/files/patch-ac b/ftp/mirror/files/patch-ac
new file mode 100644
index 000000000000..e971a11c0c72
--- /dev/null
+++ b/ftp/mirror/files/patch-ac
@@ -0,0 +1,61 @@
+*** mirror.pl.orig Mon May 15 16:50:06 1995
+--- mirror.pl Mon May 15 17:43:06 1995
+***************
+*** 42,48 ****
+
+ # Try to find the default localation of various programs via
+ # the users PATH then using $extra_path
+! $extra_path = '/usr/local/bin:/usr/new/bin:/usr/public/bin:/usr/ucb:/usr/bin:/bin:/etc:/usr/etc:/usr/local/etc:';
+ $ENV{ 'PATH' } .= ':' . $extra_path;
+
+ # If compressing a local file to send need somewhere to store the temp
+--- 42,48 ----
+
+ # Try to find the default localation of various programs via
+ # the users PATH then using $extra_path
+! $extra_path = '/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:';
+ $ENV{ 'PATH' } .= ':' . $extra_path;
+
+ # If compressing a local file to send need somewhere to store the temp
+***************
+*** 90,108 ****
+ $rm_prog = &find_prog( 'rm' );
+
+ # Generate checksums
+! $sum_prog = &find_prog( 'sum' );
+
+ # SPECIAL NOTE: This is eval'd, so DONT put double-quotes (") in it.
+ # You can get local variables to appear as in the second example:
+! $mail_subject = '-s \'mirror update\'';
+! # $mail_subject = ' -s \'mirror update of $package\'';
+
+ # When scanning the local directory, how often to prod the remote
+ # system to keep the connection alive
+ $prod_interval = 60;
+
+ # Put the directory that mirror is actually in at the start of PERLLIB.
+! $dir = &real_dir_from_path( $0 );
+ unshift( @INC, $dir );
+
+ # Make sure that your PERLLIB environment variable can get you
+--- 90,109 ----
+ $rm_prog = &find_prog( 'rm' );
+
+ # Generate checksums
+! $sum_prog = &find_prog( 'md5' );
+
+ # SPECIAL NOTE: This is eval'd, so DONT put double-quotes (") in it.
+ # You can get local variables to appear as in the second example:
+! # $mail_subject = '-s \'mirror update\'';
+! $mail_subject = ' -s \'mirror update of $package\'';
+
+ # When scanning the local directory, how often to prod the remote
+ # system to keep the connection alive
+ $prod_interval = 60;
+
+ # Put the directory that mirror is actually in at the start of PERLLIB.
+! #$dir = &real_dir_from_path( $0 );
+! $dir = "!!PREFIX!!/lib/mirror";
+ unshift( @INC, $dir );
+
+ # Make sure that your PERLLIB environment variable can get you
diff --git a/ftp/mirror/pkg-comment b/ftp/mirror/pkg-comment
new file mode 100644
index 000000000000..ccf1eee9b787
--- /dev/null
+++ b/ftp/mirror/pkg-comment
@@ -0,0 +1 @@
+mirror - mirror packages on remote sites
diff --git a/ftp/mirror/pkg-descr b/ftp/mirror/pkg-descr
new file mode 100644
index 000000000000..7392d28afd7a
--- /dev/null
+++ b/ftp/mirror/pkg-descr
@@ -0,0 +1,5 @@
+Mirror is a package written in Perl that uses the ftp protocol to
+duplicate a directory hierarchy between the machine it is run on and a
+remote host. It avoids copying files unnecessarily by comparing the
+file timestamps and sizes before transfering. Amongst other things
+can optionally compress, gzip, and split files.
diff --git a/ftp/mirror/pkg-plist b/ftp/mirror/pkg-plist
new file mode 100644
index 000000000000..755b0a76ddfe
--- /dev/null
+++ b/ftp/mirror/pkg-plist
@@ -0,0 +1,9 @@
+bin/mirror
+bin/mirrormaster
+lib/mirror/ftp.pl
+lib/mirror/lsparse.pl
+lib/mirror/dateconv.pl
+lib/mirror/mirror.defaults.sample
+lib/mirror/do_unlinks
+man/man1/mirror.1.gz
+man/man1/mirrormaster.1.gz
diff --git a/ftp/mirror/scripts/configure b/ftp/mirror/scripts/configure
new file mode 100644
index 000000000000..9beba113bce0
--- /dev/null
+++ b/ftp/mirror/scripts/configure
@@ -0,0 +1,7 @@
+#!/bin/sh
+#
+# $Id:$
+#
+
+mv ${WRKSRC}/mirror.pl ${WRKSRC}/mirror.pl.bak
+sed <${WRKSRC}/mirror.pl.bak >${WRKSRC}/mirror.pl s+!!PREFIX!!+$PREFIX+g