Re: [OE-core] [PATCH 02/21] tcmode-default.inc: do not set PREFERRED_VERSION for toolchain items

2021-07-20 Thread Denys Dmytriyenko
On Wed, Jul 14, 2021 at 03:40:03PM +0200, Alexander Kanavin wrote:
> On Wed, 14 Jul 2021 at 14:55, Richard Purdie <
> richard.pur...@linuxfoundation.org> wrote:
> 
> > At the very least the GCC variable is well used in other layers as it is
> > hard to
> > remember all the different bits of gcc that are listed here so I think
> > that
> > should stay. Some of these can probably be removed but I'm not sure how far
> > we could/should go. glibc's list of recipes isn't trivial either...
> >
> 
> I used layerindex to check. Alternative gcc versions are provided by
> multiple layers (mostly arm-related), but an alternative older glibc is
> only in meta-debian and that is using neither PREFERRED_VERSION directly
> nor the *LIBCVERSION convenience (so not sure how it's meant to be used). I
> will send a v2 with gcc added back.

Reusing those variables is common in layers dealing with multiple toolchains, 
such as external binary toolchains and such. Might be good to keep them in 
OE-Core for consistency:

GCCVERSION ?= "9.%"
SDKGCCVERSION ?= "${GCCVERSION}"
BINUVERSION ?= "2.34%"
GDBVERSION ?= "9.%"
GLIBCVERSION ?= "2.31%"
LINUXLIBCVERSION ?= "5.4%"


> Anyone else should probably just copy the PREFERRED_VERSION lines for what
> they want to adjust into the layers directly. But let's see what Khem says
> - I do think getting help from AUH/devtool in doing the updates fully, or
> at least using 'devtool upgrade' locally to prepare the git trees for
> manual patch rebasing is valuable.
> 
> Alex

-- 
Regards,
Denys Dmytriyenko 
PGP: 0x420902729A92C964 - https://denix.org/0x420902729A92C964
Fingerprint: 25FC E4A5 8A72 2F69 1186  6D76 4209 0272 9A92 C964

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#154008): 
https://lists.openembedded.org/g/openembedded-core/message/154008
Mute This Topic: https://lists.openembedded.org/mt/84200116/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [PATCH 02/21] tcmode-default.inc: do not set PREFERRED_VERSION for toolchain items

2021-07-14 Thread Khem Raj



On 7/14/21 7:04 AM, Alexander Kanavin wrote:
On Wed, 14 Jul 2021 at 16:02, Bruce Ashfield > wrote:



I'd prefer that libcheaders stays explicitly set.

Bumping libc-headers is something we do carefully, and should not be a
common devtool
operation, and is not something that we want automated at all. Having
that extra variable
to set is a good thing for the headers, it helps reenforce that you
really should know what
you are doing.


Right, I'll respin the patch once more.


if this is not fixing anything besides cleanup then, its not worth doing 
it, there are layers which may not be public which use these variables 
to choose toolchain from external layers which may not be in layer index




Alex





-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#153855): 
https://lists.openembedded.org/g/openembedded-core/message/153855
Mute This Topic: https://lists.openembedded.org/mt/84200116/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [PATCH 02/21] tcmode-default.inc: do not set PREFERRED_VERSION for toolchain items

2021-07-14 Thread Alexander Kanavin
On Wed, 14 Jul 2021 at 16:02, Bruce Ashfield 
wrote:

>
> I'd prefer that libcheaders stays explicitly set.
>
> Bumping libc-headers is something we do carefully, and should not be a
> common devtool
> operation, and is not something that we want automated at all. Having
> that extra variable
> to set is a good thing for the headers, it helps reenforce that you
> really should know what
> you are doing.
>

Right, I'll respin the patch once more.

Alex

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#153851): 
https://lists.openembedded.org/g/openembedded-core/message/153851
Mute This Topic: https://lists.openembedded.org/mt/84200116/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [PATCH 02/21] tcmode-default.inc: do not set PREFERRED_VERSION for toolchain items

2021-07-14 Thread Bruce Ashfield
On Wed, Jul 14, 2021 at 8:26 AM Alexander Kanavin
 wrote:
>
> oe-core has not been providing multiple versions for any of these items
> for a long time, it's not likely to change anytime soon, and it makes
> automated (or semi-automated) versions updates with devtool impossible,
> as PREFERRED_VERSION masks the updated recipe in devtool workspace.
>
> Specifically, this was prompted by investigating why automated llvm update
> doesn't work; it does now.
>
> Signed-off-by: Alexander Kanavin 
> ---
>  meta/conf/distro/include/tcmode-default.inc | 57 -
>  1 file changed, 57 deletions(-)
>
> diff --git a/meta/conf/distro/include/tcmode-default.inc 
> b/meta/conf/distro/include/tcmode-default.inc
> index 68e5d848ba..0571304fdc 100644
> --- a/meta/conf/distro/include/tcmode-default.inc
> +++ b/meta/conf/distro/include/tcmode-default.inc
> @@ -16,68 +16,11 @@ PREFERRED_PROVIDER_virtual/${SDK_PREFIX}compilerlibs = 
> "nativesdk-gcc-runtime"
>  # Default libc config
>  PREFERRED_PROVIDER_virtual/gettext ??= "gettext"
>
> -GCCVERSION ?= "11.%"
> -SDKGCCVERSION ?= "${GCCVERSION}"
> -BINUVERSION ?= "2.36%"
> -GDBVERSION ?= "10.%"
> -GLIBCVERSION ?= "2.33"
> -LINUXLIBCVERSION ?= "5.13%"

I'd prefer that libcheaders stays explicitly set.

Bumping libc-headers is something we do carefully, and should not be a
common devtool
operation, and is not something that we want automated at all. Having
that extra variable
to set is a good thing for the headers, it helps reenforce that you
really should know what
you are doing.

Bruce


> -QEMUVERSION ?= "6.0%"
> -GOVERSION ?= "1.16%"
>  # This can not use wildcards like 8.0.% since it is also used in mesa to 
> denote
>  # llvm version being used, so always bump it with llvm recipe version bump
>  LLVMVERSION ?= "12.0.0"
>
> -PREFERRED_VERSION_gcc ?= "${GCCVERSION}"
> -PREFERRED_VERSION_gcc-cross-${TARGET_ARCH} ?= "${GCCVERSION}"
> -PREFERRED_VERSION_gcc-crosssdk-${SDK_SYS} ?= "${SDKGCCVERSION}"
> -PREFERRED_VERSION_gcc-cross-canadian-${TRANSLATED_TARGET_ARCH} ?= 
> "${GCCVERSION}"
> -PREFERRED_VERSION_gcc-runtime ?= "${GCCVERSION}"
> -PREFERRED_VERSION_gcc-sanitizers ?= "${GCCVERSION}"
> -PREFERRED_VERSION_nativesdk-gcc-runtime ?= "${SDKGCCVERSION}"
> -PREFERRED_VERSION_nativesdk-gcc-sanitizers ?= "${SDKGCCVERSION}"
> -PREFERRED_VERSION_libgcc ?= "${GCCVERSION}"
> -PREFERRED_VERSION_libgcc-initial ?= "${GCCVERSION}"
> -PREFERRED_VERSION_libgfortran ?= "${GCCVERSION}"
> -PREFERRED_VERSION_nativesdk-gcc ?= "${SDKGCCVERSION}"
> -PREFERRED_VERSION_nativesdk-libgcc ?= "${SDKGCCVERSION}"
> -PREFERRED_VERSION_nativesdk-libgcc-initial ?= "${SDKGCCVERSION}"
> -PREFERRED_VERSION_binutils ?= "${BINUVERSION}"
> -PREFERRED_VERSION_binutils-native ?= "${BINUVERSION}"
> -PREFERRED_VERSION_binutils-cross-${TARGET_ARCH} ?= "${BINUVERSION}"
> -PREFERRED_VERSION_binutils-crosssdk-${SDK_SYS} ?= "${BINUVERSION}"
> -PREFERRED_VERSION_binutils-cross-canadian-${TRANSLATED_TARGET_ARCH} ?= 
> "${BINUVERSION}"
> -PREFERRED_VERSION_gdb ?= "${GDBVERSION}"
> -PREFERRED_VERSION_gdb-cross-${TARGET_ARCH} ?= "${GDBVERSION}"
> -PREFERRED_VERSION_gdb-cross-canadian-${TRANSLATED_TARGET_ARCH} ?= 
> "${GDBVERSION}"
> -
> -PREFERRED_VERSION_linux-libc-headers ?= "${LINUXLIBCVERSION}"
> -PREFERRED_VERSION_nativesdk-linux-libc-headers ?= "${LINUXLIBCVERSION}"
> -PREFERRED_VERSION_glibc?= "${GLIBCVERSION}"
> -PREFERRED_VERSION_glibc-locale ?= "${GLIBCVERSION}"
> -PREFERRED_VERSION_glibc-mtrace ?= "${GLIBCVERSION}"
> -PREFERRED_VERSION_glibc-scripts?= "${GLIBCVERSION}"
> -PREFERRED_VERSION_nativesdk-glibc  ?= "${GLIBCVERSION}"
> -PREFERRED_VERSION_cross-localedef-native   ?= "${GLIBCVERSION}"
> -
> -PREFERRED_VERSION_qemu ?= "${QEMUVERSION}"
> -PREFERRED_VERSION_qemu-native ?= "${QEMUVERSION}"
> -PREFERRED_VERSION_nativesdk-qemu ?= "${QEMUVERSION}"
> -
>  # Bootstrap Go using a binary release from golang.org.  If you want to 
> bootstrap
>  # from source using the C-implemented Go 1.4 (only supports x86-64 hosts) 
> then use
>  # go-native.
>  PREFERRED_PROVIDER_go-native ?= "go-binary-native"
> -PREFERRED_VERSION_virtual/${TARGET_PREFIX}go ?= "${GOVERSION}"
> -PREFERRED_VERSION_go-cross-${TUNE_PKGARCH} ?= "${GOVERSION}"
> -PREFERRED_VERSION_go-crosssdk-${SDK_ARCH} ?= "${GOVERSION}"
> -PREFERRED_VERSION_go-cross-canadian-${TRANSLATED_TARGET_ARCH} ?= 
> "${GOVERSION}"
> -PREFERRED_VERSION_go ?= "${GOVERSION}"
> -PREFERRED_VERSION_go-native ?= "${GOVERSION}"
> -PREFERRED_VERSION_go-runtime ?= "${GOVERSION}"
> -PREFERRED_VERSION_nativesdk-go ?= "${GOVERSION}"
> -PREFERRED_VERSION_nativesdk-go-runtime ?= "${GOVERSION}"
> -
> -PREFERRED_VERSION_llvm = "${LLVMVERSION}"
> -PREFERRED_VERSION_llvm-native = "${LLVMVERSION}"
> -PREFERRED_VERSION_nativesdk-llvm = "${LLVMVERSION}"
> --
> 2.31.1
>
>
> 
>


-- 
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II


Re: [OE-core] [PATCH 02/21] tcmode-default.inc: do not set PREFERRED_VERSION for toolchain items

2021-07-14 Thread Alexander Kanavin
On Wed, 14 Jul 2021 at 14:55, Richard Purdie <
richard.pur...@linuxfoundation.org> wrote:

> At the very least the GCC variable is well used in other layers as it is
> hard to
> remember all the different bits of gcc that are listed here so I think
> that
> should stay. Some of these can probably be removed but I'm not sure how far
> we could/should go. glibc's list of recipes isn't trivial either...
>

I used layerindex to check. Alternative gcc versions are provided by
multiple layers (mostly arm-related), but an alternative older glibc is
only in meta-debian and that is using neither PREFERRED_VERSION directly
nor the *LIBCVERSION convenience (so not sure how it's meant to be used). I
will send a v2 with gcc added back.

Anyone else should probably just copy the PREFERRED_VERSION lines for what
they want to adjust into the layers directly. But let's see what Khem says
- I do think getting help from AUH/devtool in doing the updates fully, or
at least using 'devtool upgrade' locally to prepare the git trees for
manual patch rebasing is valuable.

Alex

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#153844): 
https://lists.openembedded.org/g/openembedded-core/message/153844
Mute This Topic: https://lists.openembedded.org/mt/84200116/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [PATCH 02/21] tcmode-default.inc: do not set PREFERRED_VERSION for toolchain items

2021-07-14 Thread Richard Purdie
On Wed, 2021-07-14 at 14:25 +0200, Alexander Kanavin wrote:
> oe-core has not been providing multiple versions for any of these items
> for a long time, it's not likely to change anytime soon, and it makes
> automated (or semi-automated) versions updates with devtool impossible,
> as PREFERRED_VERSION masks the updated recipe in devtool workspace.
> 
> Specifically, this was prompted by investigating why automated llvm update
> doesn't work; it does now.
> 
> Signed-off-by: Alexander Kanavin 
> ---
>  meta/conf/distro/include/tcmode-default.inc | 57 -
>  1 file changed, 57 deletions(-)
> 
> diff --git a/meta/conf/distro/include/tcmode-default.inc 
> b/meta/conf/distro/include/tcmode-default.inc
> index 68e5d848ba..0571304fdc 100644
> --- a/meta/conf/distro/include/tcmode-default.inc
> +++ b/meta/conf/distro/include/tcmode-default.inc
> @@ -16,68 +16,11 @@ PREFERRED_PROVIDER_virtual/${SDK_PREFIX}compilerlibs = 
> "nativesdk-gcc-runtime"
>  # Default libc config
>  PREFERRED_PROVIDER_virtual/gettext ??= "gettext"
>  
> 
> 
> 
> 
> 
> 
> 
> -GCCVERSION ?= "11.%"
> -SDKGCCVERSION ?= "${GCCVERSION}"
> -BINUVERSION ?= "2.36%"
> -GDBVERSION ?= "10.%"
> -GLIBCVERSION ?= "2.33"
> -LINUXLIBCVERSION ?= "5.13%"
> -QEMUVERSION ?= "6.0%"
> -GOVERSION ?= "1.16%"
>  # This can not use wildcards like 8.0.% since it is also used in mesa to 
> denote
>  # llvm version being used, so always bump it with llvm recipe version bump
>  LLVMVERSION ?= "12.0.0"
>  
> 
> 
> 
> 
> 
> 
> 
> -PREFERRED_VERSION_gcc ?= "${GCCVERSION}"
> -PREFERRED_VERSION_gcc-cross-${TARGET_ARCH} ?= "${GCCVERSION}"
> -PREFERRED_VERSION_gcc-crosssdk-${SDK_SYS} ?= "${SDKGCCVERSION}"
> -PREFERRED_VERSION_gcc-cross-canadian-${TRANSLATED_TARGET_ARCH} ?= 
> "${GCCVERSION}"
> -PREFERRED_VERSION_gcc-runtime ?= "${GCCVERSION}"
> -PREFERRED_VERSION_gcc-sanitizers ?= "${GCCVERSION}"
> -PREFERRED_VERSION_nativesdk-gcc-runtime ?= "${SDKGCCVERSION}"
> -PREFERRED_VERSION_nativesdk-gcc-sanitizers ?= "${SDKGCCVERSION}"
> -PREFERRED_VERSION_libgcc ?= "${GCCVERSION}"
> -PREFERRED_VERSION_libgcc-initial ?= "${GCCVERSION}"
> -PREFERRED_VERSION_libgfortran ?= "${GCCVERSION}"
> -PREFERRED_VERSION_nativesdk-gcc ?= "${SDKGCCVERSION}"
> -PREFERRED_VERSION_nativesdk-libgcc ?= "${SDKGCCVERSION}"
> -PREFERRED_VERSION_nativesdk-libgcc-initial ?= "${SDKGCCVERSION}"
> -PREFERRED_VERSION_binutils ?= "${BINUVERSION}"
> -PREFERRED_VERSION_binutils-native ?= "${BINUVERSION}"
> -PREFERRED_VERSION_binutils-cross-${TARGET_ARCH} ?= "${BINUVERSION}"
> -PREFERRED_VERSION_binutils-crosssdk-${SDK_SYS} ?= "${BINUVERSION}"
> -PREFERRED_VERSION_binutils-cross-canadian-${TRANSLATED_TARGET_ARCH} ?= 
> "${BINUVERSION}"
> -PREFERRED_VERSION_gdb ?= "${GDBVERSION}"
> -PREFERRED_VERSION_gdb-cross-${TARGET_ARCH} ?= "${GDBVERSION}"
> -PREFERRED_VERSION_gdb-cross-canadian-${TRANSLATED_TARGET_ARCH} ?= 
> "${GDBVERSION}"
> -
> -PREFERRED_VERSION_linux-libc-headers ?= "${LINUXLIBCVERSION}"
> -PREFERRED_VERSION_nativesdk-linux-libc-headers ?= "${LINUXLIBCVERSION}"
> -PREFERRED_VERSION_glibc?= "${GLIBCVERSION}"
> -PREFERRED_VERSION_glibc-locale ?= "${GLIBCVERSION}"
> -PREFERRED_VERSION_glibc-mtrace ?= "${GLIBCVERSION}"
> -PREFERRED_VERSION_glibc-scripts?= "${GLIBCVERSION}"
> -PREFERRED_VERSION_nativesdk-glibc  ?= "${GLIBCVERSION}"
> -PREFERRED_VERSION_cross-localedef-native   ?= "${GLIBCVERSION}"
> -
> -PREFERRED_VERSION_qemu ?= "${QEMUVERSION}"
> -PREFERRED_VERSION_qemu-native ?= "${QEMUVERSION}"
> -PREFERRED_VERSION_nativesdk-qemu ?= "${QEMUVERSION}"
> -
>  # Bootstrap Go using a binary release from golang.org.  If you want to 
> bootstrap
>  # from source using the C-implemented Go 1.4 (only supports x86-64 hosts) 
> then use
>  # go-native.
>  PREFERRED_PROVIDER_go-native ?= "go-binary-native"
> -PREFERRED_VERSION_virtual/${TARGET_PREFIX}go ?= "${GOVERSION}"
> -PREFERRED_VERSION_go-cross-${TUNE_PKGARCH} ?= "${GOVERSION}"
> -PREFERRED_VERSION_go-crosssdk-${SDK_ARCH} ?= "${GOVERSION}"
> -PREFERRED_VERSION_go-cross-canadian-${TRANSLATED_TARGET_ARCH} ?= 
> "${GOVERSION}"
> -PREFERRED_VERSION_go ?= "${GOVERSION}"
> -PREFERRED_VERSION_go-native ?= "${GOVERSION}"
> -PREFERRED_VERSION_go-runtime ?= "${GOVERSION}"
> -PREFERRED_VERSION_nativesdk-go ?= "${GOVERSION}"
> -PREFERRED_VERSION_nativesdk-go-runtime ?= "${GOVERSION}"
> -
> -PREFERRED_VERSION_llvm = "${LLVMVERSION}"
> -PREFERRED_VERSION_llvm-native = "${LLVMVERSION}"
> -PREFERRED_VERSION_nativesdk-llvm = "${LLVMVERSION}"
> -

At the very least the GCC variable is well used in other layers as it is hard 
to 
remember all the different bits of gcc that are listed here so I think that 
should stay. Some of these can probably be removed but I'm not sure how far
we could/should go. glibc's list of recipes isn't trivial either...

Cheers,

Richard


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#153843):