diff mbox series

[meta-arago,master/kirkstone] linux-libc-headers: Remove custom Linux libc headers

Message ID 20230410204859.30707-1-afd@ti.com
State Accepted
Delegated to: Ryan Eatmon
Headers show
Series [meta-arago,master/kirkstone] linux-libc-headers: Remove custom Linux libc headers | expand

Commit Message

Andrew Davis April 10, 2023, 8:48 p.m. UTC
We do not need nor want a custom libc as the base for our packages.
Using our own Linux UAPI includes creates this situation and will
cause issues for packages that make use of the custom kernel headers
when moving from kernel to kernel.

If we do have some package that does need some custom header then
it should be listed in the package itself so this dependency can
be tracked correct. This is all described in the base recipe here[0].

As recommended, let's not create a custom linux-libc-headers. Remove
this recipe and references to specific versions.

[0] https://cgit.openembedded.org/openembedded-core/tree/meta/recipes-kernel/linux-libc-headers/linux-libc-headers.inc#n7

Signed-off-by: Andrew Davis <afd@ti.com>
---
 .../conf/distro/include/toolchain-gcc.inc     |  4 ----
 .../linux-libc-headers_5.10.bb                | 20 -------------------
 2 files changed, 24 deletions(-)
 delete mode 100644 meta-arago-distro/recipes-kernel/linux-libc-headers/linux-libc-headers_5.10.bb

Comments

Denys Dmytriyenko April 11, 2023, 7:34 p.m. UTC | #1
On Mon, Apr 10, 2023 at 03:48:59PM -0500, Andrew Davis via lists.yoctoproject.org wrote:
> We do not need nor want a custom libc as the base for our packages.
> Using our own Linux UAPI includes creates this situation and will
> cause issues for packages that make use of the custom kernel headers
> when moving from kernel to kernel.
> 
> If we do have some package that does need some custom header then
> it should be listed in the package itself so this dependency can
> be tracked correct. This is all described in the base recipe here[0].
> 
> As recommended, let's not create a custom linux-libc-headers. Remove
> this recipe and references to specific versions.
> 
> [0] https://cgit.openembedded.org/openembedded-core/tree/meta/recipes-kernel/linux-libc-headers/linux-libc-headers.inc#n7

Yes, the above recommendation from OE-Core was always there and has been 
enforced for a long time, until there were packages added to Arago and 
TI-SDK requiring TI custom Linux UAPI headers that weren't upstreamed...

Not sure what's the latest list of such packages in Arago, but I see at 
least "switch-config" is still there. I'd recommend disabling those custom 
packages from the build first, before removing linux-libc-headers - you'll 
get broken builds for either 5.10 or 6.1, which isn't very nice.

But yes, this is the right move going forward - I was hesitant adding this 
hack back in the day and always wanted to remove it, as it would cause 
extra pain during every LTS migration...


> Signed-off-by: Andrew Davis <afd@ti.com>

Acked-by: Denys Dmytriyenko <denys@konsulko.com>


