summaryrefslogtreecommitdiffstats
path: root/share
diff options
context:
space:
mode:
authorsjg <sjg@FreeBSD.org>2015-05-26 16:17:24 +0000
committersjg <sjg@FreeBSD.org>2015-05-26 16:17:24 +0000
commit26636a1e66ab43d9110bc8a6699df5ae9cff8bdd (patch)
tree4607d7e7f0f1c12077655f304e7a8cc330323f67 /share
parent7566a01eaa5b34c021bb98c544125d0897019596 (diff)
downloadFreeBSD-src-26636a1e66ab43d9110bc8a6699df5ae9cff8bdd.zip
FreeBSD-src-26636a1e66ab43d9110bc8a6699df5ae9cff8bdd.tar.gz
Add support for __DEFAULT_DEPENDENT_OPTIONS
Diffstat (limited to 'share')
-rw-r--r--share/mk/bsd.mkopt.mk33
1 files changed, 33 insertions, 0 deletions
diff --git a/share/mk/bsd.mkopt.mk b/share/mk/bsd.mkopt.mk
index 46f835b..6a41dbe 100644
--- a/share/mk/bsd.mkopt.mk
+++ b/share/mk/bsd.mkopt.mk
@@ -18,6 +18,10 @@
# after all this processing, allowing this file to be included
# multiple times with different lists.
#
+# Other parts of the build system will set BROKEN_OPTIONS to a list
+# of options that are broken on this platform. This will not be unset
+# before returning. Clients are expected to always += this variable.
+#
# Users should generally define WITH_FOO or WITHOUT_FOO, but the build
# system should use MK_FOO={yes,no} when it needs to override the
# user's desires or default behavior.
@@ -33,7 +37,11 @@ MK_${var}:= no
.else
MK_${var}:= yes
.endif
+.else
+.if ${MK_${var}} != "yes" && ${MK_${var}} != "no"
+.error "Illegal value for MK_${var}: ${MK_${var}}"
.endif
+.endif # !defined(MK_${var})
.endfor
.undef __DEFAULT_YES_OPTIONS
@@ -47,6 +55,31 @@ MK_${var}:= yes
.else
MK_${var}:= no
.endif
+.else
+.if ${MK_${var}} != "yes" && ${MK_${var}} != "no"
+.error "Illegal value for MK_${var}: ${MK_${var}}"
.endif
+.endif # !defined(MK_${var})
.endfor
.undef __DEFAULT_NO_OPTIONS
+
+#
+# MK_* options which are always no, usually because they are
+# unsupported/badly broken on this architecture.
+#
+.for var in ${BROKEN_OPTIONS}
+MK_${var}:= no
+.endfor
+
+.for vv in ${__DEFAULT_DEPENDENT_OPTIONS}
+.if defined(WITH_${vv:H}) && defined(WITHOUT_${vv:H})
+MK_${vv:H}?= no
+.elif defined(WITH_${vv:H})
+MK_${vv:H}?= yes
+.elif defined(WITHOUT_${vv:H})
+MK_${vv:H}?= no
+.else
+MK_${vv:H}?= ${MK_${vv:T}}
+.endif
+.endfor
+.undef __DEFAULT_DEPENDENT_OPTIONS
OpenPOWER on IntegriCloud