diff --git a/debian/rules.real b/debian/rules.real index 8d13edddc..d53ab16e5 100644 --- a/debian/rules.real +++ b/debian/rules.real @@ -187,6 +187,7 @@ install-headers_$(ARCH): +$(MAKE_SELF) install-base GENCONTROL_ARGS='-Vkernel:Arch=$(ARCH)' install-headers_$(ARCH)_$(FEATURESET): PACKAGE_NAME = linux-headers-$(UPSTREAMVERSION)$(ABINAME)-common$(LOCALVERSION_HEADERS) +install-headers_$(ARCH)_$(FEATURESET): PACKAGE_NAME_KBUILD = linux-kbuild-$(VERSION) install-headers_$(ARCH)_$(FEATURESET): DH_OPTIONS = -p$(PACKAGE_NAME) install-headers_$(ARCH)_$(FEATURESET): BASE_DIR = /usr/src/$(PACKAGE_NAME) install-headers_$(ARCH)_$(FEATURESET): SOURCE_DIR = $(BUILD_DIR)/source_$(ARCH)_$(FEATURESET) @@ -195,6 +196,7 @@ install-headers_$(ARCH)_$(FEATURESET): $(STAMPS_DIR)/source_$(ARCH)_$(FEATURESET dh_testdir dh_testroot dh_clean -k -d + cd $(SOURCE_DIR); \ ( \ find . \ @@ -211,14 +213,18 @@ install-headers_$(ARCH)_$(FEATURESET): $(STAMPS_DIR)/source_$(ARCH)_$(FEATURESET ) \ | \ cpio -pd --preserve-modification-time '$(CURDIR)/$(DIR)' + + ln -s ../$(PACKAGE_NAME_KBUILD)/{Kbuild,scripts} $(DIR) + +$(MAKE_SELF) install-base install-headers_$(ARCH)_$(FEATURESET)_$(FLAVOUR): REAL_VERSION = $(UPSTREAMVERSION)$(ABINAME)$(LOCALVERSION) install-headers_$(ARCH)_$(FEATURESET)_$(FLAVOUR): PACKAGE_NAME = linux-headers-$(REAL_VERSION) -install-headers_$(ARCH)_$(FEATURESET)_$(FLAVOUR): PACKAGE_NAME_HEADERS = linux-headers-$(UPSTREAMVERSION)$(ABINAME)-common$(LOCALVERSION_HEADERS) +install-headers_$(ARCH)_$(FEATURESET)_$(FLAVOUR): PACKAGE_NAME_COMMON = linux-headers-$(UPSTREAMVERSION)$(ABINAME)-common$(LOCALVERSION_HEADERS) install-headers_$(ARCH)_$(FEATURESET)_$(FLAVOUR): PACKAGE_NAME_KBUILD = linux-kbuild-$(VERSION) install-headers_$(ARCH)_$(FEATURESET)_$(FLAVOUR): DH_OPTIONS = -p$(PACKAGE_NAME) install-headers_$(ARCH)_$(FEATURESET)_$(FLAVOUR): BASE_DIR = /usr/src/$(PACKAGE_NAME) +install-headers_$(ARCH)_$(FEATURESET)_$(FLAVOUR): BASE_DIR_COMMON = /usr/src/$(PACKAGE_NAME_COMMON) install-headers_$(ARCH)_$(FEATURESET)_$(FLAVOUR): SOURCE_DIR = $(BUILD_DIR)/build_$(ARCH)_$(FEATURESET)_$(FLAVOUR) install-headers_$(ARCH)_$(FEATURESET)_$(FLAVOUR): REF_DIR = $(BUILD_DIR)/source_$(ARCH)_$(FEATURESET) install-headers_$(ARCH)_$(FEATURESET)_$(FLAVOUR): PACKAGE_DIR = debian/$(PACKAGE_NAME) @@ -229,32 +235,8 @@ install-headers_$(ARCH)_$(FEATURESET)_$(FLAVOUR): $(STAMPS_DIR)/build_$(ARCH)_$( dh_clean -k -d mkdir -p $(DIR)/arch/$(KERNEL_ARCH)/kernel - mkdir -p $(DIR)/include - cp -a $(SOURCE_DIR)/{.config,.kernel*,Module.symvers} $(DIR) - - cd $(SOURCE_DIR); \ - find . -mindepth 1 -maxdepth 1 \ - ! -name debian -a ! -name Documentation -a ! -name include -a \ - ! -name scripts -a ! -name arch -a \( -name Makefile -o -type d \) \ - -printf "../$(PACKAGE_NAME_HEADERS)/%f\n" | \ - xargs ln -s --target-directory='$(CURDIR)'/$(DIR) - - cd $(SOURCE_DIR); \ - find arch/$(KERNEL_ARCH) -mindepth 1 -maxdepth 1 \ - -type d -a ! -name include -a ! -name kernel -o \ - -type f -a \( -name 'Makefile*' -o -name 'Kconfig*' -o -name "module.lds" \) \ - -printf "../../../$(PACKAGE_NAME_HEADERS)/%p\n" | \ - xargs -r ln -s --target-directory='$(CURDIR)'/$(DIR)/arch/$(KERNEL_ARCH) - - cd $(SOURCE_DIR); \ - find arch/$(KERNEL_ARCH)/kernel -mindepth 1 -maxdepth 1 \ - -type f -a \( -name 'Makefile*' -o -name 'Kconfig*' -o -name "module.lds" \) \ - -printf "../../../../$(PACKAGE_NAME_HEADERS)/%p\n" | \ - xargs -r ln -s --target-directory='$(CURDIR)'/$(DIR)/arch/$(KERNEL_ARCH)/kernel - - [ -d $(SOURCE_DIR)/arch/$(KERNEL_ARCH)/include ] && \ - cp -a $(SOURCE_DIR)/arch/$(KERNEL_ARCH)/include $(DIR)/arch/$(KERNEL_ARCH)/include || : - cp -a $(SOURCE_DIR)/arch/$(KERNEL_ARCH)/kernel/asm-offsets.s $(DIR)/arch/$(KERNEL_ARCH)/kernel || : + cp -a $(SOURCE_DIR)/{.config,.kernel*,Module.symvers,include} $(DIR) + cp -a $(SOURCE_DIR)/arch/$(KERNEL_ARCH)/kernel/asm-offsets.s $(DIR)/arch/$(KERNEL_ARCH)/kernel ifeq ($(ARCH),powerpc) if [ -f $(SOURCE_DIR)/arch/$(KERNEL_ARCH)/lib/crtsavres.o ]; then \ @@ -263,31 +245,19 @@ ifeq ($(ARCH),powerpc) fi endif - cd $(SOURCE_DIR); \ - find include -mindepth 1 -maxdepth 1 \ - ! -name config -a ! -name linux -a ! -name 'asm*' \ - -printf "../../$(PACKAGE_NAME_HEADERS)/%p\n" | \ - xargs -r ln -s --target-directory='$(CURDIR)'/$(DIR)/include - cp -a $(SOURCE_DIR)/include/config $(DIR)/include - - ln -sf asm-$(KERNEL_ARCH) $(DIR)/include/asm + @echo 'VERSION = 2' > $(DIR)/Makefile + @echo 'PATCHLEVEL = 6' >> $(DIR)/Makefile - cd $(SOURCE_DIR); \ - for dir in linux asm-$(KERNEL_ARCH); do \ - mkdir '$(CURDIR)'/$(DIR)/include/$$dir; \ - for file in $$(find include/$$dir -mindepth 1 -maxdepth 1); do \ - if [ -e '$(CURDIR)'/$(REF_DIR)/$$file ]; then \ - ln -s --target-directory='$(CURDIR)'/$(DIR)/include/$$dir ../../../$(PACKAGE_NAME_HEADERS)/$$file; \ - else \ - ln -f --target-directory='$(CURDIR)'/$(DIR)/include/$$dir '$(CURDIR)'/$(SOURCE_DIR)/$$file; \ - fi \ - done \ - done + @echo 'MAKEARGS := -C $(BASE_DIR_COMMON) O=$(BASE_DIR)' >> $(DIR)/Makefile + @echo 'MAKEFLAGS += --no-print-directory' >> $(DIR)/Makefile - cd $(SOURCE_DIR); \ - for dir in asm-generic $(foreach t,$(filter-out $(KERNEL_ARCH),$(KERNEL_HEADER_DIRS)),asm-$(t)); do \ - ln -s --target-directory='$(CURDIR)'/$(DIR)/include ../../$(PACKAGE_NAME_HEADERS)/include/$$dir; \ - done + @echo '.PHONY: all $$(MAKECMDGOALS)' >> $(DIR)/Makefile + @echo 'cmd := $$(filter-out all Makefile,$$(MAKECMDGOALS))' >> $(DIR)/Makefile + @echo 'all:' >> $(DIR)/Makefile + @echo ' @$$(MAKE) $$(MAKEARGS) $$(cmd)' >> $(DIR)/Makefile + @echo 'Makefile:;' >> $(DIR)/Makefile + @echo '$(cmd) %/: all' >> $(DIR)/Makefile + @echo ' @:' >> $(DIR)/Makefile ln -s ../$(PACKAGE_NAME_KBUILD)/scripts $(DIR)