aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile34
1 files changed, 24 insertions, 10 deletions
diff --git a/Makefile b/Makefile
index 7f79e4fc..421a071b 100644
--- a/Makefile
+++ b/Makefile
@@ -1,18 +1,24 @@
PACKAGE_VERSION = `/bin/fgrep GK_V= genkernel | sed "s/.*GK_V='\([^']\+\)'/\1/"`
distdir = genkernel-$(PACKAGE_VERSION)
-KCONF = $(shell ls arch/*/arch-config | sed 's/arch-/generated-/g')
-
+MANPAGE = genkernel.8
# Add off-Git/generated files here that need to be shipped with releases
-EXTRA_DIST = genkernel.8 ChangeLog $(KCONF)
+EXTRA_DIST = $(MANPAGE) ChangeLog $(KCONF)
-default: $(KCONF) genkernel.8
+default: kconfig man
-$(KCONF):
- perl merge.pl defaults/kernel-generic-config $(dir $@)arch-config > $@
+# First argument in the override file
+# Second argument is the base file
+BASE_KCONF = defaults/kernel-generic-config
+ARCH_KCONF = $(wildcard arch/*/arch-config)
+GENERATED_KCONF = $(subst arch-,generated-,$(ARCH_KCONF))
+KCONF = $(GENERATED_KCONF)
-genkernel.8: doc/genkernel.8.txt doc/asciidoc.conf Makefile genkernel
- a2x --conf-file=doc/asciidoc.conf --attribute="genkernelversion=$(PACKAGE_VERSION)" \
- --format=manpage -D . "$<"
+debug:
+ @echo "ARCH_KCONF=$(ARCH_KCONF)"
+ @echo "GENERATED_KCONF=$(GENERATED_KCONF)"
+
+kconfig: $(GENERATED_KCONF)
+man: $(MANPAGE)
ChangeLog:
git log >$@
@@ -35,4 +41,12 @@ dist: check-git-repository distclean $(EXTRA_DIST)
distclean: clean
rm -Rf "$(distdir)" "$(distdir)".tar "$(distdir)".tar.xz
-.PHONY: clean check-git-repository dist distclean
+.PHONY: clean check-git-repository dist distclean kconfig
+
+# Generic rules
+%/generated-config: %/arch-config $(BASE_KCONF) merge.pl Makefile
+ perl merge.pl $^ $(BASE_KCONF) > $@
+
+%.8: doc/%.8.txt doc/asciidoc.conf Makefile genkernel
+ a2x --conf-file=doc/asciidoc.conf --attribute="genkernelversion=$(PACKAGE_VERSION)" \
+ --format=manpage -D . "$<"