> ---
>  .../conf/distro/include/toolchain-gcc.inc     |  4 ----
>  .../linux-libc-headers_5.10.bb                | 20 -------------------
>  2 files changed, 24 deletions(-)
>  delete mode 100644 meta-arago-distro/recipes-kernel/linux-libc-headers/linux-libc-headers_5.10.bb
> 
> diff --git a/meta-arago-distro/conf/distro/include/toolchain-gcc.inc b/meta-arago-distro/conf/distro/include/toolchain-gcc.inc
> index 5570594d..1c059a6f 100644
> --- a/meta-arago-distro/conf/distro/include/toolchain-gcc.inc
> +++ b/meta-arago-distro/conf/distro/include/toolchain-gcc.inc
> @@ -16,7 +16,6 @@ PREFERRED_PROVIDER_gdb-cross-canadian-${TRANSLATED_TARGET_ARCH} = "gdb-cross-can
>  SDKGCCVERSION ?= "11%"
>  SDKBINUVERSION ?= "2.38%"
>  SDKGLIBCVERSION ?= "2.35%"
> -SDKLINUXLIBCVERSION ?= "5.10%"
>  
>  PREFERRED_VERSION_gcc-crosssdk-${SDK_SYS} ?= "${SDKGCCVERSION}"
>  PREFERRED_VERSION_gcc-crosssdk-initial-${SDK_SYS} ?= "${SDKGCCVERSION}"
> @@ -25,7 +24,6 @@ PREFERRED_VERSION_binutils-crosssdk-${SDK_SYS} ?= "${SDKBINUVERSION}"
>  PREFERRED_VERSION_nativesdk-gcc-runtime ?= "${SDKGCCVERSION}"
>  PREFERRED_VERSION_nativesdk-libgcc ?= "${SDKGCCVERSION}"
>  PREFERRED_VERSION_nativesdk-libgcc-initial ?= "${SDKGCCVERSION}"
> -PREFERRED_VERSION_nativesdk-linux-libc-headers ?= "${SDKLINUXLIBCVERSION}"
>  PREFERRED_VERSION_nativesdk-glibc ?= "${SDKGLIBCVERSION}"
>  PREFERRED_VERSION_nativesdk-glibc-locale ?= "${SDKGLIBCVERSION}"
>  PREFERRED_VERSION_nativesdk-glibc-initial ?= "${SDKGLIBCVERSION}"
> @@ -35,11 +33,9 @@ PREFERRED_VERSION_nativesdk-glibc-initial ?= "${SDKGLIBCVERSION}"
>  GCCVERSION ?= "11%"
>  BINUVERSION ?= "2.38%"
>  GLIBCVERSION ?= "2.35%"
> -LINUXLIBCVERSION ?= "5.10%"
>  
>  PREFERRED_VERSION_gcc ?= "${GCCVERSION}"
>  PREFERRED_VERSION_binutils ?= "${BINUVERSION}"
> -PREFERRED_VERSION_linux-libc-headers ?= "${LINUXLIBCVERSION}"
>  PREFERRED_VERSION_glibc ?= "${GLIBCVERSION}"
>  PREFERRED_VERSION_glibc-locale ?= "${GLIBCVERSION}"
>  PREFERRED_VERSION_glibc-initial ?= "${GLIBCVERSION}"
> diff --git a/meta-arago-distro/recipes-kernel/linux-libc-headers/linux-libc-headers_5.10.bb b/meta-arago-distro/recipes-kernel/linux-libc-headers/linux-libc-headers_5.10.bb
> deleted file mode 100644
> index 43493570..00000000
> --- a/meta-arago-distro/recipes-kernel/linux-libc-headers/linux-libc-headers_5.10.bb
> +++ /dev/null
> @@ -1,20 +0,0 @@
> -require recipes-kernel/linux-libc-headers/linux-libc-headers.inc
> -
> -PR:append = ".arago0"
> -
> -LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
> -
> -BRANCH = "ti-linux-5.10.y"
> -SRCREV = "73aa709ca10103b61fba3a07471dbb4dcb56db45"
> -
> -KERNEL_GIT_URI = "git://git.ti.com/git/ti-linux-kernel/ti-linux-kernel.git"
> -KERNEL_GIT_PROTOCOL = "https"
> -SRC_URI = "${KERNEL_GIT_URI};protocol=${KERNEL_GIT_PROTOCOL};branch=${BRANCH}"
> -
> -S = "${WORKDIR}/git"
> -
> -# below overrides the multilib list - can be dropped for the next LTS
> -do_install_armmultilib () {
> -	oe_multilib_header asm/auxvec.h asm/bitsperlong.h asm/byteorder.h asm/fcntl.h asm/hwcap.h asm/ioctls.h asm/kvm_para.h asm/mman.h asm/param.h asm/perf_regs.h asm/bpf_perf_event.h
> -	oe_multilib_header asm/posix_types.h asm/ptrace.h  asm/setup.h  asm/sigcontext.h asm/siginfo.h asm/signal.h asm/stat.h  asm/statfs.h asm/swab.h  asm/types.h asm/unistd.h
> -}
> -- 
> 2.39.2
Andrew Davis April 11, 2023, 9:09 p.m. UTC | #2
On 4/11/23 2:34 PM, Denys Dmytriyenko wrote:
> On Mon, Apr 10, 2023 at 03:48:59PM -0500, Andrew Davis via lists.yoctoproject.org wrote:
>> We do not need nor want a custom libc as the base for our packages.
>> Using our own Linux UAPI includes creates this situation and will
>> cause issues for packages that make use of the custom kernel headers
>> when moving from kernel to kernel.
>>
>> If we do have some package that does need some custom header then
>> it should be listed in the package itself so this dependency can
>> be tracked correct. This is all described in the base recipe here[0].
>>
>> As recommended, let's not create a custom linux-libc-headers. Remove
>> this recipe and references to specific versions.
>>
>> [0] https://cgit.openembedded.org/openembedded-core/tree/meta/recipes-kernel/linux-libc-headers/linux-libc-headers.inc#n7
> 
> Yes, the above recommendation from OE-Core was always there and has been
> enforced for a long time, until there were packages added to Arago and
> TI-SDK requiring TI custom Linux UAPI headers that weren't upstreamed...
> 
> Not sure what's the latest list of such packages in Arago, but I see at
> least "switch-config" is still there. I'd recommend disabling those custom
> packages from the build first, before removing linux-libc-headers - you'll
> get broken builds for either 5.10 or 6.1, which isn't very nice.
> 

