All of lore.kernel.org
 help / color / mirror / Atom feed
* [meta-python][PATCH] python3-crc32c: set target platform via setup.cfg
@ 2022-03-04 15:28 Justin Bronder
  2022-03-04 15:55 ` [oe] " Khem Raj
  0 siblings, 1 reply; 2+ messages in thread
From: Justin Bronder @ 2022-03-04 15:28 UTC (permalink / raw)
  To: openembedded-devel

Looks like we're not the first to need to specify the target platform
when building this package.  According to upstream, we can just update
setup.cfg instead of patching setup.py.
https://github.com/ICRAR/crc32c/pull/10

Signed-off-by: Justin Bronder <jsbronder@cold-front.org>
---
 ...p.py-Fix-determining-target-platform.patch | 34 -------------------
 .../python/python3-crc32c_2.2.post0.bb        |  7 ++--
 2 files changed, 5 insertions(+), 36 deletions(-)
 delete mode 100644 meta-python/recipes-devtools/python/python3-crc32c/0001-setup.py-Fix-determining-target-platform.patch

diff --git a/meta-python/recipes-devtools/python/python3-crc32c/0001-setup.py-Fix-determining-target-platform.patch b/meta-python/recipes-devtools/python/python3-crc32c/0001-setup.py-Fix-determining-target-platform.patch
deleted file mode 100644
index b534c05e9a..0000000000
--- a/meta-python/recipes-devtools/python/python3-crc32c/0001-setup.py-Fix-determining-target-platform.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 855428feb14c44762ea21a18b05638e3e6266ab5 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 3 Mar 2022 23:50:30 -0800
-Subject: [PATCH] setup.py: Fix determining target platform
-
-Do not poke at the build machine to determine target platform or architecture
-pass it from environment instead for cross compiling to work
-
-Upstream-Status: Inappropriate [OE-Specific]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- setup.py | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
---- a/setup.py
-+++ b/setup.py
-@@ -20,6 +20,7 @@
- #    MA 02111-1307  USA
- #
- import glob
-+import os
- import platform
- 
- import distutils.ccompiler
-@@ -58,7 +59,8 @@ class _build_ext(build_ext):
- 
-     def run(self):
-         assert(len(self.distribution.ext_modules) == 1)
--        platform = self.platform.lower()
-+        platform = os.environ.get('PLATFORM', 'True')
-+
-         is_intel = platform in ['x86_64', 'amd64', 'i386', 'i686']
-         is_arm = platform in ['aarch64_be', 'aarch64', 'armv8b', 'armv8l']
-         distutils.log.info("platform: %s, is_intel: %d, is_arm: %d", platform, is_intel, is_arm)
diff --git a/meta-python/recipes-devtools/python/python3-crc32c_2.2.post0.bb b/meta-python/recipes-devtools/python/python3-crc32c_2.2.post0.bb
index 78e14e1d2f..4f6a3aba99 100644
--- a/meta-python/recipes-devtools/python/python3-crc32c_2.2.post0.bb
+++ b/meta-python/recipes-devtools/python/python3-crc32c_2.2.post0.bb
@@ -9,11 +9,14 @@ LIC_FILES_CHKSUM = " \
     file://crc32c_adler.c;startline=9;endline=24;md5=c60e6e55d0e5d95effa6fad27db0711a \
 "
 
-SRC_URI += "file://0001-setup.py-Fix-determining-target-platform.patch"
 SRC_URI[sha256sum] = "3d058e7a5e37e4985d1a7ad4cb702bca56b490daa658d4851377d13ead8b435e"
 
 inherit pypi setuptools3
 
-export PLATFORM = "${TARGET_ARCH}"
+do_compile:prepend() {
+    if ! grep 'platform =' setup.cfg; then
+        printf "[build_ext]\nplatform = ${TARGET_ARCH}" >> setup.cfg
+    fi
+}
 
 RDEPENDS:${PN} += "python3-core"
-- 
2.35.1



^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [oe] [meta-python][PATCH] python3-crc32c: set target platform via setup.cfg
  2022-03-04 15:28 [meta-python][PATCH] python3-crc32c: set target platform via setup.cfg Justin Bronder
@ 2022-03-04 15:55 ` Khem Raj
  0 siblings, 0 replies; 2+ messages in thread
From: Khem Raj @ 2022-03-04 15:55 UTC (permalink / raw)
  To: Justin Bronder; +Cc: openembeded-devel

