* [Buildroot] [PATCH 1/2] package/python-maturin: new package
@ 2022-05-09 22:10 James Hilliard
2022-05-09 22:10 ` [Buildroot] [PATCH 2/2] package/python-orjson: bump to version 3.6.8 James Hilliard
2022-05-11 22:05 ` [Buildroot] [PATCH 1/2] package/python-maturin: new package Graeme Smecher
0 siblings, 2 replies; 3+ messages in thread
From: James Hilliard @ 2022-05-09 22:10 UTC (permalink / raw)
To: buildroot; +Cc: James Hilliard, Graeme Smecher, Thomas Petazzoni, Asaf Kahlon
This is pep517 pyo3 build backend that's an alternative to
python-setuptools-rust.
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
---
.../0001-Fix-invalid-pyproject.toml.patch | 62 +++++++++++++++++++
package/python-maturin/python-maturin.hash | 5 ++
package/python-maturin/python-maturin.mk | 20 ++++++
3 files changed, 87 insertions(+)
create mode 100644 package/python-maturin/0001-Fix-invalid-pyproject.toml.patch
create mode 100644 package/python-maturin/python-maturin.hash
create mode 100644 package/python-maturin/python-maturin.mk
diff --git a/package/python-maturin/0001-Fix-invalid-pyproject.toml.patch b/package/python-maturin/0001-Fix-invalid-pyproject.toml.patch
new file mode 100644
index 0000000000..7d227fea18
--- /dev/null
+++ b/package/python-maturin/0001-Fix-invalid-pyproject.toml.patch
@@ -0,0 +1,62 @@
+From 9ad69941d02e494d45ee67f3bcccc83c0bb4cdcd Mon Sep 17 00:00:00 2001
+From: James Hilliard <james.hilliard1@gmail.com>
+Date: Mon, 9 May 2022 14:37:36 -0600
+Subject: [PATCH] Fix invalid pyproject.toml
+
+These attributes should be marked dynamic.
+
+Fixes:
+configuration error: `project` must contain ['version'] properties
+
+Fixes:
+The following seems to be defined outside of `pyproject.toml`:
+
+`description = 'Build and publish crates with pyo3, rust-cpython and cffi bindings as well as rust binaries as python packages'`
+
+According to the spec (see the link bellow), however, setuptools CANNOT
+consider this value unless 'description' is listed as `dynamic`.
+
+Fixes:
+The following seems to be defined outside of `pyproject.toml`:
+
+`license = 'MIT OR Apache-2.0'`
+
+According to the spec (see the link bellow), however, setuptools CANNOT
+consider this value unless 'license' is listed as `dynamic`.
+
+Fixes:
+The following seems to be defined outside of `pyproject.toml`:
+
+`authors = 'konstin'`
+
+According to the spec (see the link bellow), however, setuptools CANNOT
+consider this value unless 'authors' is listed as `dynamic`.
+
+Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
+[Upstream status:
+https://github.com/PyO3/maturin/pull/908]
+---
+ pyproject.toml | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/pyproject.toml b/pyproject.toml
+index 207ceb7..329faae 100644
+--- a/pyproject.toml
++++ b/pyproject.toml
+@@ -13,6 +13,13 @@ classifiers = [
+ "Programming Language :: Python :: Implementation :: PyPy",
+ ]
+ dependencies = ["tomli>=1.1.0 ; python_version<'3.11'"]
++dynamic = [
++ "authors",
++ "description",
++ "license",
++ "readme",
++ "version"
++]
+
+ [project.optional-dependencies]
+ zig = [
+--
+2.25.1
+
diff --git a/package/python-maturin/python-maturin.hash b/package/python-maturin/python-maturin.hash
new file mode 100644
index 0000000000..e9ba83e78e
--- /dev/null
+++ b/package/python-maturin/python-maturin.hash
@@ -0,0 +1,5 @@
+# Locally calculated after vendoring
+sha256 092db51dfd1479e3abfc8eef4b109b6ab504481959e383090827e2024f09aab3 maturin-0.12.15.tar.gz
+# Locally computed sha256 checksums
+sha256 a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2 license-apache
+sha256 ea7882c559733766ad08343bde1d1ec80a4967c03a738fb8e0058ef6289f7b7c license-mit
diff --git a/package/python-maturin/python-maturin.mk b/package/python-maturin/python-maturin.mk
new file mode 100644
index 0000000000..f6daabc008
--- /dev/null
+++ b/package/python-maturin/python-maturin.mk
@@ -0,0 +1,20 @@
+################################################################################
+#
+# python-maturin
+#
+################################################################################
+
+PYTHON_MATURIN_VERSION = 0.12.15
+PYTHON_MATURIN_SOURCE = maturin-$(PYTHON_MATURIN_VERSION).tar.gz
+PYTHON_MATURIN_SITE = https://files.pythonhosted.org/packages/30/4d/b8a32e0bd711f7905fa8f10487be7dbf9992c5b5b3bfa8734abf2487d967
+PYTHON_MATURIN_SETUP_TYPE = setuptools
+PYTHON_MATURIN_LICENSE = Apache-2.0 or MIT
+PYTHON_MATURIN_LICENSE_FILES = license-apache license-mit
+HOST_PYTHON_MATURIN_DEPENDENCIES = host-python-tomli host-rustc
+HOST_PYTHON_MATURIN_ENV = $(HOST_PKG_CARGO_ENV)
+# We need to vendor the Cargo crates at download time
+PYTHON_MATURIN_DOWNLOAD_POST_PROCESS = cargo
+PYTHON_MATURIN_DOWNLOAD_DEPENDENCIES = host-rustc
+HOST_PYTHON_MATURIN_DL_ENV = $(HOST_PKG_CARGO_ENV)
+
+$(eval $(host-python-package))
--
2.25.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [Buildroot] [PATCH 2/2] package/python-orjson: bump to version 3.6.8
2022-05-09 22:10 [Buildroot] [PATCH 1/2] package/python-maturin: new package James Hilliard
@ 2022-05-09 22:10 ` James Hilliard
2022-05-11 22:05 ` [Buildroot] [PATCH 1/2] package/python-maturin: new package Graeme Smecher
1 sibling, 0 replies; 3+ messages in thread
From: James Hilliard @ 2022-05-09 22:10 UTC (permalink / raw)
To: buildroot; +Cc: James Hilliard, Graeme Smecher, Thomas Petazzoni, Asaf Kahlon
Convert package to use python infrastructure instead of cargo
infrastructure.
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
---
package/python-orjson/python-orjson.hash | 5 +++--
package/python-orjson/python-orjson.mk | 24 ++++++++++++------------
2 files changed, 15 insertions(+), 14 deletions(-)
diff --git a/package/python-orjson/python-orjson.hash b/package/python-orjson/python-orjson.hash
index 5ef2726d82..06cc5cae79 100644
--- a/package/python-orjson/python-orjson.hash
+++ b/package/python-orjson/python-orjson.hash
@@ -1,4 +1,5 @@
-# Locally calculated
-sha256 4713b120ad86b1b273f5952cbf9578c13d0f453064bd26d823e04a10c84824e6 python-orjson-3.6.7.tar.gz
+# Locally calculated after vendoring
+sha256 40b95576b81916d167f7a44829401acb3b6cbbfe9840b5ed88c9535a86507d7b orjson-3.6.8.tar.gz
+# Locally computed sha256 checksums
sha256 a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2 LICENSE-APACHE
sha256 23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3 LICENSE-MIT
diff --git a/package/python-orjson/python-orjson.mk b/package/python-orjson/python-orjson.mk
index 5de4b2c5fa..ccbaf37c6d 100644
--- a/package/python-orjson/python-orjson.mk
+++ b/package/python-orjson/python-orjson.mk
@@ -4,19 +4,19 @@
#
################################################################################
-PYTHON_ORJSON_VERSION = 3.6.7
-PYTHON_ORJSON_SITE = $(call github,ijl,orjson,$(PYTHON_ORJSON_VERSION))
+PYTHON_ORJSON_VERSION = 3.6.8
+PYTHON_ORJSON_SOURCE = orjson-$(PYTHON_ORJSON_VERSION).tar.gz
+PYTHON_ORJSON_SITE = https://files.pythonhosted.org/packages/14/8e/7e745d867466bdafb12ab7b0179d40f23f55639f7cd14bd375acfa74aca2
+PYTHON_ORJSON_SETUP_TYPE = pep517
PYTHON_ORJSON_LICENSE = Apache-2.0 or MIT
PYTHON_ORJSON_LICENSE_FILES = LICENSE-APACHE LICENSE-MIT
-PYTHON_ORJSON_DEPENDENCIES = host-python-cffi
-PYTHON_ORJSON_CARGO_ENV = \
+PYTHON_ORJSON_DEPENDENCIES = host-python-cffi host-python-maturin
+PYTHON_ORJSON_ENV = \
+ $(PKG_CARGO_ENV) \
PYO3_CROSS_LIB_DIR="$(STAGING_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR)"
+# We need to vendor the Cargo crates at download time
+PYTHON_ORJSON_DOWNLOAD_POST_PROCESS = cargo
+PYTHON_ORJSON_DOWNLOAD_DEPENDENCIES = host-rustc
+PYTHON_ORJSON_DL_ENV = $(PKG_CARGO_ENV)
-# orjson uses "maturin" to generate distribution packages - rather than teach
-# buildroot how to understand this, we reach in and install directly.
-define PYTHON_ORJSON_INSTALL_TARGET_CMDS
- $(INSTALL) -m 0755 -D $(@D)/target/$(RUSTC_TARGET_NAME)/release/liborjson.so \
- $(TARGET_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR)/site-packages/orjson.so
-endef
-
-$(eval $(cargo-package))
+$(eval $(python-package))
--
2.25.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [Buildroot] [PATCH 1/2] package/python-maturin: new package
2022-05-09 22:10 [Buildroot] [PATCH 1/2] package/python-maturin: new package James Hilliard
2022-05-09 22:10 ` [Buildroot] [PATCH 2/2] package/python-orjson: bump to version 3.6.8 James Hilliard
@ 2022-05-11 22:05 ` Graeme Smecher
1 sibling, 0 replies; 3+ messages in thread
From: Graeme Smecher @ 2022-05-11 22:05 UTC (permalink / raw)
To: James Hilliard, buildroot; +Cc: Thomas Petazzoni, Asaf Kahlon
Hi all,
On 2022-05-09 15:10, James Hilliard wrote:
> This is pep517 pyo3 build backend that's an alternative to
> python-setuptools-rust.
>
> Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
Tested-by: Graeme Smecher <gsmecher@threespeedlogic.com>
best,
Graeme
> ---
> .../0001-Fix-invalid-pyproject.toml.patch | 62 +++++++++++++++++++
> package/python-maturin/python-maturin.hash | 5 ++
> package/python-maturin/python-maturin.mk | 20 ++++++
> 3 files changed, 87 insertions(+)
> create mode 100644 package/python-maturin/0001-Fix-invalid-pyproject.toml.patch
> create mode 100644 package/python-maturin/python-maturin.hash
> create mode 100644 package/python-maturin/python-maturin.mk
>
> diff --git a/package/python-maturin/0001-Fix-invalid-pyproject.toml.patch b/package/python-maturin/0001-Fix-invalid-pyproject.toml.patch
> new file mode 100644
> index 0000000000..7d227fea18
> --- /dev/null
> +++ b/package/python-maturin/0001-Fix-invalid-pyproject.toml.patch
> @@ -0,0 +1,62 @@
> +From 9ad69941d02e494d45ee67f3bcccc83c0bb4cdcd Mon Sep 17 00:00:00 2001
> +From: James Hilliard <james.hilliard1@gmail.com>
> +Date: Mon, 9 May 2022 14:37:36 -0600
> +Subject: [PATCH] Fix invalid pyproject.toml
> +
> +These attributes should be marked dynamic.
> +
> +Fixes:
> +configuration error: `project` must contain ['version'] properties
> +
> +Fixes:
> +The following seems to be defined outside of `pyproject.toml`:
> +
> +`description = 'Build and publish crates with pyo3, rust-cpython and cffi bindings as well as rust binaries as python packages'`
> +
> +According to the spec (see the link bellow), however, setuptools CANNOT
> +consider this value unless 'description' is listed as `dynamic`.
> +
> +Fixes:
> +The following seems to be defined outside of `pyproject.toml`:
> +
> +`license = 'MIT OR Apache-2.0'`
> +
> +According to the spec (see the link bellow), however, setuptools CANNOT
> +consider this value unless 'license' is listed as `dynamic`.
> +
> +Fixes:
> +The following seems to be defined outside of `pyproject.toml`:
> +
> +`authors = 'konstin'`
> +
> +According to the spec (see the link bellow), however, setuptools CANNOT
> +consider this value unless 'authors' is listed as `dynamic`.
> +
> +Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
> +[Upstream status:
> +https://github.com/PyO3/maturin/pull/908]
> +---
> + pyproject.toml | 7 +++++++
> + 1 file changed, 7 insertions(+)
> +
> +diff --git a/pyproject.toml b/pyproject.toml
> +index 207ceb7..329faae 100644
> +--- a/pyproject.toml
> ++++ b/pyproject.toml
> +@@ -13,6 +13,13 @@ classifiers = [
> + "Programming Language :: Python :: Implementation :: PyPy",
> + ]
> + dependencies = ["tomli>=1.1.0 ; python_version<'3.11'"]
> ++dynamic = [
> ++ "authors",
> ++ "description",
> ++ "license",
> ++ "readme",
> ++ "version"
> ++]
> +
> + [project.optional-dependencies]
> + zig = [
> +--
> +2.25.1
> +
> diff --git a/package/python-maturin/python-maturin.hash b/package/python-maturin/python-maturin.hash
> new file mode 100644
> index 0000000000..e9ba83e78e
> --- /dev/null
> +++ b/package/python-maturin/python-maturin.hash
> @@ -0,0 +1,5 @@
> +# Locally calculated after vendoring
> +sha256 092db51dfd1479e3abfc8eef4b109b6ab504481959e383090827e2024f09aab3 maturin-0.12.15.tar.gz
> +# Locally computed sha256 checksums
> +sha256 a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2 license-apache
> +sha256 ea7882c559733766ad08343bde1d1ec80a4967c03a738fb8e0058ef6289f7b7c license-mit
> diff --git a/package/python-maturin/python-maturin.mk b/package/python-maturin/python-maturin.mk
> new file mode 100644
> index 0000000000..f6daabc008
> --- /dev/null
> +++ b/package/python-maturin/python-maturin.mk
> @@ -0,0 +1,20 @@
> +################################################################################
> +#
> +# python-maturin
> +#
> +################################################################################
> +
> +PYTHON_MATURIN_VERSION = 0.12.15
> +PYTHON_MATURIN_SOURCE = maturin-$(PYTHON_MATURIN_VERSION).tar.gz
> +PYTHON_MATURIN_SITE = https://files.pythonhosted.org/packages/30/4d/b8a32e0bd711f7905fa8f10487be7dbf9992c5b5b3bfa8734abf2487d967
> +PYTHON_MATURIN_SETUP_TYPE = setuptools
> +PYTHON_MATURIN_LICENSE = Apache-2.0 or MIT
> +PYTHON_MATURIN_LICENSE_FILES = license-apache license-mit
> +HOST_PYTHON_MATURIN_DEPENDENCIES = host-python-tomli host-rustc
> +HOST_PYTHON_MATURIN_ENV = $(HOST_PKG_CARGO_ENV)
> +# We need to vendor the Cargo crates at download time
> +PYTHON_MATURIN_DOWNLOAD_POST_PROCESS = cargo
> +PYTHON_MATURIN_DOWNLOAD_DEPENDENCIES = host-rustc
> +HOST_PYTHON_MATURIN_DL_ENV = $(HOST_PKG_CARGO_ENV)
> +
> +$(eval $(host-python-package))
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2022-05-11 22:05 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-05-09 22:10 [Buildroot] [PATCH 1/2] package/python-maturin: new package James Hilliard
2022-05-09 22:10 ` [Buildroot] [PATCH 2/2] package/python-orjson: bump to version 3.6.8 James Hilliard
2022-05-11 22:05 ` [Buildroot] [PATCH 1/2] package/python-maturin: new package Graeme Smecher
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.