big-data-ipc-demo needed a custom UAPI and so I fixed it by depending
on the kernel and using STAGING_KERNEL_DIR directly[0], it is not pretty
but I think it is the closest to "correct" we can get.

If more show up I'll just fix them the same way, I'll go take a look at
switch-config next then.

Andrew

[0] https://lists.yoctoproject.org/g/meta-arago/topic/meta_ti_master_kirkstone_patch/98182004

> But yes, this is the right move going forward - I was hesitant adding this
> hack back in the day and always wanted to remove it, as it would cause
> extra pain during every LTS migration...
> 
> 
>> Signed-off-by: Andrew Davis <afd@ti.com>
> 
> Acked-by: Denys Dmytriyenko <denys@konsulko.com>
> 
> 
>> ---
>>   .../conf/distro/include/toolchain-gcc.inc     |  4 ----
>>   .../linux-libc-headers_5.10.bb                | 20 -------------------
>>   2 files changed, 24 deletions(-)
>>   delete mode 100644 meta-arago-distro/recipes-kernel/linux-libc-headers/linux-libc-headers_5.10.bb
>>
>> diff --git a/meta-arago-distro/conf/distro/include/toolchain-gcc.inc b/meta-arago-distro/conf/distro/include/toolchain-gcc.inc
>> index 5570594d..1c059a6f 100644
>> --- a/meta-arago-distro/conf/distro/include/toolchain-gcc.inc
>> +++ b/meta-arago-distro/conf/distro/include/toolchain-gcc.inc
>> @@ -16,7 +16,6 @@ PREFERRED_PROVIDER_gdb-cross-canadian-${TRANSLATED_TARGET_ARCH} = "gdb-cross-can
>>   SDKGCCVERSION ?= "11%"
>>   SDKBINUVERSION ?= "2.38%"
>>   SDKGLIBCVERSION ?= "2.35%"
>> -SDKLINUXLIBCVERSION ?= "5.10%"
>>   
>>   PREFERRED_VERSION_gcc-crosssdk-${SDK_SYS} ?= "${SDKGCCVERSION}"
>>   PREFERRED_VERSION_gcc-crosssdk-initial-${SDK_SYS} ?= "${SDKGCCVERSION}"
>> @@ -25,7 +24,6 @@ PREFERRED_VERSION_binutils-crosssdk-${SDK_SYS} ?= "${SDKBINUVERSION}"
>>   PREFERRED_VERSION_nativesdk-gcc-runtime ?= "${SDKGCCVERSION}"
>>   PREFERRED_VERSION_nativesdk-libgcc ?= "${SDKGCCVERSION}"
>>   PREFERRED_VERSION_nativesdk-libgcc-initial ?= "${SDKGCCVERSION}"
>> -PREFERRED_VERSION_nativesdk-linux-libc-headers ?= "${SDKLINUXLIBCVERSION}"
>>   PREFERRED_VERSION_nativesdk-glibc ?= "${SDKGLIBCVERSION}"
>>   PREFERRED_VERSION_nativesdk-glibc-locale ?= "${SDKGLIBCVERSION}"
>>   PREFERRED_VERSION_nativesdk-glibc-initial ?= "${SDKGLIBCVERSION}"
>> @@ -35,11 +33,9 @@ PREFERRED_VERSION_nativesdk-glibc-initial ?= "${SDKGLIBCVERSION}"
>>   GCCVERSION ?= "11%"
>>   BINUVERSION ?= "2.38%"
>>   GLIBCVERSION ?= "2.35%"
>> -LINUXLIBCVERSION ?= "5.10%"
>>   
>>   PREFERRED_VERSION_gcc ?= "${GCCVERSION}"
>>   PREFERRED_VERSION_binutils ?= "${BINUVERSION}"
>> -PREFERRED_VERSION_linux-libc-headers ?= "${LINUXLIBCVERSION}"
>>   PREFERRED_VERSION_glibc ?= "${GLIBCVERSION}"
>>   PREFERRED_VERSION_glibc-locale ?= "${GLIBCVERSION}"
>>   PREFERRED_VERSION_glibc-initial ?= "${GLIBCVERSION}"
>> diff --git a/meta-arago-distro/recipes-kernel/linux-libc-headers/linux-libc-headers_5.10.bb b/meta-arago-distro/recipes-kernel/linux-libc-headers/linux-libc-headers_5.10.bb
>> deleted file mode 100644
>> index 43493570..00000000
>> --- a/meta-arago-distro/recipes-kernel/linux-libc-headers/linux-libc-headers_5.10.bb
>> +++ /dev/null
>> @@ -1,20 +0,0 @@
>> -require recipes-kernel/linux-libc-headers/linux-libc-headers.inc
>> -
>> -PR:append = ".arago0"
>> -
>> -LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
>> -
>> -BRANCH = "ti-linux-5.10.y"
>> -SRCREV = "73aa709ca10103b61fba3a07471dbb4dcb56db45"
>> -
>> -KERNEL_GIT_URI = "git://git.ti.com/git/ti-linux-kernel/ti-linux-kernel.git"
>> -KERNEL_GIT_PROTOCOL = "https"
>> -SRC_URI = "${KERNEL_GIT_URI};protocol=${KERNEL_GIT_PROTOCOL};branch=${BRANCH}"
>> -
>> -S = "${WORKDIR}/git"
>> -
>> -# below overrides the multilib list - can be dropped for the next LTS
>> -do_install_armmultilib () {
>> -	oe_multilib_header asm/auxvec.h asm/bitsperlong.h asm/byteorder.h asm/fcntl.h asm/hwcap.h asm/ioctls.h asm/kvm_para.h asm/mman.h asm/param.h asm/perf_regs.h asm/bpf_perf_event.h
>> -	oe_multilib_header asm/posix_types.h asm/ptrace.h  asm/setup.h  asm/sigcontext.h asm/siginfo.h asm/signal.h asm/stat.h  asm/statfs.h asm/swab.h  asm/types.h asm/unistd.h
>> -}
>> -- 
>> 2.39.2
> 
> 
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#14307): https://lists.yoctoproject.org/g/meta-arago/message/14307
> Mute This Topic: https://lists.yoctoproject.org/mt/98184756/3619733
> Group Owner: meta-arago+owner@lists.yoctoproject.org
> Unsubscribe: https://lists.yoctoproject.org/g/meta-arago/leave/11197283/3619733/932283705/xyzzy [afd@ti.com]
> -=-=-=-=-=-=-=-=-=-=-=-
> 
>
diff mbox series

