[Buildroot] Building 2.6.19 with Soekris 4801 target

Eric Malkowski eric at bvwireless.net
Tue Dec 5 19:51:53 PST 2006


This is what I came up with.  The check for uclibc version 0.9.28 AND
kernel >= 2.6.18 I came up with is pretty ugly.  I'm also not certain it
would work right for kernels w/ 4 version numbers like 2.6.15.3 and such.

[malk at testbed buildroot]$ svn diff toolchain/uClibc/uclibc.mk
toolchain/kernel-headers/kernel-headers.mk
Index: toolchain/uClibc/uclibc.mk
===================================================================
--- toolchain/uClibc/uclibc.mk  (revision 16786)
+++ toolchain/uClibc/uclibc.mk  (working copy)
@@ -53,6 +53,8 @@
 UCLIBC_NOT_TARGET_ENDIAN:=LITTLE
 endif

+UCLIBC_KERNEL_HEADERS_VERSION:=$(strip $(subst ",,
$(BR2_DEFAULT_KERNEL_HEADERS)))
+
 $(DL_DIR)/$(UCLIBC_SOURCE):
        mkdir -p $(DL_DIR)
        $(WGET) -P $(DL_DIR) $(UCLIBC_SITE)/$(UCLIBC_SOURCE)
@@ -133,6 +135,13 @@
                HOSTCC="$(HOSTCC)" \
                pregen install_dev && \
        touch $(UCLIBC_DIR)/.configured
+ifeq ("$(strip $(UCLIBC_VER))","0.9.28")
+ifeq ("$(findstring 2.6.,$(UCLIBC_KERNEL_HEADERS_VERSION))","2.6.")
+ifneq ("$(strip $(filter-out 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
17,$(subst 2.6.,,$(UCLIBC_KERNEL_HEADERS_VERSION))))","")
+       rm -f $(LINUX_HEADERS_DIR)/Makefile
+endif
+endif
+endif

 $(UCLIBC_DIR)/lib/libc.a: $(UCLIBC_DIR)/.configured $(LIBFLOAT_TARGET)
        $(MAKE1) -C $(UCLIBC_DIR) \
Index: toolchain/kernel-headers/kernel-headers.mk
===================================================================
--- toolchain/kernel-headers/kernel-headers.mk  (revision 16786)
+++ toolchain/kernel-headers/kernel-headers.mk  (working copy)
@@ -150,6 +150,7 @@
 $(LINUX_HEADERS_DIR)/.configured: $(LINUX_HEADERS_UNPACK_DIR)/.patched
        (cd $(LINUX_HEADERS_UNPACK_DIR) ; \
         $(MAKE) ARCH=$(KERNEL_ARCH) INSTALL_HDR_PATH=$(LINUX_HEADERS_DIR)
headers_install)
+       cp $(LINUX_HEADERS_UNPACK_DIR)/Makefile $(LINUX_HEADERS_DIR)
        touch $(LINUX_HEADERS_DIR)/.configured
 else
 # the sanitized kernel-headers


> On Tue, Dec 05, 2006 at 08:50:36AM +0100, Bernhard Fischer wrote:
>>On Mon, Dec 04, 2006 at 09:37:41PM -0500, Eric Malkowski wrote:
>>
>>>So I made the following mod to
>>> toolchain/kernel-headers/kernel-headers.mk
>>>to copy over the 2.6.19 top level Makefile to the linux headers dir and
>>>voila:
>>>
>>>[malk at testbed buildroot]$ svn diff
>>> toolchain/kernel-headers/kernel-headers.mk
>>>Index: toolchain/kernel-headers/kernel-headers.mk
>>>===================================================================
>>>--- toolchain/kernel-headers/kernel-headers.mk  (revision 16776)
>>>+++ toolchain/kernel-headers/kernel-headers.mk  (working copy)
>>>@@ -150,6 +150,7 @@
>>> $(LINUX_HEADERS_DIR)/.configured: $(LINUX_HEADERS_UNPACK_DIR)/.patched
>>>        (cd $(LINUX_HEADERS_UNPACK_DIR) ; \
>>>         $(MAKE) ARCH=$(KERNEL_ARCH)
>>> INSTALL_HDR_PATH=$(LINUX_HEADERS_DIR)
>>>headers_install)
>>>+       cp $(LINUX_HEADERS_UNPACK_DIR)/Makefile $(LINUX_HEADERS_DIR)
>>>        touch $(LINUX_HEADERS_DIR)/.configured
>>> else
>>> # the sanitized kernel-headers
>>>
>>
>>Could you look if calling make prepare (or something like make
>
> Ah, no. The old uClibc release had version checks that are removed for
> good from uClibc trunk.
>
> To please uClibc-0.9.28, we can copy the Makefile, but i ask you to
> update the patch to delete that Makefile if the kernel version is >=
> 2.6.18 and uClibc-0.9.28 is used, right after the configure-step from
> uClibc.
>
> thanks,
>




More information about the buildroot mailing list