Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 11 Feb 2014 18:37:07 +0000 (UTC)
From:      Marcus von Appen <mva@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r343796 - head/Mk/Uses
Message-ID:  <201402111837.s1BIb7If026359@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: mva
Date: Tue Feb 11 18:37:07 2014
New Revision: 343796
URL: http://svnweb.freebsd.org/changeset/ports/343796
QAT: https://qat.redports.org/buildarchive/r343796/

Log:
  - Properly prefix or suffix symlinks, which do not point to a file within the
    stagedir environment, but to some file using a ${PREFIX}-based path
  
  PR:		ports/186619
  Submitted by:	mva@ (myself)
  Approved by:	portmgr@ (bapt)

Modified:
  head/Mk/Uses/uniquefiles.mk

Modified: head/Mk/Uses/uniquefiles.mk
==============================================================================
--- head/Mk/Uses/uniquefiles.mk	Tue Feb 11 18:33:49 2014	(r343795)
+++ head/Mk/Uses/uniquefiles.mk	Tue Feb 11 18:37:07 2014	(r343796)
@@ -100,7 +100,7 @@ _UNIQUEPKGLIST=		${WRKDIR}/.PLIST.unique
 
 .if ${UNIQUE_DEFAULT_LINKS} == yes
 _DO_CONDITIONAL_SYMLINK=	\
-	if [ ! -e ${STAGEDIR}${PREFIX}/$${fname} ]; then \
+	if [ ! -e ${STAGEDIR}${PREFIX}/$${fname} -a ! -L ${STAGEDIR}${PREFIX}/$${fname} ]; then \
 		${ECHO_MSG} "  $${newf} --> @$${fname}"; \
 		${LN} -s ${PREFIX}/$${newf} ${STAGEDIR}${PREFIX}/$${fname}; \
 		${ECHO_CMD} LINKED:$${newf}:$${fname} >> ${_UNIQUEPKGLIST}; \
@@ -116,7 +116,7 @@ move-uniquefiles:
 .endif
 .for entry in ${UNIQUE_PREFIX_FILES}
 	@fname=${entry}; \
-	if [ -e ${STAGEDIR}${PREFIX}/$${fname} ]; then \
+	if [ -e ${STAGEDIR}${PREFIX}/$${fname} -o -L ${STAGEDIR}${PREFIX}/$${fname} ]; then \
 		newf=$${fname%/*}/${UNIQUE_PREFIX}$${fname##*/} ; \
 		${ECHO_MSG} "  $${fname} --> $${newf}" ; \
 		${MV} ${STAGEDIR}${PREFIX}/$${fname} ${STAGEDIR}${PREFIX}/$${newf}; \
@@ -129,7 +129,7 @@ move-uniquefiles:
 .endfor
 .if ${UNIQUE_FIND_PREFIX_FILES}
 	@for fname in `${UNIQUE_FIND_PREFIX_FILES}`; do \
-		if [ -e ${STAGEDIR}${PREFIX}/$${fname} ]; then \
+		if [ -e ${STAGEDIR}${PREFIX}/$${fname} -o -L ${STAGEDIR}${PREFIX}/$${fname} ]; then \
 			newf=$${fname%/*}/${UNIQUE_PREFIX}$${fname##*/} ; \
 			${ECHO_MSG} "  $${fname} --> $${newf}" ; \
 			${MV} ${STAGEDIR}${PREFIX}/$${fname} ${STAGEDIR}${PREFIX}/$${newf}; \
@@ -147,7 +147,7 @@ move-uniquefiles:
 .endif
 .for entry in ${UNIQUE_SUFFIX_FILES}
 	@fname=${entry}; \
-	if [ -e ${STAGEDIR}${PREFIX}/$${fname} ]; then \
+	if [ -e ${STAGEDIR}${PREFIX}/$${fname} -o -L ${STAGEDIR}${PREFIX}/$${fname} ]; then \
 		newf=$${fname%/*}/$${fname##*/}${UNIQUE_SUFFIX}; \
 		${ECHO_MSG} "  $${fname} --> $${newf}"; \
 		${MV} ${STAGEDIR}${PREFIX}/$${fname} ${STAGEDIR}${PREFIX}/$${newf}; \
@@ -160,7 +160,7 @@ move-uniquefiles:
 .endfor
 .if ${UNIQUE_FIND_SUFFIX_FILES}
 	@for fname in `${UNIQUE_FIND_SUFFIX_FILES}`; do \
-		if [ -e ${STAGEDIR}${PREFIX}/$${fname} ]; then \
+		if [ -e ${STAGEDIR}${PREFIX}/$${fname} -o -L ${STAGEDIR}${PREFIX}/$${fname} ]; then \
 			newf=$${fname%/*}/$${fname##*/}${UNIQUE_SUFFIX}; \
 			${ECHO_MSG} "  $${fname} --> $${newf}"; \
 			${MV} ${STAGEDIR}${PREFIX}/$${fname} ${STAGEDIR}${PREFIX}/$${newf}; \



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