I'm working on a new patch to add this modifications in the last version of crosstool-ng.<br>I don't modified CT_KERNEL_LINUX_CUSTOM_TARBALL to avoid add new parameter in crosstool-ng (1.12.1) config file.<br><br>Sincerely<br>
<br><div class="gmail_quote">2011/9/22 sinseman44 <span dir="ltr"><<a href="mailto:sinseman44@gmail.com">sinseman44@gmail.com</a>></span><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
---<br>
 Makefile                                           |    4 +-<br>
 ...-ng-001-makefile-buildroot-kernel-version.patch |   41 ++++++++++++++++++++<br>
 ...ol-ng-002-config-buildroot-kernel-version.patch |   24 +++++++++++<br>
 package/crosstool-ng/<a href="http://crosstool-ng.mk" target="_blank">crosstool-ng.mk</a>               |    6 ++-<br>
 toolchain/toolchain-crosstool-ng/Config.in         |    6 +++<br>
 toolchain/toolchain-crosstool-ng/<a href="http://crosstool-ng.mk" target="_blank">crosstool-ng.mk</a>   |    5 ++<br>
 6 files changed, 84 insertions(+), 2 deletions(-)<br>
 create mode 100644 package/crosstool-ng/crosstool-ng-001-makefile-buildroot-kernel-version.patch<br>
 create mode 100644 package/crosstool-ng/crosstool-ng-002-config-buildroot-kernel-version.patch<br>
<br>
diff --git a/Makefile b/Makefile<br>
index a20d3e2..59eb941 100644<br>
--- a/Makefile<br>
+++ b/Makefile<br>
@@ -301,6 +301,8 @@ all: world<br>
 # We also need the various per-package makefiles, which also add<br>
 # each selected package to TARGETS if that package was selected<br>
 # in the .config file.<br>
+include linux/<a href="http://linux.mk" target="_blank">linux.mk</a><br>
+<br>
 ifeq ($(BR2_TOOLCHAIN_BUILDROOT),y)<br>
 include toolchain/<a href="http://toolchain-buildroot.mk" target="_blank">toolchain-buildroot.mk</a><br>
 else ifeq ($(BR2_TOOLCHAIN_EXTERNAL),y)<br>
