diff options
Diffstat (limited to 'build/config.mk')
-rw-r--r-- | build/config.mk | 32 |
1 files changed, 15 insertions, 17 deletions
diff --git a/build/config.mk b/build/config.mk index 80206c7..be57678 100644 --- a/build/config.mk +++ b/build/config.mk @@ -7,22 +7,23 @@ include build/prelude.mk include build/exports.mk # All configuration steps -config: gen/config.mk +config: gen/config.mk gen/config.h .PHONY: config -# Makefile fragments generated by `./configure` +# All the generated makefile fragments MKS := \ gen/vars.mk \ - gen/flags.mk \ - gen/deps.mk \ - gen/pkgs.mk + gen/early.mk \ + gen/auto.mk \ + gen/pkgs.mk \ + gen/late.mk # The main configuration file, which includes the others -gen/config.mk: ${MKS} gen/config.h +gen/config.mk: ${MKS} ${MSG} "[ GEN] $@" @printf '# %s\n' "$@" >$@ - @printf 'include %s\n' ${MKS} >>$@ - ${VCAT} gen/config.mk + @printf 'include %s\n' $^ >>$@ + ${VCAT} $@ .PHONY: gen/config.mk # Saves the configurable variables @@ -38,25 +39,22 @@ gen/vars.mk:: @printf 'MKDIR := %s\n' "$$XMKDIR" >>$@ @printf 'PKG_CONFIG := %s\n' "$$XPKG_CONFIG" >>$@ @printf 'RM := %s\n' "$$XRM" >>$@ + @test -z "$$VERSION" || printf 'export VERSION=%s\n' "$$VERSION" >>$@ ${VCAT} $@ # Sets the build flags. This depends on vars.mk and uses a recursive make so # that the default flags can depend on variables like ${OS}. -gen/flags.mk: gen/vars.mk +gen/early.mk gen/late.mk: gen/vars.mk @+XMAKEFLAGS="$$MAKEFLAGS" ${MAKE} -sf build/flags.mk $@ -.PHONY: gen/flags.mk -# Check for dependency generation support -gen/deps.mk: gen/flags.mk - @+XMAKEFLAGS="$$MAKEFLAGS" ${MAKE} -sf build/deps.mk $@ -.PHONY: gen/deps.mk +# Auto-detected build flags +gen/auto.mk: gen/early.mk gen/late.mk + @+XMAKEFLAGS="$$MAKEFLAGS" ${MAKE} -sf build/auto.mk $@ # Auto-detect dependencies and their build flags -gen/pkgs.mk: gen/flags.mk +gen/pkgs.mk: gen/auto.mk @+XMAKEFLAGS="$$MAKEFLAGS" ${MAKE} -sf build/pkgs.mk $@ -.PHONY: gen/pkgs.mk # Compile-time feature detection gen/config.h: gen/pkgs.mk @+XMAKEFLAGS="$$MAKEFLAGS" ${MAKE} -sf build/header.mk $@ -.PHONY: gen/config.h |