ports/148475: [patch] Mk/bsd.gecko.mk: use tar(1) for copying trees

Anonymous swell.k at gmail.com
Fri Jul 9 17:10:05 UTC 2010


>Number:         148475
>Category:       ports
>Synopsis:       [patch] Mk/bsd.gecko.mk: use tar(1) for copying trees
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Fri Jul 09 17:10:04 UTC 2010
>Closed-Date:
>Last-Modified:
>Originator:     Anonymous
>Release:        FreeBSD 9.0-CURRENT amd64
>Organization:
>Environment:
>Description:
- use tar(1), it's more tested; instead of following links use relative
  path in them using `-s' option[1]; rather than relying on LIB{OWN,GRP}
  inherit owner from do-install target, it's more correct in
  INSTALL_AS_USER case

- don't try to outsmart user with chmod(1), rely on check-umask target

[1] I'm referring to links created with below commands in packager.mk

  ln -s $(sdkdir)/sdk/lib $(DESTDIR)$(sdkdir)/lib
  ln -s $(installdir) $(DESTDIR)$(sdkdir)/bin
  ln -s $(includedir) $(DESTDIR)$(sdkdir)/include
  ln -s $(idldir) $(DESTDIR)$(sdkdir)/idl

>How-To-Repeat:
>Fix:
--- a.diff begins here ---
Index: Mk/bsd.gecko.mk
===================================================================
RCS file: /a/.cvsup/ports/Mk/bsd.gecko.mk,v
retrieving revision 1.20
diff -u -p -r1.20 bsd.gecko.mk
--- Mk/bsd.gecko.mk	28 Mar 2010 06:30:26 -0000	1.20
+++ Mk/bsd.gecko.mk	9 Jul 2010 11:43:33 -0000
@@ -619,10 +640,9 @@ gecko-do-install:
 .for dir in ${MOZILLA_PLIST_DIRS}
 .if !exists(${PREFIX}/${dir})
 	${MKDIR} ${PREFIX}/${dir}
-	${CHMOD} 755 ${PREFIX}/${dir}
 .endif
-	cd ${FAKEDIR}/${dir} && ${FIND} . | \
-		${CPIO} -pdm -L -R ${LIBOWN}:${LIBGRP} ${PREFIX}/${dir}
+	${TAR} cf - -C${FAKEDIR}/${dir} -s'|${FAKEDIR}/|../../|s' . | \
+		${TAR} xof - -C${PREFIX}/${dir}
 .endfor
 .for pcfile in ${MOZ_PKGCONFIG_FILES}
 	${INSTALL_DATA} ${FAKEDIR}/libdata/pkgconfig/${pcfile}.pc \
--- a.diff ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list