diff options
author | bdrewery <bdrewery@FreeBSD.org> | 2015-11-13 01:47:56 +0000 |
---|---|---|
committer | bdrewery <bdrewery@FreeBSD.org> | 2015-11-13 01:47:56 +0000 |
commit | 33468f235abe8c6601085122e21b61a524d4c8dc (patch) | |
tree | 6ce5eedb7f0799bdac6ae86d20b4d852b8158e6e /share/mk | |
parent | d484c089b5df6284949d1415484a475b33aadefa (diff) | |
download | FreeBSD-src-33468f235abe8c6601085122e21b61a524d4c8dc.zip FreeBSD-src-33468f235abe8c6601085122e21b61a524d4c8dc.tar.gz |
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
Diffstat (limited to 'share/mk')
-rw-r--r-- | share/mk/bsd.sys.mk | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/share/mk/bsd.sys.mk b/share/mk/bsd.sys.mk index cad2b2f..4a4e080 100644 --- a/share/mk/bsd.sys.mk +++ b/share/mk/bsd.sys.mk @@ -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} |