aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon J. Gerraty <sjg@FreeBSD.org>2014-07-22 00:42:55 +0000
committerSimon J. Gerraty <sjg@FreeBSD.org>2014-07-22 00:42:55 +0000
commit49217bc51e5181279ed376e61b0694e836b6bdc4 (patch)
tree9c11c48bb42e575da65ef31de9a7381f7c272c30
parentb177c333d48cfdfabfb02333281c3e3d6c976a4b (diff)
downloadsrc-49217bc51e5181279ed376e61b0694e836b6bdc4.tar.gz
src-49217bc51e5181279ed376e61b0694e836b6bdc4.zip
bsd.lib.mk does not add OBJS etc to CLEANFILES so does not automatically
get them flagged as .NOPATH. This hurts people who don't use obj dirs. Since its clean target seprate rm's for things, use NOPATH_FILES as list to collect things that need .NOPATH. bsd.obj.mk will add CLEANFILES to NOPATH_FILES and do the deed if needed. Reviewed by: sbruno
Notes
Notes: svn path=/head/; revision=268970
-rw-r--r--share/mk/bsd.lib.mk8
-rw-r--r--share/mk/bsd.obj.mk5
2 files changed, 11 insertions, 2 deletions
diff --git a/share/mk/bsd.lib.mk b/share/mk/bsd.lib.mk
index 25cf2fecb61e..84f4ca783d75 100644
--- a/share/mk/bsd.lib.mk
+++ b/share/mk/bsd.lib.mk
@@ -160,6 +160,7 @@ LDFLAGS+= -L${_SHLIBDIRPREFIX}${LIBPRIVATEDIR} -rpath ${LIBPRIVATEDIR}
.if defined(LIB) && !empty(LIB) || defined(SHLIB_NAME)
OBJS+= ${SRCS:N*.h:R:S/$/.o/}
+NOPATH_FILES+= ${OBJS}
.endif
.if defined(LIB) && !empty(LIB)
@@ -181,6 +182,7 @@ lib${LIB}.a: ${OBJS} ${STATICOBJS}
.if ${MK_PROFILE} != "no" && defined(LIB) && !empty(LIB)
_LIBS+= lib${LIB}_p.a
POBJS+= ${OBJS:.o=.po} ${STATICOBJS:.o=.po}
+NOPATH_FILES+= ${POBJS}
lib${LIB}_p.a: ${POBJS}
@${ECHO} building profiled ${LIB} library
@@ -196,6 +198,7 @@ lib${LIB}_p.a: ${POBJS}
.if defined(SHLIB_NAME) || \
defined(INSTALL_PIC_ARCHIVE) && defined(LIB) && !empty(LIB)
SOBJS+= ${OBJS:.o=.So}
+NOPATH_FILES+= ${SOBJS}
.endif
.if defined(SHLIB_NAME)
@@ -254,6 +257,7 @@ lib${LIB}_pic.a: ${SOBJS}
LINTLIB= llib-l${LIB}.ln
_LIBS+= ${LINTLIB}
LINTOBJS+= ${SRCS:M*.c:.c=.ln}
+NOPATH_FILES+= ${LINTOBJS}
${LINTLIB}: ${LINTOBJS}
@${ECHO} building lint library ${.TARGET}
@@ -454,6 +458,10 @@ clean:
.endif
.endif
+.if !empty(_LIBS)
+NOPATH_FILES+= ${_LIBS}
+.endif
+
.include <bsd.obj.mk>
.include <bsd.sys.mk>
diff --git a/share/mk/bsd.obj.mk b/share/mk/bsd.obj.mk
index 634261eba594..95122e8ea01b 100644
--- a/share/mk/bsd.obj.mk
+++ b/share/mk/bsd.obj.mk
@@ -119,8 +119,9 @@ cleanobj: clean cleandepend
@if [ -L ${.CURDIR}/obj ]; then rm -f ${.CURDIR}/obj; fi
# Tell bmake not to look for generated files via .PATH
-.if !empty(CLEANFILES)
-.NOPATH: ${CLEANFILES}
+NOPATH_FILES+= ${CLEANFILES}
+.if !empty(NOPATH_FILES)
+.NOPATH: ${NOPATH_FILES}
.endif
.if !target(clean)