diff options
author | Thomas Miedema <thomasmiedema@gmail.com> | 2015-07-10 18:38:02 +0200 |
---|---|---|
committer | Thomas Miedema <thomasmiedema@gmail.com> | 2015-07-13 21:07:42 +0200 |
commit | ec197d390e18a6cfaa420009f5c5f143237f5a9f (patch) | |
tree | b4b12c0a364cf4f6b50597d8044fc5347c2c1add | |
parent | 2e52057adaab6d29c55a87fa9e52cdae4b9e3182 (diff) | |
download | haskell-ec197d390e18a6cfaa420009f5c5f143237f5a9f.tar.gz |
Build system: add `make show!` command (#7810)
A normal `make show` starts a build of the ghc-stage1 compiler, to
create package-data.mk files. This version doesn't read those, so it
will work right after ./configure.
Differential Revision: https://phabricator.haskell.org/D1064
-rw-r--r-- | MAKEHELP.md | 5 | ||||
-rw-r--r-- | Makefile | 5 | ||||
-rw-r--r-- | mk/sub-makefile.mk | 4 |
3 files changed, 12 insertions, 2 deletions
diff --git a/MAKEHELP.md b/MAKEHELP.md index ff0e4340a5..3b58292600 100644 --- a/MAKEHELP.md +++ b/MAKEHELP.md @@ -36,6 +36,11 @@ Common commands: Displays the value of make variable <var> + - `make show! VALUE=<var>` + + Same as `make show`, but works right after ./configure (it skips reading + package-data.mk files). + - make clean - make distclean - make maintainer-clean @@ -78,6 +78,7 @@ REALGOALS=$(filter-out \ distclean \ maintainer-clean \ show \ + show! \ echo \ help \ test \ @@ -142,6 +143,10 @@ $(filter clean_%, $(MAKECMDGOALS)) : clean_% : bootstrapping-files show echo: $(MAKE) --no-print-directory -f ghc.mk $@ +.PHONY: show! +show!: + $(MAKE) --no-print-directory -f ghc.mk show NO_INCLUDE_PKGDATA=YES + ifeq "$(darwin_TARGET_OS)" "1" .PHONY: framework-pkg framework-pkg: diff --git a/mk/sub-makefile.mk b/mk/sub-makefile.mk index 12f47f0f45..73d98c992c 100644 --- a/mk/sub-makefile.mk +++ b/mk/sub-makefile.mk @@ -42,7 +42,7 @@ endif .NOTPARALLEL: STD_TARGETS = all clean distclean maintainer_clean install html ps pdf -DIRECTORY_INDEPENDENT_TARGETS = show +DIRECTORY_INDEPENDENT_TARGETS = show show! # The + tells make that we're recursively invoking make, otherwise 'make -j2' # goes wrong. @@ -52,7 +52,7 @@ $(STD_TARGETS): $(DIRECTORY_INDEPENDENT_TARGETS): +$(TOPMAKE) $@ $(EXTRA_MAKE_OPTS) -OTHERTARGETS=$(filter-out fast help show $(STD_TARGETS) $(SPEC_TARGETS),$(MAKECMDGOALS)) +OTHERTARGETS=$(filter-out fast help $(DIRECTORY_INDEPENDENT_TARGETS) $(STD_TARGETS) $(SPEC_TARGETS),$(MAKECMDGOALS)) .PHONY: $(OTHERTARGETS) $(OTHERTARGETS): +$(TOPMAKE) $(dir)/$@ $(EXTRA_MAKE_OPTS) |