Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 13 Nov 2015 01:47:56 +0000 (UTC)
From:      Bryan Drewery <bdrewery@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r290740 - head/share/mk
Message-ID:  <201511130147.tAD1luMo076013@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: bdrewery
Date: Fri Nov 13 01:47:56 2015
New Revision: 290740
URL: https://svnweb.freebsd.org/changeset/base/290740

Log:
  META MODE: Don't double stage SYMLINKS for libraries.
  
  meta.stage.mk is handling ${SYMLINKS:T} for stage_libs already.  The logic in
  bsd.sys.mk to handle ${SYMLINKS} was brought in r247817 when it was moved out
  of bsd.prog.mk and bsd.lib.mk into bsd.sys.mk.  The logic previously was
  limited to bsd.prog.mk.
  
  This fixes a race, seen easily in lib/libthr, where libpthread_p.a is created
  by both stage_libs and stage_symlinks resulting in 'ln: File exists'.
  
  Sponsored by:	EMC / Isilon Storage Division

Modified:
  head/share/mk/bsd.sys.mk

Modified: head/share/mk/bsd.sys.mk
==============================================================================
--- head/share/mk/bsd.sys.mk	Fri Nov 13 01:37:08 2015	(r290739)
+++ head/share/mk/bsd.sys.mk	Fri Nov 13 01:47:56 2015	(r290740)
@@ -276,7 +276,8 @@ STAGE_SETS+= links
 STAGE_LINKS.links= ${LINKS}
 .endif
 
-.if !empty(SYMLINKS)
+# Don't handle SYMLINKS for libraries since stage_libs is already doing so.
+.if !empty(SYMLINKS) && empty(_LIBS)
 STAGE_TARGETS+= stage_symlinks
 STAGE_SETS+= links
 STAGE_SYMLINKS.links= ${SYMLINKS}



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