summaryrefslogtreecommitdiffstats
path: root/share/mk/bsd.sys.mk
diff options
context:
space:
mode:
authormarcel <marcel@FreeBSD.org>2012-10-06 20:01:05 +0000
committermarcel <marcel@FreeBSD.org>2012-10-06 20:01:05 +0000
commit52e7fd7c5436658853af57ebcba4109961c9126c (patch)
tree70de730ba0fbf9e81dd585c1575a057d03a31be8 /share/mk/bsd.sys.mk
parentb84b597f7acedbe94a9dac4963137a33677e7e19 (diff)
downloadFreeBSD-src-52e7fd7c5436658853af57ebcba4109961c9126c.zip
FreeBSD-src-52e7fd7c5436658853af57ebcba4109961c9126c.tar.gz
Add support for bmake. This includes:
1. Don't do upgrade_checks when using bmake. As long as we have WITH_BMAKE, there's a bootstrap complication in ths respect. Avoid it. Make the necessary changes to have upgrade_checks work wth bmake anyway. 2. Remove the use of -E. It's not needed in our build because we use ?= for the respective variables, which means that we'll take the environment value (if any) anyway. 3. Properly declare phony targets as phony as bmake is a lot smarter (and thus agressive) about build avoidance. 4. Make sure CLEANFILES is complete and use it on .NOPATH. bmake is a lot smarter about build avoidance and should not find files we generate in the source tree. We should not have files in the repository we want to generate, but this is an easier way to cross this hurdle. 5. Have behavior under bmake the same as it is under make with respect to halting when sub-commands fail. Add "set -e" to compound commands so that bmake is informed when sub-commands fail. 6. Make sure crunchgen uses the same make as the rest of the build. This is important when the make utility isn't called make (but bmake for example). 7. While here, add support for using MAKEOBJDIR to set the object tree location. It's the second alternative bmake looks for when determining the actual object directory (= .OBJDIR). Submitted by: Simon Gerraty <sjg@juniper.net> Submitted by: John Van Horne <jvanhorne@juniper.net>
Diffstat (limited to 'share/mk/bsd.sys.mk')
-rw-r--r--share/mk/bsd.sys.mk15
1 files changed, 15 insertions, 0 deletions
diff --git a/share/mk/bsd.sys.mk b/share/mk/bsd.sys.mk
index cc752a2..847e571 100644
--- a/share/mk/bsd.sys.mk
+++ b/share/mk/bsd.sys.mk
@@ -126,3 +126,18 @@ CFLAGS+= ${SSP_CFLAGS}
# Allow user-specified additional warning flags
CFLAGS+= ${CWARNFLAGS}
+
+
+# Tell bmake not to mistake standard targets for things to be searched for
+# or expect to ever be up-to-date.
+PHONY_NOTMAIN = afterdepend afterinstall all beforedepend beforeinstall \
+ beforelinking build build-tools buildfiles buildincludes \
+ checkdpadd clean cleandepend cleandir cleanobj configure \
+ depend dependall distclean distribute exe extract fetch \
+ html includes install installfiles installincludes lint \
+ obj objlink objs objwarn patch realall realdepend \
+ realinstall regress subdir-all subdir-depend subdir-install \
+ tags whereobj
+
+.PHONY: ${PHONY_NOTMAIN}
+.NOTMAIN: ${PHONY_NOTMAIN}
OpenPOWER on IntegriCloud