On Fri, Mar 4, 2022 at 7:28 AM Justin Bronder <jsbronder@cold-front.org> wrote:
>
> Looks like we're not the first to need to specify the target platform
> when building this package.  According to upstream, we can just update
> setup.cfg instead of patching setup.py.
> https://github.com/ICRAR/crc32c/pull/10
>
> Signed-off-by: Justin Bronder <jsbronder@cold-front.org>
> ---
>  ...p.py-Fix-determining-target-platform.patch | 34 -------------------
>  .../python/python3-crc32c_2.2.post0.bb        |  7 ++--
>  2 files changed, 5 insertions(+), 36 deletions(-)
>  delete mode 100644 meta-python/recipes-devtools/python/python3-crc32c/0001-setup.py-Fix-determining-target-platform.patch
>
> diff --git a/meta-python/recipes-devtools/python/python3-crc32c/0001-setup.py-Fix-determining-target-platform.patch b/meta-python/recipes-devtools/python/python3-crc32c/0001-setup.py-Fix-determining-target-platform.patch
> deleted file mode 100644
> index b534c05e9a..0000000000
> --- a/meta-python/recipes-devtools/python/python3-crc32c/0001-setup.py-Fix-determining-target-platform.patch
> +++ /dev/null
> @@ -1,34 +0,0 @@
> -From 855428feb14c44762ea21a18b05638e3e6266ab5 Mon Sep 17 00:00:00 2001
> -From: Khem Raj <raj.khem@gmail.com>
> -Date: Thu, 3 Mar 2022 23:50:30 -0800
> -Subject: [PATCH] setup.py: Fix determining target platform
> -
> -Do not poke at the build machine to determine target platform or architecture
> -pass it from environment instead for cross compiling to work
> -
> -Upstream-Status: Inappropriate [OE-Specific]
> -Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ----
> - setup.py | 3 ++-
> - 1 file changed, 2 insertions(+), 1 deletion(-)
> -
> ---- a/setup.py
> -+++ b/setup.py
> -@@ -20,6 +20,7 @@
> - #    MA 02111-1307  USA
> - #
> - import glob
> -+import os
> - import platform
> -
> - import distutils.ccompiler
> -@@ -58,7 +59,8 @@ class _build_ext(build_ext):
> -
> -     def run(self):
> -         assert(len(self.distribution.ext_modules) == 1)
> --        platform = self.platform.lower()
> -+        platform = os.environ.get('PLATFORM', 'True')
> -+
> -         is_intel = platform in ['x86_64', 'amd64', 'i386', 'i686']
> -         is_arm = platform in ['aarch64_be', 'aarch64', 'armv8b', 'armv8l']
> -         distutils.log.info("platform: %s, is_intel: %d, is_arm: %d", platform, is_intel, is_arm)
> diff --git a/meta-python/recipes-devtools/python/python3-crc32c_2.2.post0.bb b/meta-python/recipes-devtools/python/python3-crc32c_2.2.post0.bb
> index 78e14e1d2f..4f6a3aba99 100644
> --- a/meta-python/recipes-devtools/python/python3-crc32c_2.2.post0.bb
> +++ b/meta-python/recipes-devtools/python/python3-crc32c_2.2.post0.bb
> @@ -9,11 +9,14 @@ LIC_FILES_CHKSUM = " \
>      file://crc32c_adler.c;startline=9;endline=24;md5=c60e6e55d0e5d95effa6fad27db0711a \
>  "
>
> -SRC_URI += "file://0001-setup.py-Fix-determining-target-platform.patch"
>  SRC_URI[sha256sum] = "3d058e7a5e37e4985d1a7ad4cb702bca56b490daa658d4851377d13ead8b435e"
>
>  inherit pypi setuptools3
>
> -export PLATFORM = "${TARGET_ARCH}"
> +do_compile:prepend() {
> +    if ! grep 'platform =' setup.cfg; then
> +        printf "[build_ext]\nplatform = ${TARGET_ARCH}" >> setup.cfg
> +    fi
> +}

I think this is better since it avoid maintaining a patch, I will take
this one if this passes the CI

>
>  RDEPENDS:${PN} += "python3-core"
> --
> 2.35.1
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#95788): https://lists.openembedded.org/g/openembedded-devel/message/95788
> Mute This Topic: https://lists.openembedded.org/mt/89551016/1997914
> Group Owner: openembedded-devel+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [raj.khem@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2022-03-04 15:55 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-03-04 15:28 [meta-python][PATCH] python3-crc32c: set target platform via setup.cfg Justin Bronder
2022-03-04 15:55 ` [oe] " Khem Raj

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.