aboutsummaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorFathi Boudra <fathi.boudra@linaro.org>2014-04-14 16:01:10 +0300
committerAndrey Konovalov <andrey.konovalov@linaro.org>2014-04-15 01:12:18 +0400
commitfd826cb0dba41cd496d5948409761f3cd8f981c4 (patch)
treeebd4443a9e7fe24811b6c10e6b11fa609f0980bd /scripts
parenta23e841683d22a758ebf6c00be24deddc39a58e2 (diff)
builddeb: fix missing headers in linux-headers package on arm architecture
The kernel headers package (linux-headers) doesn't include the arch/arm/mach-*/include header files. It makes the package unusable on ARM architecture and prevent out-of-tree modules build: /usr/src/linux-headers-3.14.0/arch/arm/include/asm/memory.h:24:25: fatal error: mach/memory.h: No such file or directory #include <mach/memory.h> ^ compilation terminated. While this patch explicitely test arm architecture, avr32 and blackfin are affected since they ship mach-* headers. However, they haven't been included in the test because they aren't official architectures supported by Debian. minor tweak: clean up the linux-headers package by using tar exclude option. Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org>
Diffstat (limited to 'scripts')
-rw-r--r--scripts/package/builddeb10
1 files changed, 7 insertions, 3 deletions
diff --git a/scripts/package/builddeb b/scripts/package/builddeb
index 02ca3fb3eef..154a8d7a97e 100644
--- a/scripts/package/builddeb
+++ b/scripts/package/builddeb
@@ -292,14 +292,18 @@ EOF
fi
-# Build header package
+# Build kernel header package
(cd $srctree; find . -name Makefile\* -o -name Kconfig\* -o -name \*.pl > "$objtree/debian/hdrsrcfiles")
(cd $srctree; find arch/$SRCARCH/include include scripts -type f >> "$objtree/debian/hdrsrcfiles")
+if [ "$ARCH" = "arm" ]; then
+ (cd $srctree; find arch/arm/mach-*/include -type f >> "$objtree/debian/hdrsrcfiles")
+fi
(cd $objtree; find arch/$SRCARCH/include Module.symvers include scripts -type f >> "$objtree/debian/hdrobjfiles")
destdir=$kernel_headers_dir/usr/src/linux-headers-$version
mkdir -p "$destdir"
-(cd $srctree; tar -c -f - -T "$objtree/debian/hdrsrcfiles") | (cd $destdir; tar -xf -)
-(cd $objtree; tar -c -f - -T "$objtree/debian/hdrobjfiles") | (cd $destdir; tar -xf -)
+excludes="--exclude-vcs --exclude=*.cmd --exclude=*.o --exclude=Documentation"
+(cd $srctree; tar $excludes -cf - -T "$objtree/debian/hdrsrcfiles") | (cd $destdir; tar -xf -)
+(cd $objtree; tar $excludes -cf - -T "$objtree/debian/hdrobjfiles") | (cd $destdir; tar -xf -)
(cd $objtree; cp $KCONFIG_CONFIG $destdir/.config) # copy .config manually to be where it's expected to be
ln -sf "/usr/src/linux-headers-$version" "$kernel_headers_dir/lib/modules/$version/build"
rm -f "$objtree/debian/hdrsrcfiles" "$objtree/debian/hdrobjfiles"