aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/package
diff options
context:
space:
mode:
authorPaul Smith <psmith@gnu.org>2006-03-05 17:14:10 -0500
committerSam Ravnborg <sam@mars.ravnborg.org>2006-03-05 18:09:51 -0500
commit4f1933620f57145212cdbb1ac6ce099eeeb21c5a (patch)
treec083cce1f0acedd92be2ac6eb5e6c49ebd84ac46 /scripts/package
parent7b75b13cda8bd21e8636ea985f76e1ce5bd1a470 (diff)
kbuild: change kbuild to not rely on incorrect GNU make behavior
The kbuild system takes advantage of an incorrect behavior in GNU make. Once this behavior is fixed, all files in the kernel rebuild every time, even if nothing has changed. This patch ensures kbuild works with both the incorrect and correct behaviors of GNU make. For more details on the incorrect behavior, see: http://lists.gnu.org/archive/html/bug-make/2006-03/msg00003.html Changes in this patch: - Keep all targets that are to be marked .PHONY in a variable, PHONY. - Add .PHONY: $(PHONY) to mark them properly. - Remove any $(PHONY) files from the $? list when determining whether targets are up-to-date or not. Signed-off-by: Paul Smith <psmith@gnu.org> Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Diffstat (limited to 'scripts/package')
-rw-r--r--scripts/package/Makefile10
1 files changed, 5 insertions, 5 deletions
diff --git a/scripts/package/Makefile b/scripts/package/Makefile
index c201ef001f09..d3038b7643ae 100644
--- a/scripts/package/Makefile
+++ b/scripts/package/Makefile
@@ -32,7 +32,7 @@ MKSPEC := $(srctree)/scripts/package/mkspec
32PREV := set -e; cd ..; 32PREV := set -e; cd ..;
33 33
34# rpm-pkg 34# rpm-pkg
35.PHONY: rpm-pkg rpm 35PHONY += rpm-pkg rpm
36 36
37$(objtree)/kernel.spec: $(MKSPEC) $(srctree)/Makefile 37$(objtree)/kernel.spec: $(MKSPEC) $(srctree)/Makefile
38 $(CONFIG_SHELL) $(MKSPEC) > $@ 38 $(CONFIG_SHELL) $(MKSPEC) > $@
@@ -54,10 +54,10 @@ rpm-pkg rpm: $(objtree)/kernel.spec
54clean-files := $(objtree)/kernel.spec 54clean-files := $(objtree)/kernel.spec
55 55
56# binrpm-pkg 56# binrpm-pkg
57.PHONY: binrpm-pkg 57PHONY += binrpm-pkg
58$(objtree)/binkernel.spec: $(MKSPEC) $(srctree)/Makefile 58$(objtree)/binkernel.spec: $(MKSPEC) $(srctree)/Makefile
59 $(CONFIG_SHELL) $(MKSPEC) prebuilt > $@ 59 $(CONFIG_SHELL) $(MKSPEC) prebuilt > $@
60 60
61binrpm-pkg: $(objtree)/binkernel.spec 61binrpm-pkg: $(objtree)/binkernel.spec
62 $(MAKE) KBUILD_SRC= 62 $(MAKE) KBUILD_SRC=
63 set -e; \ 63 set -e; \
@@ -72,7 +72,7 @@ clean-files += $(objtree)/binkernel.spec
72# Deb target 72# Deb target
73# --------------------------------------------------------------------------- 73# ---------------------------------------------------------------------------
74# 74#
75.PHONY: deb-pkg 75PHONY += deb-pkg
76deb-pkg: 76deb-pkg:
77 $(MAKE) KBUILD_SRC= 77 $(MAKE) KBUILD_SRC=
78 $(CONFIG_SHELL) $(srctree)/scripts/package/builddeb 78 $(CONFIG_SHELL) $(srctree)/scripts/package/builddeb
@@ -82,7 +82,7 @@ clean-dirs += $(objtree)/debian/
82 82
83# tarball targets 83# tarball targets
84# --------------------------------------------------------------------------- 84# ---------------------------------------------------------------------------
85.PHONY: tar%pkg 85PHONY += tar%pkg
86tar%pkg: 86tar%pkg:
87 $(MAKE) KBUILD_SRC= 87 $(MAKE) KBUILD_SRC=
88 $(CONFIG_SHELL) $(srctree)/scripts/package/buildtar $@ 88 $(CONFIG_SHELL) $(srctree)/scripts/package/buildtar $@