Openembedded Core Discussions
 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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox