debian/rules.real: Use external source directory in the headers packages.

svn path=/dists/trunk/linux-2.6/; revision=12910
This commit is contained in:
Bastian Blank 2009-02-22 15:39:47 +00:00
parent 0611538223
commit 05ce17f045
1 changed files with 20 additions and 50 deletions

70
debian/rules.real vendored
View File

@ -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)