[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Ltib] Re: Spec changes for later kernel header copies
From: |
Stuart Hughes |
Subject: |
[Ltib] Re: Spec changes for later kernel header copies |
Date: |
Tue, 10 Aug 2010 19:24:07 +0100 |
User-agent: |
Thunderbird 2.0.0.16 (X11/20080707) |
Hi Kevin,
Okay, for now I'll just check-in the changes to the DirectFB.spec.
If needed we can adjust the kernel headers later, but for now no change
is the best way IMHO.
Regards, Stuart
Kevin Wells wrote:
> Hi Stuart,
>
> I have some more info on this..
>
>>> In the mean time, do you know if the files that get build in
>>> linux-2.6.34/include/generated are normally installed to userspace? for
>>> example have you seen them in toolchains? Have you seen anyone comment
>>> otherwise about these.
>>>
> I don't think any of these are installed in userspace. For the toolchains I
> have (3), there is only 1 common file (autoconf.h) but the info in the file
> is different. The files deals with version numbers, mach IDs, etc.
>
>>> Also, do you know if any files in generated would clobber any existing
>>> files in the rootfs if they were copied into
>>> rootfs/usr/src/linux/include ?
> Every file was unique for the files I've tested. There are only 6 files in
> there now.
>
>>> It seems to me that this may be a better place rather than adding a new
>>> directory. However I say this in ignorance of know what (if any)
>>> custom
>>> is not currently in force. For example, what does "make
>>> headers_install" do for ARM these days?
> The 'generated' folder is not copied as part of 'headers_install'. Maybe
> these don't need to be copied at all? Here is the complete list..
> address@hidden linux-2.6.34]$ make ARCH=arm C=1
> CROSS_COMPILE=/opt/freescale/usr/local/gcc-4.1.2-glibc-2.5-nptl-3/arm-none-linux-gnueabi/bin/arm-none-linux-gnueabi-
> headers_install
> CHK include/linux/version.h
> HOSTCC scripts/unifdef
> INSTALL include/asm-generic (34 files)
> INSTALL include/drm (14 files)
> INSTALL include/linux/byteorder (2 files)
> INSTALL include/linux/can (4 files)
> INSTALL include/linux/dvb (8 files)
> INSTALL include/linux/hdlc (1 file)
> INSTALL include/linux/isdn (1 file)
> INSTALL include/linux/netfilter (64 files)
> INSTALL include/linux/netfilter_arp (2 files)
> INSTALL include/linux/netfilter_bridge (16 files)
> INSTALL include/linux/netfilter_ipv4 (14 files)
> INSTALL include/linux/netfilter_ipv6 (11 files)
> INSTALL include/linux/nfsd (6 files)
> INSTALL include/linux/raid (2 files)
> INSTALL include/linux/spi (1 file)
> INSTALL include/linux/sunrpc (1 file)
> INSTALL include/linux/tc_act (6 files)
> INSTALL include/linux/tc_ematch (4 files)
> INSTALL include/linux/usb (8 files)
> INSTALL include/linux/wimax (1 file)
> INSTALL include/linux (360 files)
> INSTALL include/mtd (5 files)
> INSTALL include/rdma (1 file)
> INSTALL include/scsi/fc (4 files)
> INSTALL include/scsi (3 files)
> INSTALL include/sound (8 files)
> INSTALL include/video (3 files)
> INSTALL include/xen (1 file)
> INSTALL include (0 file)
> INSTALL include/asm (32 files)
> address@hidden linux-2.6.34]$ ls include/generated/
> asm-offsets.h autoconf.h bounds.h compile.h mach-types.h utsrelease.h
> address@hidden linux-2.6.34]$
>
> thanks,
> Kevin
>
>> -----Original Message-----
>> From: address@hidden [mailto:ltib-
>> address@hidden On Behalf Of Kevin Wells
>> Sent: Thursday, August 05, 2010 11:09 AM
>> To: Stuart Hughes
>> Cc: address@hidden
>> Subject: [Ltib] RE: Spec changes for later kernel header copies
>>
>>
>> Hi Stuart,
>>
>> I like your suggestion better. I'll look into this a bit more from
>> your questions below..
>>
>> thanks,
>> Kevin
>>
>>
>>> Subject: Re: Spec changes for later kernel header copies
>>>
>>> Hi Kevin,
>>>
>>> Let me take a look and get back to you after I've done some building
>>> and
>>> looking. My first thought is that in DirectFB, we can just test for
>>> the
>>> kernel headers directory, as you didn't change the 'make' target and
>>> that still built (without needing to reference 'generated').
>>>
>>> In the mean time, do you know if the files that get build in
>>> linux-2.6.34/include/generated are normally installed to userspace? for
>>> example have you seen them in toolchains? Have you seen anyone comment
>>> otherwise about these.
>>>
>>> Also, do you know if any files in generated would clobber any existing
>>> files in the rootfs if they were copied into
>>> rootfs/usr/src/linux/include ?
>>>
>>> It seems to me that this may be a better place rather than adding a new
>>> directory. However I say this in ignorance of know what (if any)
>>> custom
>>> is not currently in force. For example, what does "make
>>> headers_install" do for ARM these days?
>>>
>>> Regards, Stuart
>>>
>>>
>>> Kevin Wells wrote:
>>>> Hi Staurt,
>>>>
>>>> The autoconf.h file is now located in the ./include/generated
>>> directory
>>>> instead of the ./include/linux directory in later kernel source. This
>>>> breaks the directfb spec which searches for it in ./include/linux.
>>>>
>>>> address@hidden BUILD]$ pwd
>>>> /home/usb10132/dev/ltib/rpm/BUILD
>>>>
>>>> address@hidden BUILD]$ find . -name autoconf.*
>>>> ./linux-2.6.34/include/generated/autoconf.h
>>>> ./linux-2.6.27.8/include/linux/autoconf.h
>>>> address@hidden BUILD]$
>>>>
>>>> This currently seems to only break the directfb build for LPC32xx and
>>>> LPC313x platforms using the later kernels (2.6.34 and 2.6.33(?)).
>>>>
>>>> I've attached a possible fix. This has been build tested with kernel
>>>> Versions 2.6.34 (LPC32xx), 2.6.27 (LPC32xx), and 2.6.15 (epx93xx).
>>>>
>>>> Is this something that can be placed into the respective specs?
>>>>
>>>> thanks,
>>>> Kevin
>>>>
>>>> Index: DirectFB/DirectFB.spec
>>>> ===================================================================
>>>> RCS file: /sources/ltib/ltib/dist/lfs-5.1/DirectFB/DirectFB.spec,v
>>>> retrieving revision 1.5
>>>> diff -U 4 -r1.5 DirectFB.spec
>>>> --- DirectFB/DirectFB.spec 5 Dec 2008 16:32:13 -0000 1.5
>>>> +++ DirectFB/DirectFB.spec 3 Aug 2010 17:25:33 -0000
>>>> @@ -27,17 +27,20 @@
>>>> %Build
>>>> KHDR_DIR=$DEV_IMAGE/usr/src/linux/include
>>>> if [ ! -f $KHDR_DIR/linux/autoconf.h ]
>>>> then
>>>> - cat <<TXT
>>>> + if [ ! -f $KHDR_DIR/generated/autoconf.h ]
>>>> + then
>>>> + cat <<TXT
>>>>
>>>> No file: $KHDR_DIR/linux/autoconf.h
>>>>
>>>> You need to build the kernel and have 'Include kernel headers' set
>>>> to build this package
>>>>
>>>> TXT
>>>> - exit 1
>>>> + exit 1
>>>> + fi
>>>> fi
>>>> export FREETYPE_CONFIG=${DEV_IMAGE}/usr/bin/freetype-config
>>>> export FREETYPE_CFLAGS="`${FREETYPE_CONFIG} --
>>> prefix=${DEV_IMAGE}/%{_prefix} --cflags`"
>>>> export FREETYPE_LIBS="`${FREETYPE_CONFIG} --
>>> prefix=${DEV_IMAGE}/%{_prefix} --libs`"
>>>> Index: kernel/kernel-common.tmpl
>>>> ===================================================================
>>>> RCS file: /sources/ltib/ltib/dist/lfs-5.1/kernel/kernel-common.tmpl,v
>>>> retrieving revision 1.9
>>>> diff -U 4 -r1.9 kernel-common.tmpl
>>>> --- kernel/kernel-common.tmpl 6 Jul 2009 07:52:02 -0000 1.9
>>>> +++ kernel/kernel-common.tmpl 3 Aug 2010 17:25:33 -0000
>>>> @@ -320,8 +320,14 @@
>>>> cp -a $KBOUT/include/asm/arch/*
>>> $RPM_BUILD_ROOT/%{pfx}/usr/src/linux/include/asm/arch
>>>> else
>>>> echo "Don't know how to copy asm headers for this
>>> kernel"
>>>> fi
>>>> +
>>>> + if [ -d "$KBOUT/include/generated" ]
>>>> + then
>>>> + mkdir -p
>>> $RPM_BUILD_ROOT/%{pfx}/usr/src/linux/include/generated
>>>> + cp -a $KBOUT/include/generated/*
>>> $RPM_BUILD_ROOT/%{pfx}/usr/src/linux/include/generated
>>>> + fi
>>>> fi
>>>> fi
>>>>
>> _______________________________________________
>> LTIB home page: http://ltib.org
>>
>> Ltib mailing list
>> address@hidden
>> http://lists.nongnu.org/mailman/listinfo/ltib
>