Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 3 Sep 2008 01:21:41 -0800
From:      Beech Rintoul <beech@freebsd.org>
To:        freebsd-ports@freebsd.org
Cc:        Akinori MUSHA <knu@idaemons.org>
Subject:   Re: COPYTREE_AUTO
Message-ID:  <200809030121.46325.beech@freebsd.org>
In-Reply-To: <864p4xy5kh.knu@iDaemons.org>
References:  <864p4xy5kh.knu@iDaemons.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wednesday 03 September 2008, Akinori MUSHA said:
> Hi,
>
> What about adding COPYTREE_AUTO defined as below?
>
> You often need some scripts in an example directory to have
> executable bits so that the examples actually work, and it is waste
> of time to sort files out into COPYTREE_BIN and COPYTREE_SHARE when
> they already have proper bits out of the tarball.
>
> Index: Mk/bsd.port.mk
> ===================================================================
> RCS file: /home/pcvs/ports/Mk/bsd.port.mk,v
> retrieving revision 1.603
> diff -u -r1.603 bsd.port.mk
> --- Mk/bsd.port.mk	25 Aug 2008 01:29:01 -0000	1.603
> +++ Mk/bsd.port.mk	3 Sep 2008 08:42:37 -0000
> @@ -2262,6 +2262,13 @@
>  					${CHOWN} -R ${SHAREOWN}:${SHAREGRP} $$1 && \
>  					${FIND} $$1/ -type d -exec chmod 755 {} \; && \
>  					${FIND} $$1/ -type f -exec chmod ${SHAREMODE} {} \;' --
> +COPYTREE_AUTO=	${SH} -c '(${FIND} -d $$0 $$2 | ${CPIO} -dumpl $$1
> >/dev/null \ +					2>&1) && \
> +					${CHOWN} -R ${SHAREOWN}:${SHAREGRP} $$1 && \
> +					${FIND} $$1 -type d -exec chmod 755 {} \; && \
> +					${FIND} $$1 -type f \! -perm +100 -exec chmod ${SHAREMODE} {}
> \; && \ +					${FIND} $$1 -type f -perm +100 -exec ${CHOWN}
> ${BINOWN}:${BINGRP} {} \; && \ +					${FIND} $$1 -type f -perm +100
> -exec chmod ${BINMODE} {} \;' -- .else
>  COPYTREE_BIN=	${SH} -c '(${FIND} -d $$0 $$2 | ${CPIO} -dumpl $$1
> >/dev/null \ 2>&1) && \
> @@ -2271,6 +2278,11 @@
>  					2>&1) && \
>  					${FIND} $$1/ -type d -exec chmod 755 {} \; && \
>  					${FIND} $$1/ -type f -exec chmod ${SHAREMODE} {} \;' --
> +COPYTREE_AUTO=	${SH} -c '(${FIND} -d $$0 $$2 | ${CPIO} -dumpl $$1
> >/dev/null \ +					2>&1) && \
> +					${FIND} $$1 -type d -exec chmod 755 {} \; && \
> +					${FIND} $$1 -type f \! -perm +100 -exec chmod ${SHAREMODE} {}
> \; && \ +					${FIND} $$1 -type f -perm +100 -exec chmod ${BINMODE}
> {} \;' -- .endif
>
>  # The user can override the NO_PACKAGE by specifying this from
>
>
> Regards,
>
> --
> Akinori MUSHA / http://akinori.org/

I'm working on this with portmgr. The first step is to fix copytree. 
If you try and use copytree_bin you will end up hosing 
your /usr/local/bin dir. I have already submitted some fixed code and 
was planning on adding copytree_www, so adding copytree_auto won't be 
a big problem. This is all strictly portmgr territory, so it's up to 
whatever they decide.

Beech

-- 
---------------------------------------------------------------------------------------
Beech Rintoul - FreeBSD Developer - beech@FreeBSD.org
/"\   ASCII Ribbon Campaign  | FreeBSD Since 4.x
\ / - NO HTML/RTF in e-mail   | http://people.freebsd.org/~beech
 X  - NO Word docs in e-mail | Skype: akbeech
/ \  - http://www.FreeBSD.org/releases/7.0R/announce.html
---------------------------------------------------------------------------------------






Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200809030121.46325.beech>