Date: Sun, 16 Sep 2012 10:25:33 GMT From: CyberLeo <cyberleo@cyberleo.net> To: freebsd-gnats-submit@FreeBSD.org Subject: ports/171681: Patch ports Makefile to support rsync update Message-ID: <201209161025.q8GAPX3v068390@red.freebsd.org> Resent-Message-ID: <201209161030.q8GAUBnj053028@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 171681 >Category: ports >Synopsis: Patch ports Makefile to support rsync update >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: update >Submitter-Id: current-users >Arrival-Date: Sun Sep 16 10:30:10 UTC 2012 >Closed-Date: >Last-Modified: >Originator: CyberLeo >Release: 9.1-RC1 >Organization: CyberLeo.Net >Environment: FreeBSD mtumishi.cyberleo.net 9.1-RC1 FreeBSD 9.1-RC1 #0 r239653+91c9b44: Sat Aug 25 22:14:59 EDT 2012 cyberleo@mtumishi.cyberleo.net:/usr/obj/usr/src/sys/MTUMISHI amd64 >Description: Since I maintain a ports tree overlay, I find it easier to update ports from a centralized patched copy instead of worrying about patching separately on each machine. None of the available ports tree update methods are useful for this. The attached patch adds an rsync update mechanism, requiring only RSYNC_UPDATE and PORTS_RSYNC_SOURCE defined in /etc/make.conf. Tested on 9.1-RC1 and 8.2-RELEASE. >How-To-Repeat: >Fix: Included patch. Patch attached with submission follows: --- Makefile.orig 2012-08-05 13:06:49.000000000 -0400 +++ Makefile 2012-09-16 05:56:08.885054241 -0400 @@ -155,6 +155,8 @@ GIT?= git SVN?= svn SUP?= csup +RSYNC?= rsync +RSYNC_FLAGS?= --recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --verbose PORTSNAP?= portsnap PORTSNAP_FLAGS?= -p ${.CURDIR} .if defined(SUPHOST) @@ -172,6 +174,11 @@ @echo ">>> Updating ${.CURDIR} from CVS repository" ${CVSROOT} @echo "--------------------------------------------------------------" cd ${.CURDIR}; ${CVS} -R -q update -A -P -d -I! +.elif defined(RSYNC_UPDATE) && defined(PORTS_RSYNC_SOURCE) + @echo "--------------------------------------------------------------" + @echo ">>> Updating with ${RSYNC} from ${PORTS_RSYNC_SOURCE}" + @echo "--------------------------------------------------------------" + @${RSYNC} ${RSYNC_FLAGS} ${PORTS_RSYNC_SOURCE}/ ${.CURDIR}/ .elif exists(${.CURDIR}/.svn) @echo "--------------------------------------------------------------" @echo ">>> Updating ${.CURDIR} using Subversion" >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201209161025.q8GAPX3v068390>