All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alexandre Belloni <alexandre.belloni@bootlin.com>
To: Khem Raj <raj.khem@gmail.com>
Cc: openembedded-core@lists.openembedded.org
Subject: Re: [OE-core] [PATCH 1/2] python3: Check for host OS type instead of build OS
Date: Fri, 7 Jun 2024 11:33:26 +0200	[thread overview]
Message-ID: <202406070933261b369a8f@mail.local> (raw)
In-Reply-To: <20240605064317.1646597-1-raj.khem@gmail.com>

Hello,

This breaks musl:

https://autobuilder.yoctoproject.org/typhoon/#/builders/64/builds/9102/steps/11/logs/stdio
https://autobuilder.yoctoproject.org/typhoon/#/builders/45/builds/9116/steps/12/logs/stdio


On 04/06/2024 23:43:16-0700, Khem Raj wrote:
> configure uses PLATOFRM_TRIPLET derive many variabled e.g.
> SOABI, EXT_SUFFIX etc. However, the check is for build system
> which is not correct when cross-compiling python, it works ok
> for native builds since host == build, however for cross-builds
> host != build and this ends up with wrong value e.g. on musl/linux
> it gets linux-gnu whereas it should be linux-musl.
> 
> Luckily, its fixed upstream, hence backported
> 
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
>  ...r-platform-triplet-detection-code-ad.patch | 498 ++++++++++++++++++
>  .../recipes-devtools/python/python3_3.12.3.bb |   1 +
>  2 files changed, 499 insertions(+)
>  create mode 100644 meta/recipes-devtools/python/python3/0001-gh-95855-Refactor-platform-triplet-detection-code-ad.patch
> 
> diff --git a/meta/recipes-devtools/python/python3/0001-gh-95855-Refactor-platform-triplet-detection-code-ad.patch b/meta/recipes-devtools/python/python3/0001-gh-95855-Refactor-platform-triplet-detection-code-ad.patch
> new file mode 100644
> index 00000000000..c0dc3a79f67
> --- /dev/null
> +++ b/meta/recipes-devtools/python/python3/0001-gh-95855-Refactor-platform-triplet-detection-code-ad.patch
> @@ -0,0 +1,498 @@
> +From c163d7f0b67a568e9b64eeb9c1cbbaa127818596 Mon Sep 17 00:00:00 2001
> +From: Jeffery To <jeffery.to@gmail.com>
> +Date: Thu, 24 Aug 2023 20:22:50 +0800
> +Subject: [PATCH] gh-95855: Refactor platform triplet detection code, add
> + detection for MIPS soft float and musl libc (#107221)
> +
> +- Move platform triplet detection code into Misc/platform_triplet.c
> +- Refactor MIPS detection, use defined(__mips64) to detect MIPS64
> +- Compute libc values in separate section
> +- Add detection for MIPS soft float
> +- Add detection for musl
> +
> +musl supports SPE with its soft-float ABI:
> +https://git.musl-libc.org/cgit/musl/commit/?id=7be59733d71ada3a32a98622507399253f1d5e48
> +
> +Original patch by Christian Heimes.
> +
> +Co-authored-by: Christian Heimes <christian@python.org>
> +Co-authored-by: Erlend E. Aasland <erlend@python.org>
> +
> +Upstream-Status: Backport [https://github.com/kraj/cpython/commit/c163d7f0b67a568e9b64eeb9c1cbbaa127818596]
> +Signed-off-by: Khem Raj <raj.khem@gmail.com>
> +---
> + ...3-07-25-02-30-00.gh-issue-95855.wA7rAf.rst |   2 +
> + Misc/platform_triplet.c                       | 255 ++++++++++++++++++
> + configure.ac                                  | 192 +------------
> + 4 files changed, 265 insertions(+), 376 deletions(-)
> + create mode 100644 Misc/NEWS.d/next/Build/2023-07-25-02-30-00.gh-issue-95855.wA7rAf.rst
> + create mode 100644 Misc/platform_triplet.c
> +
> +--- /dev/null
> ++++ b/Misc/NEWS.d/next/Build/2023-07-25-02-30-00.gh-issue-95855.wA7rAf.rst
> +@@ -0,0 +1,2 @@
> ++Refactor platform triplet detection code and add detection for MIPS soft
> ++float and musl libc.
> +--- /dev/null
> ++++ b/Misc/platform_triplet.c
> +@@ -0,0 +1,255 @@
> ++/* Detect platform triplet from builtin defines
> ++ * cc -E Misc/platform_triplet.c | grep '^PLATFORM_TRIPLET=' | tr -d ' '
> ++ */
> ++#undef bfin
> ++#undef cris
> ++#undef fr30
> ++#undef linux
> ++#undef hppa
> ++#undef hpux
> ++#undef i386
> ++#undef mips
> ++#undef powerpc
> ++#undef sparc
> ++#undef unix
> ++#if defined(__ANDROID__)
> ++    # Android is not a multiarch system.
> ++#elif defined(__linux__)
> ++/*
> ++ * BEGIN of Linux block
> ++ */
> ++// Detect libc (based on config.guess)
> ++# include <features.h>
> ++# if defined(__UCLIBC__)
> ++#  error uclibc not supported
> ++# elif defined(__dietlibc__)
> ++#  error dietlibc not supported
> ++# elif defined(__GLIBC__)
> ++#  define LIBC gnu
> ++#  define LIBC_X32 gnux32
> ++#  if defined(__ARM_PCS_VFP)
> ++#   define LIBC_ARM gnueabihf
> ++#  else
> ++#   define LIBC_ARM gnueabi
> ++#  endif
> ++#  if defined(__loongarch__)
> ++#   if defined(__loongarch_soft_float)
> ++#    define LIBC_LA gnusf
> ++#   elif defined(__loongarch_single_float)
> ++#    define LIBC_LA gnuf32
> ++#   elif defined(__loongarch_double_float)
> ++#    define LIBC_LA gnu
> ++#   else
> ++#    error unknown loongarch floating-point base abi
> ++#   endif
> ++#  endif
> ++#  if defined(_MIPS_SIM)
> ++#   if defined(__mips_hard_float)
> ++#    if _MIPS_SIM == _ABIO32
> ++#     define LIBC_MIPS gnu
> ++#    elif _MIPS_SIM == _ABIN32
> ++#     define LIBC_MIPS gnuabin32
> ++#    elif _MIPS_SIM == _ABI64
> ++#     define LIBC_MIPS gnuabi64
> ++#    else
> ++#     error unknown mips sim value
> ++#    endif
> ++#   else
> ++#    if _MIPS_SIM == _ABIO32
> ++#     define LIBC_MIPS gnusf
> ++#    elif _MIPS_SIM == _ABIN32
> ++#     define LIBC_MIPS gnuabin32sf
> ++#    elif _MIPS_SIM == _ABI64
> ++#     define LIBC_MIPS gnuabi64sf
> ++#    else
> ++#     error unknown mips sim value
> ++#    endif
> ++#   endif
> ++#  endif
> ++#  if defined(__SPE__)
> ++#   define LIBC_PPC gnuspe
> ++#  else
> ++#   define LIBC_PPC gnu
> ++#  endif
> ++# else
> ++// Heuristic to detect musl libc
> ++#  include <stdarg.h>
> ++#  ifdef __DEFINED_va_list
> ++#   define LIBC musl
> ++#   define LIBC_X32 muslx32
> ++#   if defined(__ARM_PCS_VFP)
> ++#    define LIBC_ARM musleabihf
> ++#   else
> ++#    define LIBC_ARM musleabi
> ++#   endif
> ++#   if defined(__loongarch__)
> ++#    if defined(__loongarch_soft_float)
> ++#     define LIBC_LA muslsf
> ++#    elif defined(__loongarch_single_float)
> ++#     define LIBC_LA muslf32
> ++#    elif defined(__loongarch_double_float)
> ++#     define LIBC_LA musl
> ++#    else
> ++#     error unknown loongarch floating-point base abi
> ++#    endif
> ++#   endif
> ++#   if defined(_MIPS_SIM)
> ++#    if defined(__mips_hard_float)
> ++#     if _MIPS_SIM == _ABIO32
> ++#      define LIBC_MIPS musl
> ++#     elif _MIPS_SIM == _ABIN32
> ++#      define LIBC_MIPS musln32
> ++#     elif _MIPS_SIM == _ABI64
> ++#      define LIBC_MIPS musl
> ++#     else
> ++#      error unknown mips sim value
> ++#     endif
> ++#    else
> ++#     if _MIPS_SIM == _ABIO32
> ++#      define LIBC_MIPS muslsf
> ++#     elif _MIPS_SIM == _ABIN32
> ++#      define LIBC_MIPS musln32sf
> ++#     elif _MIPS_SIM == _ABI64
> ++#      define LIBC_MIPS muslsf
> ++#     else
> ++#      error unknown mips sim value
> ++#     endif
> ++#    endif
> ++#   endif
> ++#   if defined(_SOFT_FLOAT) || defined(__NO_FPRS__)
> ++#    define LIBC_PPC muslsf
> ++#   else
> ++#    define LIBC_PPC musl
> ++#   endif
> ++#  else
> ++#   error unknown libc
> ++#  endif
> ++# endif
> ++
> ++# if defined(__x86_64__) && defined(__LP64__)
> ++PLATFORM_TRIPLET=x86_64-linux-LIBC
> ++# elif defined(__x86_64__) && defined(__ILP32__)
> ++PLATFORM_TRIPLET=x86_64-linux-LIBC_X32
> ++# elif defined(__i386__)
> ++PLATFORM_TRIPLET=i386-linux-LIBC
> ++# elif defined(__aarch64__) && defined(__AARCH64EL__)
> ++#  if defined(__ILP32__)
> ++PLATFORM_TRIPLET=aarch64_ilp32-linux-LIBC
> ++#  else
> ++PLATFORM_TRIPLET=aarch64-linux-LIBC
> ++#  endif
> ++# elif defined(__aarch64__) && defined(__AARCH64EB__)
> ++#  if defined(__ILP32__)
> ++PLATFORM_TRIPLET=aarch64_be_ilp32-linux-LIBC
> ++#  else
> ++PLATFORM_TRIPLET=aarch64_be-linux-LIBC
> ++#  endif
> ++# elif defined(__alpha__)
> ++PLATFORM_TRIPLET=alpha-linux-LIBC
> ++# elif defined(__ARM_EABI__)
> ++#  if defined(__ARMEL__)
> ++PLATFORM_TRIPLET=arm-linux-LIBC_ARM
> ++#  else
> ++PLATFORM_TRIPLET=armeb-linux-LIBC_ARM
> ++#  endif
> ++# elif defined(__hppa__)
> ++PLATFORM_TRIPLET=hppa-linux-LIBC
> ++# elif defined(__ia64__)
> ++PLATFORM_TRIPLET=ia64-linux-LIBC
> ++# elif defined(__loongarch__) && defined(__loongarch_lp64)
> ++PLATFORM_TRIPLET=loongarch64-linux-LIBC_LA
> ++# elif defined(__m68k__) && !defined(__mcoldfire__)
> ++PLATFORM_TRIPLET=m68k-linux-LIBC
> ++# elif defined(__mips__)
> ++#  if defined(__mips_isa_rev) && (__mips_isa_rev >=6)
> ++#   if defined(_MIPSEL) && defined(__mips64)
> ++PLATFORM_TRIPLET=mipsisa64r6el-linux-LIBC_MIPS
> ++#   elif defined(_MIPSEL)
> ++PLATFORM_TRIPLET=mipsisa32r6el-linux-LIBC_MIPS
> ++#   elif defined(__mips64)
> ++PLATFORM_TRIPLET=mipsisa64r6-linux-LIBC_MIPS
> ++#   else
> ++PLATFORM_TRIPLET=mipsisa32r6-linux-LIBC_MIPS
> ++#   endif
> ++#  else
> ++#   if defined(_MIPSEL) && defined(__mips64)
> ++PLATFORM_TRIPLET=mips64el-linux-LIBC_MIPS
> ++#   elif defined(_MIPSEL)
> ++PLATFORM_TRIPLET=mipsel-linux-LIBC_MIPS
> ++#   elif defined(__mips64)
> ++PLATFORM_TRIPLET=mips64-linux-LIBC_MIPS
> ++#   else
> ++PLATFORM_TRIPLET=mips-linux-LIBC_MIPS
> ++#   endif
> ++#  endif
> ++# elif defined(__or1k__)
> ++PLATFORM_TRIPLET=or1k-linux-LIBC
> ++# elif defined(__powerpc64__)
> ++#  if defined(__LITTLE_ENDIAN__)
> ++PLATFORM_TRIPLET=powerpc64le-linux-LIBC
> ++#  else
> ++PLATFORM_TRIPLET=powerpc64-linux-LIBC
> ++#  endif
> ++# elif defined(__powerpc__)
> ++PLATFORM_TRIPLET=powerpc-linux-LIBC_PPC
> ++# elif defined(__s390x__)
> ++PLATFORM_TRIPLET=s390x-linux-LIBC
> ++# elif defined(__s390__)
> ++PLATFORM_TRIPLET=s390-linux-LIBC
> ++# elif defined(__sh__) && defined(__LITTLE_ENDIAN__)
> ++PLATFORM_TRIPLET=sh4-linux-LIBC
> ++# elif defined(__sparc__) && defined(__arch64__)
> ++PLATFORM_TRIPLET=sparc64-linux-LIBC
> ++# elif defined(__sparc__)
> ++PLATFORM_TRIPLET=sparc-linux-LIBC
> ++# elif defined(__riscv)
> ++#  if __riscv_xlen == 32
> ++PLATFORM_TRIPLET=riscv32-linux-LIBC
> ++#  elif __riscv_xlen == 64
> ++PLATFORM_TRIPLET=riscv64-linux-LIBC
> ++#  else
> ++#   error unknown platform triplet
> ++#  endif
> ++# else
> ++#   error unknown platform triplet
> ++# endif
> ++/*
> ++ * END of Linux block
> ++ */
> ++#elif defined(__FreeBSD_kernel__)
> ++# if defined(__LP64__)
> ++PLATFORM_TRIPLET=x86_64-kfreebsd-gnu
> ++# elif defined(__i386__)
> ++PLATFORM_TRIPLET=i386-kfreebsd-gnu
> ++# else
> ++#   error unknown platform triplet
> ++# endif
> ++#elif defined(__gnu_hurd__)
> ++PLATFORM_TRIPLET=i386-gnu
> ++#elif defined(__APPLE__)
> ++PLATFORM_TRIPLET=darwin
> ++#elif defined(__VXWORKS__)
> ++PLATFORM_TRIPLET=vxworks
> ++#elif defined(__wasm32__)
> ++#  if defined(__EMSCRIPTEN__)
> ++PLATFORM_TRIPLET=wasm32-emscripten
> ++#  elif defined(__wasi__)
> ++#    if defined(_REENTRANT)
> ++PLATFORM_TRIPLET=wasm32-wasi-threads
> ++#    else
> ++PLATFORM_TRIPLET=wasm32-wasi
> ++#    endif
> ++#  else
> ++#    error unknown wasm32 platform
> ++#  endif
> ++#elif defined(__wasm64__)
> ++#  if defined(__EMSCRIPTEN__)
> ++PLATFORM_TRIPLET=wasm64-emscripten
> ++#  elif defined(__wasi__)
> ++PLATFORM_TRIPLET=wasm64-wasi
> ++#  else
> ++#    error unknown wasm64 platform
> ++#  endif
> ++#else
> ++# error unknown platform triplet
> ++#endif
> +--- a/configure.ac
> ++++ b/configure.ac
> +@@ -927,198 +927,14 @@ fi
> + 
> + 
> + AC_MSG_CHECKING([for the platform triplet based on compiler characteristics])
> +-cat > conftest.c <<EOF
> +-#undef bfin
> +-#undef cris
> +-#undef fr30
> +-#undef linux
> +-#undef hppa
> +-#undef hpux
> +-#undef i386
> +-#undef mips
> +-#undef powerpc
> +-#undef sparc
> +-#undef unix
> +-#if defined(__ANDROID__)
> +-    # Android is not a multiarch system.
> +-#elif defined(__linux__)
> +-# if defined(__x86_64__) && defined(__LP64__)
> +-        x86_64-linux-gnu
> +-# elif defined(__x86_64__) && defined(__ILP32__)
> +-        x86_64-linux-gnux32
> +-# elif defined(__i386__)
> +-        i386-linux-gnu
> +-# elif defined(__aarch64__) && defined(__AARCH64EL__)
> +-#  if defined(__ILP32__)
> +-        aarch64_ilp32-linux-gnu
> +-#  else
> +-        aarch64-linux-gnu
> +-#  endif
> +-# elif defined(__aarch64__) && defined(__AARCH64EB__)
> +-#  if defined(__ILP32__)
> +-        aarch64_be_ilp32-linux-gnu
> +-#  else
> +-        aarch64_be-linux-gnu
> +-#  endif
> +-# elif defined(__alpha__)
> +-        alpha-linux-gnu
> +-# elif defined(__ARM_EABI__) && defined(__ARM_PCS_VFP)
> +-#  if defined(__ARMEL__)
> +-        arm-linux-gnueabihf
> +-#  else
> +-        armeb-linux-gnueabihf
> +-#  endif
> +-# elif defined(__ARM_EABI__) && !defined(__ARM_PCS_VFP)
> +-#  if defined(__ARMEL__)
> +-        arm-linux-gnueabi
> +-#  else
> +-        armeb-linux-gnueabi
> +-#  endif
> +-# elif defined(__hppa__)
> +-        hppa-linux-gnu
> +-# elif defined(__ia64__)
> +-        ia64-linux-gnu
> +-# elif defined(__loongarch__)
> +-#  if defined(__loongarch_lp64)
> +-#   if defined(__loongarch_soft_float)
> +-        loongarch64-linux-gnusf
> +-#   elif defined(__loongarch_single_float)
> +-        loongarch64-linux-gnuf32
> +-#   elif defined(__loongarch_double_float)
> +-        loongarch64-linux-gnu
> +-#   else
> +-#    error unknown platform triplet
> +-#   endif
> +-#  else
> +-#   error unknown platform triplet
> +-#  endif
> +-# elif defined(__m68k__) && !defined(__mcoldfire__)
> +-        m68k-linux-gnu
> +-# elif defined(__mips_hard_float) && defined(__mips_isa_rev) && (__mips_isa_rev >=6) && defined(_MIPSEL)
> +-#  if _MIPS_SIM == _ABIO32
> +-        mipsisa32r6el-linux-gnu
> +-#  elif _MIPS_SIM == _ABIN32
> +-        mipsisa64r6el-linux-gnuabin32
> +-#  elif _MIPS_SIM == _ABI64
> +-        mipsisa64r6el-linux-gnuabi64
> +-#  else
> +-#   error unknown platform triplet
> +-#  endif
> +-# elif defined(__mips_hard_float) && defined(__mips_isa_rev) && (__mips_isa_rev >=6)
> +-#  if _MIPS_SIM == _ABIO32
> +-        mipsisa32r6-linux-gnu
> +-#  elif _MIPS_SIM == _ABIN32
> +-        mipsisa64r6-linux-gnuabin32
> +-#  elif _MIPS_SIM == _ABI64
> +-        mipsisa64r6-linux-gnuabi64
> +-#  else
> +-#   error unknown platform triplet
> +-#  endif
> +-# elif defined(__mips_hard_float) && defined(_MIPSEL)
> +-#  if _MIPS_SIM == _ABIO32
> +-        mipsel-linux-gnu
> +-#  elif _MIPS_SIM == _ABIN32
> +-        mips64el-linux-gnuabin32
> +-#  elif _MIPS_SIM == _ABI64
> +-        mips64el-linux-gnuabi64
> +-#  else
> +-#   error unknown platform triplet
> +-#  endif
> +-# elif defined(__mips_hard_float)
> +-#  if _MIPS_SIM == _ABIO32
> +-        mips-linux-gnu
> +-#  elif _MIPS_SIM == _ABIN32
> +-        mips64-linux-gnuabin32
> +-#  elif _MIPS_SIM == _ABI64
> +-        mips64-linux-gnuabi64
> +-#  else
> +-#   error unknown platform triplet
> +-#  endif
> +-# elif defined(__or1k__)
> +-        or1k-linux-gnu
> +-# elif defined(__powerpc__) && defined(__SPE__)
> +-        powerpc-linux-gnuspe
> +-# elif defined(__powerpc64__)
> +-#  if defined(__LITTLE_ENDIAN__)
> +-        powerpc64le-linux-gnu
> +-#  else
> +-        powerpc64-linux-gnu
> +-#  endif
> +-# elif defined(__powerpc__)
> +-        powerpc-linux-gnu
> +-# elif defined(__s390x__)
> +-        s390x-linux-gnu
> +-# elif defined(__s390__)
> +-        s390-linux-gnu
> +-# elif defined(__sh__) && defined(__LITTLE_ENDIAN__)
> +-        sh4-linux-gnu
> +-# elif defined(__sparc__) && defined(__arch64__)
> +-        sparc64-linux-gnu
> +-# elif defined(__sparc__)
> +-        sparc-linux-gnu
> +-# elif defined(__riscv)
> +-#  if __riscv_xlen == 32
> +-        riscv32-linux-gnu
> +-#  elif __riscv_xlen == 64
> +-        riscv64-linux-gnu
> +-#  else
> +-#   error unknown platform triplet
> +-#  endif
> +-# else
> +-#   error unknown platform triplet
> +-# endif
> +-#elif defined(__FreeBSD_kernel__)
> +-# if defined(__LP64__)
> +-        x86_64-kfreebsd-gnu
> +-# elif defined(__i386__)
> +-        i386-kfreebsd-gnu
> +-# else
> +-#   error unknown platform triplet
> +-# endif
> +-#elif defined(__gnu_hurd__)
> +-        i386-gnu
> +-#elif defined(__APPLE__)
> +-        darwin
> +-#elif defined(__VXWORKS__)
> +-        vxworks
> +-#elif defined(__wasm32__)
> +-#  if defined(__EMSCRIPTEN__)
> +-	wasm32-emscripten
> +-#  elif defined(__wasi__)
> +-#    if defined(_REENTRANT)
> +-	wasm32-wasi-threads
> +-#    else
> +-	wasm32-wasi
> +-#    endif
> +-#  else
> +-#    error unknown wasm32 platform
> +-#  endif
> +-#elif defined(__wasm64__)
> +-#  if defined(__EMSCRIPTEN__)
> +-	wasm64-emscripten
> +-#  elif defined(__wasi__)
> +-	wasm64-wasi
> +-#  else
> +-#    error unknown wasm64 platform
> +-#  endif
> +-#else
> +-# error unknown platform triplet
> +-#endif
> +-
> +-EOF
> +-
> +-if $CPP $CPPFLAGS conftest.c >conftest.out 2>/dev/null; then
> +-  PLATFORM_TRIPLET=`grep -v '^#' conftest.out | grep -v '^ *$' | tr -d ' 	'`
> +-  case "$build_os" in
> +-  linux-musl*)
> +-    PLATFORM_TRIPLET=`echo "$PLATFORM_TRIPLET" | sed 's/linux-gnu/linux-musl/'`
> +-    ;;
> +-  esac
> ++if $CPP $CPPFLAGS $srcdir/Misc/platform_triplet.c >conftest.out 2>/dev/null; then
> ++  PLATFORM_TRIPLET=`grep '^PLATFORM_TRIPLET=' conftest.out | tr -d ' 	'`
> ++  PLATFORM_TRIPLET="${PLATFORM_TRIPLET@%:@PLATFORM_TRIPLET=}"
> +   AC_MSG_RESULT([$PLATFORM_TRIPLET])
> + else
> +   AC_MSG_RESULT([none])
> + fi
> +-rm -f conftest.c conftest.out
> ++rm -f conftest.out
> + 
> + AC_MSG_CHECKING([for multiarch])
> + AS_CASE([$ac_sys_system],
> diff --git a/meta/recipes-devtools/python/python3_3.12.3.bb b/meta/recipes-devtools/python/python3_3.12.3.bb
> index 37afa442fa3..f5f311f61c9 100644
> --- a/meta/recipes-devtools/python/python3_3.12.3.bb
> +++ b/meta/recipes-devtools/python/python3_3.12.3.bb
> @@ -32,6 +32,7 @@ SRC_URI = "http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.xz \
>             file://0001-gh-114492-Initialize-struct-termios-before-calling-t.patch \
>             file://0001-test_shutdown-skip-problematic-test.patch \
>             file://0001-gh-107811-tarfile-treat-overflow-in-UID-GID-as-failu.patch \
> +           file://0001-gh-95855-Refactor-platform-triplet-detection-code-ad.patch \
>             "
>  
>  SRC_URI:append:class-native = " \

> 
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#200353): https://lists.openembedded.org/g/openembedded-core/message/200353
> Mute This Topic: https://lists.openembedded.org/mt/106498609/3617179
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [alexandre.belloni@bootlin.com]
> -=-=-=-=-=-=-=-=-=-=-=-
> 


-- 
Alexandre Belloni, co-owner and COO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com


  parent reply	other threads:[~2024-06-07  9:33 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-06-05  6:43 [PATCH 1/2] python3: Check for host OS type instead of build OS Khem Raj
2024-06-05  6:43 ` [PATCH 2/2] python3: Drop empty patch Khem Raj
2024-06-07  9:33 ` Alexandre Belloni [this message]
2024-06-07 14:10   ` [OE-core] [PATCH 1/2] python3: Check for host OS type instead of build OS Khem Raj

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202406070933261b369a8f@mail.local \
    --to=alexandre.belloni@bootlin.com \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=raj.khem@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.