Patch

diff --git a/meta-arago-distro/conf/distro/include/toolchain-gcc.inc b/meta-arago-distro/conf/distro/include/toolchain-gcc.inc
index 5570594d..1c059a6f 100644
--- a/meta-arago-distro/conf/distro/include/toolchain-gcc.inc
+++ b/meta-arago-distro/conf/distro/include/toolchain-gcc.inc
@@ -16,7 +16,6 @@  PREFERRED_PROVIDER_gdb-cross-canadian-${TRANSLATED_TARGET_ARCH} = "gdb-cross-can
 SDKGCCVERSION ?= "11%"
 SDKBINUVERSION ?= "2.38%"
 SDKGLIBCVERSION ?= "2.35%"
-SDKLINUXLIBCVERSION ?= "5.10%"
 
 PREFERRED_VERSION_gcc-crosssdk-${SDK_SYS} ?= "${SDKGCCVERSION}"
 PREFERRED_VERSION_gcc-crosssdk-initial-${SDK_SYS} ?= "${SDKGCCVERSION}"
@@ -25,7 +24,6 @@  PREFERRED_VERSION_binutils-crosssdk-${SDK_SYS} ?= "${SDKBINUVERSION}"
 PREFERRED_VERSION_nativesdk-gcc-runtime ?= "${SDKGCCVERSION}"
 PREFERRED_VERSION_nativesdk-libgcc ?= "${SDKGCCVERSION}"
 PREFERRED_VERSION_nativesdk-libgcc-initial ?= "${SDKGCCVERSION}"
