On 04/09/2016 02:52 PM, Gordan Bobic wrote:
> On 09/04/16 13:25, Jacco Ligthart wrote:
>> On 04/09/2016 01:54 PM, Bjarne Saltbæk wrote:
>>> Hi Jacco.
>>>
>>>
>>> >Question: do we need to 'build' these both on RSEL6 and RSEL7 or is
>>> just once enough? I know it works installing one build on 6 on 7 (and
>>> vice versa). >of course for the main kernel, it doesn't matter. that
>>> is just the upstream compiled thing. it could only matter for the
>>> kernel-devel package.
>>>
>>> I am not a developer - but my gut feeling says yes since the kernel is
>>> a static binary build from libraries in the OS.
>>
>> uhm, no. This kernel is the binary build that's on their git. the only
>> thing the rpm does is package whatever they build.
>> (https://github.com/raspberrypi/firmware/)
>
> Are you saying the kernel isn't built from source, but is just
> repackaging the binaries provided? Is there no way to build it from
> source and only using the binary-only blobs as necessary?

yes, that's what it is. We could probably also build from source. At the
time I made this, I was mostly annoyed by unpackaged (and hence
difficult to update) stuff in the rpi image.
>
>> what the upstream kernel misses is the "devel" part. Based on the
>> upstream binary build we could not compile our own extra modules.
>> the only build steps are these:
>> make mrproper
>> cp arch/arm/configs/bcmrpi_defconfig .config
>> make olddefconfig
>> make modules_prepare
>>
>> actually, most of this should be source code. maybe 'file' can help
>> me here.
>
> Would it be worth looking at what the spec file does? That produces
> the devel package, and if the sources are there, the headers should be
> packageable.

the make commands above are directly from the spec ...
I find the term 'headers' confusing here. We use the 'kernel-headers'
package from the upstream provider. And next to that board specific
'kernel' and 'kernel-devel' packages.


>
>> This is the result of a sort/unique/count of 'file' over all files under
>> /usr/src/kernel:
>>
>>        1 ASCII C program text, with very long lines
>>        1 a /usr/bin/env python script text executable
>>        1 awk script text executable
>>        1 core file (Xenix)
>>        1 exported SGML document text
>>        1 FORTRAN program
>>        1 lex description text
>>        1 XML  document text
>>        2 ASCII assembler program text
>>        2 a /usr/bin/env perl script text executable
>>        3 ASCII text, with very long lines
>>        4 UTF-8 Unicode English text
>>        6 a /usr/bin/python script text executable
>>        7 a /usr/bin/perl script text executable
>>        7 Bourne-Again shell script text executable
>>        7 Python script text executable
>>       11 a /usr/bin/perl -w script text executable
>>       12 ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically
>> linked (uses shared libs), for GNU/Linux 2.6.32, stripped
>>       22 UTF-8 Unicode Pascal program text
>>       33 POSIX shell script text executable
>>       41 OS/2 REXX batch file text
>>       48 ASCII C++ program text
>>       51 ASCII make commands text
>>       67 ASCII Pascal program text
>>       81 UTF-8 Unicode C program text
>>     1493 ASCII text
>>     1829 ASCII English text
>>     2350 empty
>>     4164 ASCII C program text
>>
>> everything, but 12 items is just text. those 12 items are:
>> ./scripts/conmakehash:                                      ELF 32-bit
>> LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared
>> libs), for GNU/Linux 2.6.32, stripped
>> ./scripts/basic/bin2c: ELF 32-bit LSB executable, ARM, version 1 (SYSV),
>> dynamically linked (uses shared libs), for GNU/Linux 2.6.32, stripped
>> ./scripts/basic/fixdep: ELF 32-bit LSB executable, ARM, version 1
>> (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32,
>> stripped
>> ./scripts/recordmcount: ELF 32-bit LSB executable, ARM, version 1
>> (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32,
>> stripped
>> ./scripts/kconfig/conf: ELF 32-bit LSB executable, ARM, version 1
>> (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32,
>> stripped
>> ./scripts/pnmtologo: ELF 32-bit LSB executable, ARM, version 1 (SYSV),
>> dynamically linked (uses shared libs), for GNU/Linux 2.6.32, stripped
>> ./scripts/kallsyms: ELF 32-bit LSB executable, ARM, version 1 (SYSV),
>> dynamically linked (uses shared libs), for GNU/Linux 2.6.32, stripped
>> ./scripts/genksyms/genksyms: ELF 32-bit LSB executable, ARM, version 1
>> (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32,
>> stripped
>> ./scripts/dtc/dtc: ELF 32-bit LSB executable, ARM, version 1 (SYSV),
>> dynamically linked (uses shared libs), for GNU/Linux 2.6.32, stripped
>> ./scripts/sortextable: ELF 32-bit LSB executable, ARM, version 1 (SYSV),
>> dynamically linked (uses shared libs), for GNU/Linux 2.6.32, stripped
>> ./scripts/mod/modpost: ELF 32-bit LSB executable, ARM, version 1 (SYSV),
>> dynamically linked (uses shared libs), for GNU/Linux 2.6.32, stripped
>> ./scripts/mod/mk_elfconfig: ELF 32-bit LSB executable, ARM, version 1
>> (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32,
>> stripped
>>
>> I think, based on this, that just once should suffice.
>> Am I missing something here?
>
> From what I gather, the only thing missing is a suitable .spec file.
>
> Gordan
>
> _______________________________________________
> users mailing list
> [email protected]
> https://lists.redsleeve.org/mailman/listinfo/users

_______________________________________________
users mailing list
[email protected]
https://lists.redsleeve.org/mailman/listinfo/users

Reply via email to