@@ -313,7 +315,7 @@ include package/*/*.mk<br>
<br>
 include boot/<a href="http://common.mk" target="_blank">common.mk</a><br>
 include target/Makefile.in<br>
-include linux/<a href="http://linux.mk" target="_blank">linux.mk</a><br>
+<br>
<br>
 TARGETS+=target-finalize<br>
<br>
diff --git a/package/crosstool-ng/crosstool-ng-001-makefile-buildroot-kernel-version.patch b/package/crosstool-ng/crosstool-ng-001-makefile-buildroot-kernel-version.patch<br>
new file mode 100644<br>
index 0000000..2a2c8ac<br>
--- /dev/null<br>
+++ b/package/crosstool-ng/crosstool-ng-001-makefile-buildroot-kernel-version.patch<br>
@@ -0,0 +1,41 @@<br>
+--- crosstool-ng-1.12.1/scripts/build/kernel/linux.sh  2011-09-21 10:50:31.403186872 +0200<br>
++++ host-crosstool-ng-1.12.1/scripts/build/kernel/linux.sh     2011-09-21 10:50:56.932014313 +0200<br>
+@@ -61,21 +61,24 @@<br>
+                 return 0<br>
+             fi<br>
+<br>
+-            CT_TestAndAbort "Custom kernel tree partially extracted. Remove before resuming" -f "${CT_SRC_DIR}/.linux-custom.extracting"<br>
+-            CT_DoExecLog DEBUG touch "${CT_SRC_DIR}/.linux-custom.extracting"<br>
+-            CT_DoExecLog DEBUG mkdir "${CT_SRC_DIR}/linux-custom"<br>
+-<br>
+-            case "${CT_KERNEL_LINUX_CUSTOM_TARBALL}" in<br>
+-                *.tar.bz2)      tar_opt=-j;;<br>
+-                *.tar.gz|*.tgz) tar_opt=-z;;<br>
+-                *.tar)          ;;<br>
+-                *)              CT_Abort "Don't know how to handle '${CT_KERNEL_LINUX_CUSTOM_TARBALL}': unknown extension";;<br>
+-            esac<br>
+-            CT_DoLog EXTRA "Extracting custom linux kernel"<br>
+-            CT_DoExecLog ALL tar x -C "${CT_SRC_DIR}/linux-custom"      \<br>
+-                                 --strip-components 1 -v ${tar_opt}     \<br>
+-                                 -f "${CT_KERNEL_LINUX_CUSTOM_TARBALL}"<br>
++                      CT_TestAndAbort "Custom kernel tree partially extracted. Remove before resuming" -f "${CT_SRC_DIR}/.linux-custom.extracting"<br>
++                      CT_DoExecLog DEBUG touch "${CT_SRC_DIR}/.linux-custom.extracting"<br>
+<br>
++                      if [ ! -d "${CT_KERNEL_LINUX_CUSTOM_TARBALL}" ]; then<br>
++                              CT_DoExecLog DEBUG mkdir "${CT_SRC_DIR}/linux-custom"<br>
++                              case "${CT_KERNEL_LINUX_CUSTOM_TARBALL}" in<br>
++                                      *.tar.bz2)      tar_opt=-j;;<br>
++                                      *.tar.gz|*.tgz) tar_opt=-z;;<br>
++                                      *.tar)          ;;<br>
++                                      *)              CT_Abort "Don't know how to handle '${CT_KERNEL_LINUX_CUSTOM_TARBALL}': unknown extension";;<br>
++                              esac<br>
++                              CT_DoLog EXTRA "Extracting custom linux kernel"<br>
++                              CT_DoExecLog ALL tar x -C "${CT_SRC_DIR}/linux-custom"      \<br>
++                                                                      --strip-components 1 -v ${tar_opt}     \<br>
++                                                                      -f "${CT_KERNEL_LINUX_CUSTOM_TARBALL}"<br>
++                      else<br>
++                              CT_DoExecLog ALL ln -s "${CT_KERNEL_LINUX_CUSTOM_TARBALL}" "${CT_SRC_DIR}/linux-custom"<br>
++                      fi<br>
+             CT_DoExecLog ALL mv -v "${CT_SRC_DIR}/.linux-custom.extracting" "${CT_SRC_DIR}/.linux-custom.extracted"<br>
+         else<br>
+             CT_Extract "linux-${CT_KERNEL_VERSION}"<br>
diff --git a/package/crosstool-ng/crosstool-ng-002-config-buildroot-kernel-version.patch b/package/crosstool-ng/crosstool-ng-002-config-buildroot-kernel-version.patch<br>
new file mode 100644<br>
index 0000000..0d98ced<br>
--- /dev/null<br>
+++ b/package/crosstool-ng/crosstool-ng-002-config-buildroot-kernel-version.patch<br>
@@ -0,0 +1,24 @@<br>
+--- crosstool-ng-1.12.1/config/kernel/<a href="http://linux.in" target="_blank">linux.in</a> 2011-09-21 11:00:49.759188996 +0200<br>
++++ host-crosstool-ng-1.12.1/config/kernel/<a href="http://linux.in" target="_blank">linux.in</a>    2011-09-21 11:02:45.390254678 +0200<br>
+@@ -144,16 +144,18 @@<br>
+<br>
+ config KERNEL_LINUX_CUSTOM<br>
+     bool<br>
+-    prompt "custom tarball"<br>
++    prompt "custom tarball or directory"<br>
+     help<br>
+-      Use a local tarball of a complete kernel source tree.<br>
++      Use a local tarball of a complete kernel source tree or<br>
++      a local kernel tree (not pre-installed)<br>
+<br>
+ config KERNEL_LINUX_CUSTOM_TARBALL<br>
+     string<br>
+     prompt "Path to custom tarball"<br>
+     depends on KERNEL_LINUX_CUSTOM<br>
+     help<br>
+-      Enter here the path to the tarball of your full kernel tree.<br>
++      Enter here the path to the tarball of your full kernel tree or<br>
++      the path or the local kernel tree<br>
+<br>
+ endchoice<br>
+<br>
diff --git a/package/crosstool-ng/<a href="http://crosstool-ng.mk" target="_blank">crosstool-ng.mk</a> b/package/crosstool-ng/<a href="http://crosstool-ng.mk" target="_blank">crosstool-ng.mk</a><br>
index 076be28..848ead7 100644<br>
--- a/package/crosstool-ng/<a href="http://crosstool-ng.mk" target="_blank">crosstool-ng.mk</a><br>
+++ b/package/crosstool-ng/<a href="http://crosstool-ng.mk" target="_blank">crosstool-ng.mk</a><br>
@@ -4,6 +4,10 @@ CROSSTOOL_NG_SITE              = <a href="http://crosstool-ng.org/download/crosstool-ng/" target="_blank">http://crosstool-ng.org/download/crosstool-ng/</a><br>
 CROSSTOOL_NG_INSTALL_STAGING   = NO<br>
 CROSSTOOL_NG_INSTALL_TARGET    = NO<br>
 CROSSTOOL_NG_MAKE              = $(MAKE1)<br>
-HOST_CROSSTOOL_NG_DEPENDENCIES = host-gawk host-automake $(if $(BR2_CCACHE),host-ccache)<br>
+HOST_CROSSTOOL_NG_DEPENDENCIES = host-gawk host-automake $(if $(BR2_CCACHE),host-ccache)<br>
+<br>
+ifeq ($(BR2_TOOLCHAIN_CTNG_BUILDROOT_KERNEL), y)<br>
+HOST_CROSSTOOL_NG_DEPENDENCIES += linux-configure<br>
+endif<br>
<br>
 $(eval $(call AUTOTARGETS,package,crosstool-ng,host))<br>
diff --git a/toolchain/toolchain-crosstool-ng/Config.in b/toolchain/toolchain-crosstool-ng/Config.in<br>
index 2d1e801..5e3fb88 100644<br>
--- a/toolchain/toolchain-crosstool-ng/Config.in<br>
+++ b/toolchain/toolchain-crosstool-ng/Config.in<br>
@@ -46,6 +46,12 @@ config BR2_TOOLCHAIN_CTNG_CONFIG<br>
<br>
          If unsure, keep the default value.<br>
<br>
+config BR2_TOOLCHAIN_CTNG_BUILDROOT_KERNEL<br>
+       bool "Buildroot kernel version"<br>
+       depends on BR2_LINUX_KERNEL<br>
+       help<br>
+               Use buildroot kernel version in crosstool-Ng<br>
+<br>
 if BR2_TOOLCHAIN_CTNG_uClibc<br>
<br>
 comment "Toolchain Options"<br>
diff --git a/toolchain/toolchain-crosstool-ng/<a href="http://crosstool-ng.mk" target="_blank">crosstool-ng.mk</a> b/toolchain/toolchain-crosstool-ng/<a href="http://crosstool-ng.mk" target="_blank">crosstool-ng.mk</a><br>

index 3a205dd..f71c2ae 100644<br>
--- a/toolchain/toolchain-crosstool-ng/<a href="http://crosstool-ng.mk" target="_blank">crosstool-ng.mk</a><br>
+++ b/toolchain/toolchain-crosstool-ng/<a href="http://crosstool-ng.mk" target="_blank">crosstool-ng.mk</a><br>
@@ -218,6 +218,11 @@ else<br>
 CTNG_FIX_DOT_CONFIG_SED += s:^(CT_CC_LANG_CXX)=.*:\# \1 is not set:;<br>
 endif<br>
<br>
+ifeq ($(BR2_TOOLCHAIN_CTNG_BUILDROOT_KERNEL),y)<br>
+CTNG_FIX_DOT_CONFIG_SED += s:^\# (CT_KERNEL_LINUX_CUSTOM) is not set:\1=y:;<br>
+CTNG_FIX_DOT_CONFIG_SED += s:^(CT_KERNEL_LINUX_CUSTOM_TARBALL)=.*:\1="$(LINUX_DIR)":;<br>
+endif<br>
+<br>
 # Shoe-horn CPU variant now<br>
 ifneq ($(call qstrip,$(BR2_GCC_TARGET_ARCH)),)<br>
 CTNG_FIX_DOT_CONFIG_SED += s:^(CT_ARCH_ARCH)=.*:\1=$(BR2_GCC_TARGET_ARCH):;<br>
<font color="#888888">--<br>
1.7.0.4<br>
<br>
</font></blockquote></div><br>