aboutsummaryrefslogtreecommitdiff
path: root/pkgs/Makefile.xtras
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/Makefile.xtras')
-rw-r--r--pkgs/Makefile.xtras48
1 files changed, 48 insertions, 0 deletions
diff --git a/pkgs/Makefile.xtras b/pkgs/Makefile.xtras
new file mode 100644
index 000000000000..358f5ddec537
--- /dev/null
+++ b/pkgs/Makefile.xtras
@@ -0,0 +1,48 @@
+# $FreeBSD$
+#
+# Makefile.xtras - non-build targets
+
+# Resist the urge to fill this with miscellaneous junk
+
+# We are not building here (shouldn't be), so no meta mode.
+.MAKE.MODE = normal
+
+_here := ${_PARSEDIR}
+
+.MAIN: no-default
+
+no-default:
+ @echo "ERROR: there is no supported default target."; \
+ echo "Try 'mk help'"
+
+
+.if make(show-valid-targets)
+OTHER_TARGETS = \
+ destroy \
+
+BUILD_TARGETS != cd ${_here} && \
+ find . \( -name Makefile.depend -o -name ${.MAKE.DEPENDFILE:T} \) | \
+ sed 's,/Makefile.*,,;s,^./,,' | sort -u
+
+show-valid-targets:
+ @echo "Build targets for ${MACHINE}:"; echo "${BUILD_TARGETS:ts\n}"
+ @echo; echo "Other targets:"; echo "${OTHER_TARGETS:ts\n}"
+.endif
+
+help: show-help
+show-help:
+ @echo; \
+ echo "You can see the targets which are valid for a given machine"; \
+ echo "by running 'mk --machine <machine> show-valid-targets'"; \
+ echo "For other information, read: ${HELP_DOCS:@d@${.newline}$d@}"; \
+ echo
+
+not-valid-target:
+ @echo "ERROR: '${_TARGETS}' is not a valid target for ${MACHINE}."
+
+
+.for t in ${_TARGETS:Nlove}
+.if !target($t)
+$t: not-valid-target show-help
+.endif
+.endfor