diff options
author | ngie <ngie@FreeBSD.org> | 2014-10-23 00:51:52 +0000 |
---|---|---|
committer | ngie <ngie@FreeBSD.org> | 2014-10-23 00:51:52 +0000 |
commit | 2b8c74e1741f7f2f394850d6ef56dfb989c79bb2 (patch) | |
tree | 1dcbf6df309ff1ea31e26348aa2b2faef4daf732 /share/mk | |
parent | 9a57ba8bbcc06dd108d277a22c0dcf54515d67cf (diff) | |
download | FreeBSD-src-2b8c74e1741f7f2f394850d6ef56dfb989c79bb2.zip FreeBSD-src-2b8c74e1741f7f2f394850d6ef56dfb989c79bb2.tar.gz |
MFC r271365:
Remove many false positives with make checkdpadd
- Reduce DPADD and LDADD in checkdpadd to -l<foo>
- Skip over -Wl,[es]*-group because -Wl,--end-group and
-Wl,--start-group might be required to properly link objects (see
usr.bin/clang/lldb as an example)
This caveat has been present for a while with some components of
the build. However, these false positives were made more more apparent
after r269648.
Phabric: D635
Reviewed by: jmmv (an earlier version)
PR: 192730
Diffstat (limited to 'share/mk')
-rw-r--r-- | share/mk/bsd.dep.mk | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/share/mk/bsd.dep.mk b/share/mk/bsd.dep.mk index 14619eb..d59ed28 100644 --- a/share/mk/bsd.dep.mk +++ b/share/mk/bsd.dep.mk @@ -215,8 +215,10 @@ cleandepend: .endif .if !target(checkdpadd) && (defined(DPADD) || defined(LDADD)) -_LDADD_FROM_DPADD= ${DPADD:C;^/usr/lib/lib(.*)\.a$;-l\1;} -_LDADD_CANONICALIZED= ${LDADD:S/$//} +_LDADD_FROM_DPADD= ${DPADD:R:T:C;^lib(.*)$;-l\1;g} +# Ignore -Wl,--start-group/-Wl,--end-group as it might be required in the +# LDADD list due to unresolved symbols +_LDADD_CANONICALIZED= ${LDADD:N:R:T:C;^lib(.*)$;-l\1;g:N-Wl,--[es]*-group} checkdpadd: .if ${_LDADD_FROM_DPADD} != ${_LDADD_CANONICALIZED} @echo ${.CURDIR} |