]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - scripts/package/Makefile
rpm-pkg: Remove pointless set -e statements
[karo-tx-linux.git] / scripts / package / Makefile
index 87bf08076b111987a95081d8a55f13e2fb8d534f..84a406070f6f2b3f7ca48998bdce1a7d1ad7c3b4 100644 (file)
@@ -27,53 +27,44 @@ RPM := $(shell if [ -x "/usr/bin/rpmbuild" ]; then echo rpmbuild; \
 
 # Remove hyphens since they have special meaning in RPM filenames
 KERNELPATH := kernel-$(subst -,_,$(KERNELRELEASE))
+# Include only those top-level files that are needed by make, plus the GPL copy
+TAR_CONTENT := $(KBUILD_ALLDIRS) kernel.spec .config .scmversion Makefile \
+               Kbuild Kconfig COPYING $(wildcard localversion*)
+TAR_CONTENT := $(addprefix $(KERNELPATH)/,$(TAR_CONTENT))
 MKSPEC     := $(srctree)/scripts/package/mkspec
-PREV       := set -e; cd -P ..;
 
 # rpm-pkg
 # ---------------------------------------------------------------------------
-$(objtree)/kernel.spec: $(MKSPEC) $(srctree)/Makefile
-       $(CONFIG_SHELL) $(MKSPEC) > $@
-
-rpm-pkg rpm: $(objtree)/kernel.spec FORCE
-       @if test -n "$(KBUILD_OUTPUT)"; then \
+rpm-pkg rpm: FORCE
+       @if test "$(objtree)" != "$(srctree)"; then \
                echo "Building source + binary RPM is not possible outside the"; \
                echo "kernel source tree. Don't set KBUILD_OUTPUT, or use the"; \
                echo "binrpm-pkg target instead."; \
                false; \
        fi
        $(MAKE) clean
-       $(PREV) ln -sf $(srctree) $(KERNELPATH)
+       ln -sf $(srctree) $(KERNELPATH)
+       $(CONFIG_SHELL) $(MKSPEC) >$(objtree)/kernel.spec
        $(CONFIG_SHELL) $(srctree)/scripts/setlocalversion --save-scmversion
-       $(PREV) tar -cz $(RCS_TAR_IGNORE) -f $(KERNELPATH).tar.gz $(KERNELPATH)/.
-       $(PREV) rm $(KERNELPATH)
+       tar -cz $(RCS_TAR_IGNORE) -f $(KERNELPATH).tar.gz $(TAR_CONTENT)
+       rm $(KERNELPATH)
        rm -f $(objtree)/.scmversion
-       set -e; \
        $(CONFIG_SHELL) $(srctree)/scripts/mkversion > $(objtree)/.tmp_version
-       set -e; \
        mv -f $(objtree)/.tmp_version $(objtree)/.version
-
-       $(RPM) $(RPMOPTS) --target $(UTS_MACHINE) -ta ../$(KERNELPATH).tar.gz
-       rm ../$(KERNELPATH).tar.gz
-
-clean-files := $(objtree)/kernel.spec
+       $(RPM) $(RPMOPTS) --target $(UTS_MACHINE) -ta $(KERNELPATH).tar.gz
+       rm $(KERNELPATH).tar.gz kernel.spec
 
 # binrpm-pkg
 # ---------------------------------------------------------------------------
-$(objtree)/binkernel.spec: $(MKSPEC) $(srctree)/Makefile
-       $(CONFIG_SHELL) $(MKSPEC) prebuilt > $@
-
-binrpm-pkg: $(objtree)/binkernel.spec FORCE
+binrpm-pkg: FORCE
        $(MAKE) KBUILD_SRC=
-       set -e; \
+       $(CONFIG_SHELL) $(MKSPEC) prebuilt > $(objtree)/binkernel.spec
        $(CONFIG_SHELL) $(srctree)/scripts/mkversion > $(objtree)/.tmp_version
-       set -e; \
        mv -f $(objtree)/.tmp_version $(objtree)/.version
 
        $(RPM) $(RPMOPTS) --define "_builddir $(objtree)" --target \
                $(UTS_MACHINE) -bb $<
-
-clean-files += $(objtree)/binkernel.spec
+       rm binkernel.spec
 
 # Deb target
 # ---------------------------------------------------------------------------