strip path when untaring kernel for headers
authorPaulius Zaleckas <paulius.zaleckas@gmail.com>
Sun, 5 Dec 2010 21:30:21 +0000 (23:30 +0200)
committerPeter Korsgaard <jacmet@sunsite.dk>
Mon, 13 Dec 2010 16:19:05 +0000 (17:19 +0100)
This is needed when custom/snapshot kernel headers are selected.
Buildroot expects to find dl/linux-2.6.tar.bz2 and also expects
it to extract to output/toolchain/linux-2.6, but if you tar
custom kernel sources directory can be anything, etc. linux-git.
In that case buildroot would extract it to output/toolchain/linux-git.
So fix this behaviour, by using tar strip-directory/component.

Signed-off-by: Paulius Zaleckas <paulius.zaleckas@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
toolchain/kernel-headers/kernel-headers-new.makefile

index 2237a0ad9d024dcca180d8d000031cd6ccd4dd57..568286973e02c9265195f34eab53d6cdff823722 100644 (file)
@@ -28,8 +28,9 @@ LINUX_HEADERS_DEPENDS:=
 $(LINUX_HEADERS_UNPACK_DIR)/.unpacked: $(DL_DIR)/$(LINUX_HEADERS_SOURCE)
        @echo "*** Using kernel-headers generated from kernel source"
        rm -rf $(LINUX_HEADERS_DIR)
-       [ -d $(TOOLCHAIN_DIR) ] || $(INSTALL) -d $(TOOLCHAIN_DIR)
-       $(LINUX_HEADERS_CAT) $(DL_DIR)/$(LINUX_HEADERS_SOURCE) | tar -C $(TOOLCHAIN_DIR) $(TAR_OPTIONS) -
+       $(INSTALL) -d $(@D)
+       $(LINUX_HEADERS_CAT) $(DL_DIR)/$(LINUX_HEADERS_SOURCE) | \
+       tar $(TAR_STRIP_COMPONENTS)=1 -C $(@D) $(TAR_OPTIONS) -
        touch $@
 
 $(LINUX_HEADERS_UNPACK_DIR)/.patched: $(LINUX_HEADERS_UNPACK_DIR)/.unpacked $(LINUX_HEADERS_DEPENDS)