-PREFERRED_VERSION_nativesdk-linux-libc-headers ?= "${SDKLINUXLIBCVERSION}"
 PREFERRED_VERSION_nativesdk-glibc ?= "${SDKGLIBCVERSION}"
 PREFERRED_VERSION_nativesdk-glibc-locale ?= "${SDKGLIBCVERSION}"
 PREFERRED_VERSION_nativesdk-glibc-initial ?= "${SDKGLIBCVERSION}"
@@ -35,11 +33,9 @@  PREFERRED_VERSION_nativesdk-glibc-initial ?= "${SDKGLIBCVERSION}"
 GCCVERSION ?= "11%"
 BINUVERSION ?= "2.38%"
 GLIBCVERSION ?= "2.35%"
-LINUXLIBCVERSION ?= "5.10%"
 
 PREFERRED_VERSION_gcc ?= "${GCCVERSION}"
 PREFERRED_VERSION_binutils ?= "${BINUVERSION}"
-PREFERRED_VERSION_linux-libc-headers ?= "${LINUXLIBCVERSION}"
 PREFERRED_VERSION_glibc ?= "${GLIBCVERSION}"
 PREFERRED_VERSION_glibc-locale ?= "${GLIBCVERSION}"
 PREFERRED_VERSION_glibc-initial ?= "${GLIBCVERSION}"
diff --git a/meta-arago-distro/recipes-kernel/linux-libc-headers/linux-libc-headers_5.10.bb b/meta-arago-distro/recipes-kernel/linux-libc-headers/linux-libc-headers_5.10.bb
deleted file mode 100644
index 43493570..00000000
--- a/meta-arago-distro/recipes-kernel/linux-libc-headers/linux-libc-headers_5.10.bb
+++ /dev/null
@@ -1,20 +0,0 @@ 
-require recipes-kernel/linux-libc-headers/linux-libc-headers.inc
-
-PR:append = ".arago0"
-
-LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
-
-BRANCH = "ti-linux-5.10.y"
-SRCREV = "73aa709ca10103b61fba3a07471dbb4dcb56db45"
-
-KERNEL_GIT_URI = "git://git.ti.com/git/ti-linux-kernel/ti-linux-kernel.git"
-KERNEL_GIT_PROTOCOL = "https"
-SRC_URI = "${KERNEL_GIT_URI};protocol=${KERNEL_GIT_PROTOCOL};branch=${BRANCH}"
-
-S = "${WORKDIR}/git"
-
-# below overrides the multilib list - can be dropped for the next LTS
-do_install_armmultilib () {
-	oe_multilib_header asm/auxvec.h asm/bitsperlong.h asm/byteorder.h asm/fcntl.h asm/hwcap.h asm/ioctls.h asm/kvm_para.h asm/mman.h asm/param.h asm/perf_regs.h asm/bpf_perf_event.h
-	oe_multilib_header asm/posix_types.h asm/ptrace.h  asm/setup.h  asm/sigcontext.h asm/siginfo.h asm/signal.h asm/stat.h  asm/statfs.h asm/swab.h  asm/types.h asm/unistd.h
-}