svn commit: r271365 - head/share/mk

Garrett Cooper ngie at FreeBSD.org
Wed Sep 10 07:55:52 UTC 2014


Author: ngie
Date: Wed Sep 10 07:55:51 2014
New Revision: 271365
URL: http://svnweb.freebsd.org/changeset/base/271365

Log:
  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
  MFC after: 2 weeks

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

Modified: head/share/mk/bsd.dep.mk
==============================================================================
--- head/share/mk/bsd.dep.mk	Wed Sep 10 07:20:29 2014	(r271364)
+++ head/share/mk/bsd.dep.mk	Wed Sep 10 07:55:51 2014	(r271365)
@@ -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}


More information about the svn-src-head mailing list