* [Buildroot] [PATCH 1/5] package/python-numpy: bump to version 1.25.0
@ 2023-06-26 18:15 James Hilliard
2023-06-26 18:15 ` [Buildroot] [PATCH 2/5] package/python-pythran: bump to version 0.13.1 James Hilliard
` (4 more replies)
0 siblings, 5 replies; 13+ messages in thread
From: James Hilliard @ 2023-06-26 18:15 UTC (permalink / raw)
To: buildroot
Cc: Eric Le Bihan, Gustavo Heinz, Michael Rommel, Samuel Martin,
Angelo Compagnucci, Asaf Kahlon, Guillaume William Brs,
James Hilliard, Jagan Teki, Thomas Petazzoni, Giulio Benetti
Migrate to meson package infrastructure.
License has changed due to date update:
https://github.com/numpy/numpy/commit/c1ffdbc0c29d48ece717acb5bfbf811c935b41f6
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
---
package/python-numpy/python-numpy.hash | 6 ++---
package/python-numpy/python-numpy.mk | 31 ++++++++++++--------------
2 files changed, 17 insertions(+), 20 deletions(-)
diff --git a/package/python-numpy/python-numpy.hash b/package/python-numpy/python-numpy.hash
index 9ac9280c78..6629cebbce 100644
--- a/package/python-numpy/python-numpy.hash
+++ b/package/python-numpy/python-numpy.hash
@@ -1,7 +1,7 @@
-# Copied from https://github.com/numpy/numpy/releases/tag/v1.23.5
-sha256 1b1766d6f397c18153d40015ddfc79ddb715cabadc04d2d228d4e5a8bc4ded1a numpy-1.23.5.tar.gz
+# Copied from https://github.com/numpy/numpy/releases/tag/v1.25.0
+sha256 f1accae9a28dc3cda46a91de86acf69de0d1b5f4edd44a9b0c3ceb8036dfff19 numpy-1.25.0.tar.gz
# License files, locally calculated
-sha256 0f88787955e7131224f53a8c3f3e859dc502408e3a539a4dcf61fb7888b5b984 LICENSE.txt
+sha256 1034d3bd61783f3b5e7ec3e7ca818f4da4135132323a0ef99f4c0edb3c7f6bd2 LICENSE.txt
sha256 c27d0a8026bdb8876562b720ab24d1688e3827a89f6083cd6e7e8caa9584aba3 numpy/core/src/multiarray/dragon4.c
sha256 fbc539f47d0cf83bc61378080fb873d5c14630126cacbfe754035c3926daa5ec numpy/core/include/numpy/libdivide/LICENSE.txt
sha256 a14cc25e10d40a3aa705b7de2fb764a6535d8ee9b2db4e1724900585457dfd55 numpy/linalg/lapack_lite/LICENSE.txt
diff --git a/package/python-numpy/python-numpy.mk b/package/python-numpy/python-numpy.mk
index 812bfdae4a..ad64a0cc6b 100644
--- a/package/python-numpy/python-numpy.mk
+++ b/package/python-numpy/python-numpy.mk
@@ -4,7 +4,7 @@
#
################################################################################
-PYTHON_NUMPY_VERSION = 1.23.5
+PYTHON_NUMPY_VERSION = 1.25.0
PYTHON_NUMPY_SOURCE = numpy-$(PYTHON_NUMPY_VERSION).tar.gz
PYTHON_NUMPY_SITE = https://github.com/numpy/numpy/releases/download/v$(PYTHON_NUMPY_VERSION)
PYTHON_NUMPY_LICENSE = BSD-3-Clause, MIT, Zlib
@@ -15,30 +15,27 @@ PYTHON_NUMPY_LICENSE_FILES = \
numpy/linalg/lapack_lite/LICENSE.txt \
tools/npy_tempita/license.txt
-PYTHON_NUMPY_SETUP_TYPE = setuptools
-PYTHON_NUMPY_DEPENDENCIES = host-python-cython
+PYTHON_NUMPY_DEPENDENCIES = host-python-cython python3
HOST_PYTHON_NUMPY_DEPENDENCIES = host-python-cython
+PYTHON_NUMPY_CONF_ENV += \
+ _PYTHON_SYSCONFIGDATA_NAME=$(PKG_PYTHON_SYSCONFIGDATA_NAME) \
+ PYTHONPATH=$(PYTHON3_PATH)
+
ifeq ($(BR2_PACKAGE_LAPACK),y)
PYTHON_NUMPY_DEPENDENCIES += lapack
+PYTHON_NUMPY_CONF_OPTS = -Dlapack=lapack
else
-PYTHON_NUMPY_ENV += BLAS=None LAPACK=None
+PYTHON_NUMPY_CONF_OPTS = -Dlapack=""
endif
-ifeq ($(BR2_TOOLCHAIN_HAS_FORTRAN),y)
-PYTHON_NUMPY_BUILD_OPTS = --fcompiler=gnu95
-PYTHON_NUMPY_ENV += F90=$(TARGET_FC)
+ifeq ($(BR2_PACKAGE_OPENBLAS),y)
+PYTHON_NUMPY_DEPENDENCIES += openblas
+PYTHON_NUMPY_CONF_OPTS += -Dblas=openblas
else
-PYTHON_NUMPY_BUILD_OPTS = --fcompiler=None
+PYTHON_NUMPY_CONF_OPTS += -Dblas=""
endif
-define PYTHON_NUMPY_CONFIGURE_CMDS
- -rm -f $(@D)/site.cfg
- echo "[DEFAULT]" >> $(@D)/site.cfg
- echo "library_dirs = $(STAGING_DIR)/usr/lib" >> $(@D)/site.cfg
- echo "include_dirs = $(STAGING_DIR)/usr/include" >> $(@D)/site.cfg
-endef
-
# Fixup the npymath.ini prefix path with actual target staging area where
# numpy core was built. Without this, target builds using numpy distutils
# extensions like python-scipy, python-numba cannot find -lnpymath since
@@ -55,5 +52,5 @@ PYTHON_NUMPY_POST_INSTALL_STAGING_HOOKS += PYTHON_NUMPY_FIXUP_NPY_PKG_CONFIG_FIL
# in the staging area.
PYTHON_NUMPY_INSTALL_STAGING = YES
-$(eval $(python-package))
-$(eval $(host-python-package))
+$(eval $(meson-package))
+$(eval $(host-meson-package))
--
2.34.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [Buildroot] [PATCH 2/5] package/python-pythran: bump to version 0.13.1
2023-06-26 18:15 [Buildroot] [PATCH 1/5] package/python-numpy: bump to version 1.25.0 James Hilliard
@ 2023-06-26 18:15 ` James Hilliard
2023-09-30 12:38 ` Thomas Petazzoni via buildroot
2023-06-26 18:15 ` [Buildroot] [PATCH 3/5] package/python-pybind: bump to version 2.10.4 James Hilliard
` (3 subsequent siblings)
4 siblings, 1 reply; 13+ messages in thread
From: James Hilliard @ 2023-06-26 18:15 UTC (permalink / raw)
To: buildroot
Cc: Eric Le Bihan, Gustavo Heinz, Michael Rommel, Samuel Martin,
Angelo Compagnucci, Asaf Kahlon, Guillaume William Brs,
James Hilliard, Jagan Teki, Thomas Petazzoni, Giulio Benetti
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
---
package/python-pythran/python-pythran.hash | 4 ++--
package/python-pythran/python-pythran.mk | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/package/python-pythran/python-pythran.hash b/package/python-pythran/python-pythran.hash
index 08348a5ccf..2dfc445b2f 100644
--- a/package/python-pythran/python-pythran.hash
+++ b/package/python-pythran/python-pythran.hash
@@ -1,6 +1,6 @@
# md5, sha256 from https://pypi.org/pypi/pythran/json
-md5 d2961ece35b4b9f44a84ef31df1b21ff pythran-0.12.0.tar.gz
-sha256 eff3dd0d3eebe57372f0d14f82985525e9bcdfb5b1d1010e1932cf9207060f9f pythran-0.12.0.tar.gz
+md5 3090288af50566af75cb058d1878aaad pythran-0.13.1.tar.gz
+sha256 8aad08162f010e5425a7b254dd68d83311b430bb29f9252dce2eff3ba39497dd pythran-0.13.1.tar.gz
# Locally computed sha256 checksums
sha256 0be9f14c66a9a3cb66d5263a6495437862ce0c9cdf60d4a6c36d1e51b1244c6e LICENSE
sha256 e1c0ed0a99e4462016d79d835f1f479b78c4d4a07fe66598e97f449503ffd178 docs/LICENSE.rst
diff --git a/package/python-pythran/python-pythran.mk b/package/python-pythran/python-pythran.mk
index 0d946be28a..25735ad95a 100644
--- a/package/python-pythran/python-pythran.mk
+++ b/package/python-pythran/python-pythran.mk
@@ -4,9 +4,9 @@
#
################################################################################
-PYTHON_PYTHRAN_VERSION = 0.12.0
+PYTHON_PYTHRAN_VERSION = 0.13.1
PYTHON_PYTHRAN_SOURCE = pythran-$(PYTHON_PYTHRAN_VERSION).tar.gz
-PYTHON_PYTHRAN_SITE = https://files.pythonhosted.org/packages/99/e0/ed0e81de05cfa4ecbcbceec6603d175387d8bc7a6332cbfd155d09958ccf
+PYTHON_PYTHRAN_SITE = https://files.pythonhosted.org/packages/8d/d8/b27e8dc3f3a03dcd317d40d9df0ae07ebbd85444585973ceba07716934d0
PYTHON_PYTHRAN_SETUP_TYPE = setuptools
PYTHON_PYTHRAN_LICENSE = BSD-3-Clause
PYTHON_PYTHRAN_LICENSE_FILES = LICENSE docs/LICENSE.rst
--
2.34.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [Buildroot] [PATCH 3/5] package/python-pybind: bump to version 2.10.4
2023-06-26 18:15 [Buildroot] [PATCH 1/5] package/python-numpy: bump to version 1.25.0 James Hilliard
2023-06-26 18:15 ` [Buildroot] [PATCH 2/5] package/python-pythran: bump to version 0.13.1 James Hilliard
@ 2023-06-26 18:15 ` James Hilliard
2023-09-30 12:40 ` Thomas Petazzoni via buildroot
2023-06-26 18:15 ` [Buildroot] [PATCH 4/5] package/python-scipy: bump to version 1.11.0 James Hilliard
` (2 subsequent siblings)
4 siblings, 1 reply; 13+ messages in thread
From: James Hilliard @ 2023-06-26 18:15 UTC (permalink / raw)
To: buildroot
Cc: Eric Le Bihan, Gustavo Heinz, Michael Rommel, Samuel Martin,
Angelo Compagnucci, Asaf Kahlon, Guillaume William Brs,
James Hilliard, Jagan Teki, Thomas Petazzoni, Giulio Benetti
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
---
package/python-pybind/python-pybind.hash | 2 +-
package/python-pybind/python-pybind.mk | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/package/python-pybind/python-pybind.hash b/package/python-pybind/python-pybind.hash
index 971eceaa07..154ca6d986 100644
--- a/package/python-pybind/python-pybind.hash
+++ b/package/python-pybind/python-pybind.hash
@@ -1,4 +1,4 @@
# Locally calculated
-sha256 5d8c4c5dda428d3a944ba3d2a5212cb988c2fae4670d58075a5a49075a6ca315 python-pybind-2.10.3.tar.gz
+sha256 832e2f309c57da9c1e6d4542dedd34b24e4192ecb4d62f6f4866a737454c9970 python-pybind-2.10.4.tar.gz
# License files, locally calculated
sha256 83965b843b98f670d3a85bd041ed4b372c8ec50d7b4a5995a83ac697ba675dcb LICENSE
diff --git a/package/python-pybind/python-pybind.mk b/package/python-pybind/python-pybind.mk
index 1fd106b981..b96089e8c5 100644
--- a/package/python-pybind/python-pybind.mk
+++ b/package/python-pybind/python-pybind.mk
@@ -4,7 +4,7 @@
#
################################################################################
-PYTHON_PYBIND_VERSION = 2.10.3
+PYTHON_PYBIND_VERSION = 2.10.4
PYTHON_PYBIND_SITE = $(call github,pybind,pybind11,v$(PYTHON_PYBIND_VERSION))
PYTHON_PYBIND_LICENSE = BSD-3-Clause
PYTHON_PYBIND_LICENSE_FILES = LICENSE
--
2.34.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [Buildroot] [PATCH 4/5] package/python-scipy: bump to version 1.11.0
2023-06-26 18:15 [Buildroot] [PATCH 1/5] package/python-numpy: bump to version 1.25.0 James Hilliard
2023-06-26 18:15 ` [Buildroot] [PATCH 2/5] package/python-pythran: bump to version 0.13.1 James Hilliard
2023-06-26 18:15 ` [Buildroot] [PATCH 3/5] package/python-pybind: bump to version 2.10.4 James Hilliard
@ 2023-06-26 18:15 ` James Hilliard
2023-09-30 12:40 ` Thomas Petazzoni via buildroot
2023-06-26 18:15 ` [Buildroot] [PATCH 5/5] package/pkg-python.mk: migrate setuptools to pep517 James Hilliard
2023-09-30 12:37 ` [Buildroot] [PATCH 1/5] package/python-numpy: bump to version 1.25.0 Thomas Petazzoni via buildroot
4 siblings, 1 reply; 13+ messages in thread
From: James Hilliard @ 2023-06-26 18:15 UTC (permalink / raw)
To: buildroot
Cc: Eric Le Bihan, Gustavo Heinz, Michael Rommel, Samuel Martin,
Angelo Compagnucci, Asaf Kahlon, Guillaume William Brs,
James Hilliard, Jagan Teki, Thomas Petazzoni, Giulio Benetti
Migrate to meson package infrastructure.
Add new openblas dependency.
License hash changed due to date update:
https://github.com/scipy/scipy/commit/d3f0aea40f64e478085b6478a9fe55ca8a75b087
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
---
package/python-scipy/Config.in | 3 +++
package/python-scipy/python-scipy.hash | 5 ++--
package/python-scipy/python-scipy.mk | 37 +++++++++-----------------
3 files changed, 18 insertions(+), 27 deletions(-)
diff --git a/package/python-scipy/Config.in b/package/python-scipy/Config.in
index 229b5997ad..0a4acb9699 100644
--- a/package/python-scipy/Config.in
+++ b/package/python-scipy/Config.in
@@ -2,10 +2,12 @@ config BR2_PACKAGE_PYTHON_SCIPY
bool "python-scipy"
depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS # python-numpy
depends on BR2_PACKAGE_LAPACK_ARCH_SUPPORTS # lapack
+ depends on BR2_PACKAGE_OPENBLAS_ARCH_SUPPORTS # openblas
depends on BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL # python-numpy
depends on BR2_TOOLCHAIN_HAS_FORTRAN # lapack
depends on BR2_INSTALL_LIBSTDCPP
select BR2_PACKAGE_LAPACK
+ select BR2_PACKAGE_OPENBLAS
select BR2_PACKAGE_PYTHON3_ZLIB # runtime scipy::io
select BR2_PACKAGE_PYTHON_NUMPY # runtime
select BR2_PACKAGE_PYTHON_PYBIND
@@ -20,6 +22,7 @@ config BR2_PACKAGE_PYTHON_SCIPY
comment "python-scipy needs toolchain w/ fortran and c++ and glibc or musl"
depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS
depends on BR2_PACKAGE_LAPACK_ARCH_SUPPORTS
+ depends on BR2_PACKAGE_OPENBLAS_ARCH_SUPPORTS
depends on !BR2_TOOLCHAIN_HAS_FORTRAN || \
!BR2_INSTALL_LIBSTDCPP || \
(!BR2_TOOLCHAIN_USES_GLIBC && !BR2_TOOLCHAIN_USES_MUSL)
diff --git a/package/python-scipy/python-scipy.hash b/package/python-scipy/python-scipy.hash
index 0274679c43..9634771139 100644
--- a/package/python-scipy/python-scipy.hash
+++ b/package/python-scipy/python-scipy.hash
@@ -1,7 +1,6 @@
# Locally generated
-sha256 0140dd24d14ce194fdb3df496c2190f0896ca84ac98bf5d69c3b3fb7bde1a1e9 scipy-1.8.1.tar.xz
-sha256 96599f8ec69a2cc609265eed13fc75090aacb28742260e55ce623788a33da19c LICENSE.txt
-sha256 37e64a498894ac7c3b070023e3689e954a8ecf8a23b90968d09a455f1b4f7b35 scipy/linalg/src/lapack_deprecations/LICENSE
+sha256 f9b0248cb9d08eead44cde47cbf6339f1e9aa0dfde28f5fb27950743e317bd5d scipy-1.11.0.tar.gz
+sha256 5517022426a56179540ee6eace15fd723ef8fdb83b2900fed2152dd2e2f972a2 LICENSE.txt
sha256 606209a000716c5f66e33e180ce08434b96ed17db4975ab9723c6b5fbcc89609 scipy/ndimage/LICENSE.txt
sha256 3df9207af2fdb861af0ae3b22026f163b9bcfab4e525dc4943afe2ffa3f77624 scipy/optimize/tnc/LICENSE
sha256 f0cedf52503b2d42b83411a0a16e6fefac346dfad8fddc66f50050150123470c scipy/sparse/linalg/_dsolve/SuperLU/License.txt
diff --git a/package/python-scipy/python-scipy.mk b/package/python-scipy/python-scipy.mk
index a8c23c6c88..3010cfbd54 100644
--- a/package/python-scipy/python-scipy.mk
+++ b/package/python-scipy/python-scipy.mk
@@ -4,9 +4,9 @@
#
################################################################################
-PYTHON_SCIPY_VERSION = 1.8.1
-PYTHON_SCIPY_SOURCE = scipy-$(PYTHON_SCIPY_VERSION).tar.xz
-PYTHON_SCIPY_SITE = https://github.com/scipy/scipy/releases/download/v$(PYTHON_SCIPY_VERSION)
+PYTHON_SCIPY_VERSION = 1.11.0
+PYTHON_SCIPY_SOURCE = scipy-$(PYTHON_SCIPY_VERSION).tar.gz
+PYTHON_SCIPY_SITE = https://files.pythonhosted.org/packages/fa/d0/724c8204f87b6f807e3e67de32b8b4922d579154a448ce94e89129064bf1
PYTHON_SCIPY_LICENSE = \
BSD-3-Clause, \
BSD-2-Clause, \
@@ -16,7 +16,6 @@ PYTHON_SCIPY_LICENSE = \
Qhull
PYTHON_SCIPY_LICENSE_FILES = \
LICENSE.txt \
- scipy/linalg/src/lapack_deprecations/LICENSE \
scipy/ndimage/LICENSE.txt \
scipy/optimize/tnc/LICENSE \
scipy/sparse/linalg/_dsolve/SuperLU/License.txt \
@@ -25,34 +24,24 @@ PYTHON_SCIPY_LICENSE_FILES = \
PYTHON_SCIPY_CPE_ID_VENDOR = scipy
PYTHON_SCIPY_CPE_ID_PRODUCT = scipy
PYTHON_SCIPY_DEPENDENCIES += \
+ host-python-cython \
host-python-numpy \
host-python-pythran \
zlib \
lapack \
+ openblas \
+ python3 \
python-numpy \
python-pybind
PYTHON_SCIPY_INSTALL_STAGING = YES
-PYTHON_SCIPY_SETUP_TYPE = setuptools
-PYTHON_SCIPY_BUILD_OPTS = config_fc --fcompiler=gnu95
+PYTHON_SCIPY_CONF_ENV += \
+ _PYTHON_SYSCONFIGDATA_NAME=$(PKG_PYTHON_SYSCONFIGDATA_NAME) \
+ PYTHONPATH=$(PYTHON3_PATH)
-PYTHON_SCIPY_LDFLAGS = $(TARGET_LDFLAGS) -shared \
- -L$(PYTHON3_PATH)/site-packages/numpy/core/lib
-# -lnpyrandom localization
-PYTHON_SCIPY_LDFLAGS += \
- -L$(STAGING_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR)/site-packages/numpy/random/lib
+PYTHON_SCIPY_CONF_OPTS = -Dblas=openblas -Dlapack=lapack
-PYTHON_SCIPY_ENV = \
- F90=$(TARGET_FC) \
- LDFLAGS="$(PYTHON_SCIPY_LDFLAGS)"
+PYTHON_SCIPY_MESON_EXTRA_PROPERTIES = \
+ numpy-include-dir='$(STAGING_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR)/site-packages/numpy/core/include'
-# Provide system configuration options to numpy distutils extensions, telling
-# to find all include files and libraries in staging directory.
-define PYTHON_SCIPY_CONFIGURE_CMDS
- -rm -f $(@D)/site.cfg
- echo "[DEFAULT]" >> $(@D)/site.cfg
- echo "library_dirs = $(STAGING_DIR)/usr/lib" >> $(@D)/site.cfg
- echo "include_dirs = $(STAGING_DIR)/usr/include" >> $(@D)/site.cfg
-endef
-
-$(eval $(python-package))
+$(eval $(meson-package))
--
2.34.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [Buildroot] [PATCH 5/5] package/pkg-python.mk: migrate setuptools to pep517
2023-06-26 18:15 [Buildroot] [PATCH 1/5] package/python-numpy: bump to version 1.25.0 James Hilliard
` (2 preceding siblings ...)
2023-06-26 18:15 ` [Buildroot] [PATCH 4/5] package/python-scipy: bump to version 1.11.0 James Hilliard
@ 2023-06-26 18:15 ` James Hilliard
2023-07-10 17:53 ` Thomas Petazzoni via buildroot
2023-08-26 22:11 ` Thomas Petazzoni via buildroot
2023-09-30 12:37 ` [Buildroot] [PATCH 1/5] package/python-numpy: bump to version 1.25.0 Thomas Petazzoni via buildroot
4 siblings, 2 replies; 13+ messages in thread
From: James Hilliard @ 2023-06-26 18:15 UTC (permalink / raw)
To: buildroot
Cc: Eric Le Bihan, Gustavo Heinz, Michael Rommel, Samuel Martin,
Angelo Compagnucci, Asaf Kahlon, Guillaume William Brs,
James Hilliard, Jagan Teki, Thomas Petazzoni, Giulio Benetti
Now that setuptools and its dependencies are using pep517 we can
migrate the setuptools infrastructure itself to use the pep517
build frontend.
As part of this we need to migrate the all python packages using
_BUILD_OPTS to the new config settings format used by the pep517
build frontend.
We also need to add a patch fixing a bug in python-pypa-build which
was preventing the config settings from being passed to some of the
pep517 build hooks.
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
---
package/pkg-python.mk | 21 +++-------
package/python-evdev/python-evdev.mk | 4 +-
package/python-lxml/python-lxml.mk | 8 ++--
package/python-m2crypto/python-m2crypto.mk | 4 +-
package/python-pillow/python-pillow.mk | 35 +++++++++--------
package/python-psycopg2/python-psycopg2.mk | 5 ++-
...ig_settings-are-passed-to-get_requir.patch | 38 +++++++++++++++++++
package/python-pyzmq/python-pyzmq.mk | 4 +-
package/python-uvloop/python-uvloop.mk | 6 ++-
9 files changed, 78 insertions(+), 47 deletions(-)
create mode 100644 package/python-pypa-build/0001-main-ensure-config_settings-are-passed-to-get_requir.patch
diff --git a/package/pkg-python.mk b/package/pkg-python.mk
index 85374ae8bb..a1aed89284 100644
--- a/package/pkg-python.mk
+++ b/package/pkg-python.mk
@@ -183,19 +183,7 @@ $(2)_BASE_ENV = $$(HOST_PKG_PYTHON_DISTUTILS_ENV)
$(2)_BASE_BUILD_CMD = setup.py build
$(2)_BASE_INSTALL_CMD = setup.py install $$(HOST_PKG_PYTHON_DISTUTILS_INSTALL_OPTS)
endif
-# Setuptools
-else ifeq ($$($(2)_SETUP_TYPE),setuptools)
-ifeq ($(4),target)
-$(2)_BASE_ENV = $$(PKG_PYTHON_SETUPTOOLS_ENV)
-$(2)_BASE_BUILD_CMD = $$(PKG_PYTHON_SETUPTOOLS_CMD) build
-$(2)_BASE_INSTALL_TARGET_CMD = $$(PKG_PYTHON_SETUPTOOLS_CMD) install --no-compile $$(PKG_PYTHON_SETUPTOOLS_INSTALL_TARGET_OPTS)
-$(2)_BASE_INSTALL_STAGING_CMD = $$(PKG_PYTHON_SETUPTOOLS_CMD) install $$(PKG_PYTHON_SETUPTOOLS_INSTALL_STAGING_OPTS)
-else
-$(2)_BASE_ENV = $$(HOST_PKG_PYTHON_SETUPTOOLS_ENV)
-$(2)_BASE_BUILD_CMD = $$(PKG_PYTHON_SETUPTOOLS_CMD) build
-$(2)_BASE_INSTALL_CMD = $$(PKG_PYTHON_SETUPTOOLS_CMD) install $$(HOST_PKG_PYTHON_SETUPTOOLS_INSTALL_OPTS)
-endif
-else ifneq ($$(filter flit pep517,$$($(2)_SETUP_TYPE)),)
+else ifneq ($$(filter flit pep517 setuptools,$$($(2)_SETUP_TYPE)),)
ifeq ($(4),target)
$(2)_BASE_ENV = $$(PKG_PYTHON_PEP517_ENV)
$(2)_BASE_BUILD_CMD = -m build -n -w
@@ -232,13 +220,14 @@ endif # ($(4),target)
# Setuptools based packages will need setuptools for the host Python
# interpreter (both host and target).
#
-ifeq ($$($(2)_SETUP_TYPE),setuptools)
-$(2)_DEPENDENCIES += host-python-setuptools
-else ifneq ($$(filter flit pep517,$$($(2)_SETUP_TYPE)),)
+ifneq ($$(filter flit pep517 setuptools,$$($(2)_SETUP_TYPE)),)
$(2)_DEPENDENCIES += host-python-pypa-build host-python-installer
ifeq ($$($(2)_SETUP_TYPE),flit)
$(2)_DEPENDENCIES += host-python-flit-core
endif
+ifeq ($$($(2)_SETUP_TYPE),setuptools)
+$(2)_DEPENDENCIES += host-python-setuptools
+endif
else ifeq ($$($(2)_SETUP_TYPE),flit-bootstrap)
# Don't add dependency on host-python-installer for
# host-python-installer itself, and its dependencies.
diff --git a/package/python-evdev/python-evdev.mk b/package/python-evdev/python-evdev.mk
index 5cf62b5160..b509b43e8a 100644
--- a/package/python-evdev/python-evdev.mk
+++ b/package/python-evdev/python-evdev.mk
@@ -12,7 +12,7 @@ PYTHON_EVDEV_LICENSE = Revised BSD License
PYTHON_EVDEV_LICENSE_FILES = LICENSE
PYTHON_EVDEV_BUILD_OPTS = \
- build_ecodes \
- --evdev-headers $(STAGING_DIR)/usr/include/linux/input.h:$(STAGING_DIR)/usr/include/linux/input-event-codes.h:$(STAGING_DIR)/usr/include/linux/uinput.h
+ -C--build-option=build_ecodes \
+ -C--build-option=--evdev-headers=$(STAGING_DIR)/usr/include/linux/input.h:$(STAGING_DIR)/usr/include/linux/input-event-codes.h:$(STAGING_DIR)/usr/include/linux/uinput.h
$(eval $(python-package))
diff --git a/package/python-lxml/python-lxml.mk b/package/python-lxml/python-lxml.mk
index 657622a962..4017257974 100644
--- a/package/python-lxml/python-lxml.mk
+++ b/package/python-lxml/python-lxml.mk
@@ -28,11 +28,11 @@ HOST_PYTHON_LXML_DEPENDENCIES = host-libxml2 host-libxslt host-zlib
# python-lxml needs these scripts in order to properly detect libxml2 and
# libxslt compiler and linker flags
PYTHON_LXML_BUILD_OPTS = \
- --xslt-config=$(STAGING_DIR)/usr/bin/xslt-config \
- --xml2-config=$(STAGING_DIR)/usr/bin/xml2-config
+ -C--build-option=--xslt-config=$(STAGING_DIR)/usr/bin/xslt-config \
+ -C--build-option=--xml2-config=$(STAGING_DIR)/usr/bin/xml2-config
HOST_PYTHON_LXML_BUILD_OPTS = \
- --xslt-config=$(HOST_DIR)/bin/xslt-config \
- --xml2-config=$(HOST_DIR)/bin/xml2-config
+ -C--build-option=--xslt-config=$(HOST_DIR)/bin/xslt-config \
+ -C--build-option=--xml2-config=$(HOST_DIR)/bin/xml2-config
$(eval $(python-package))
$(eval $(host-python-package))
diff --git a/package/python-m2crypto/python-m2crypto.mk b/package/python-m2crypto/python-m2crypto.mk
index 3c28fa3b0d..d95361e689 100644
--- a/package/python-m2crypto/python-m2crypto.mk
+++ b/package/python-m2crypto/python-m2crypto.mk
@@ -13,7 +13,9 @@ PYTHON_M2CRYPTO_LICENSE_FILES = LICENCE
PYTHON_M2CRYPTO_CPE_ID_VENDOR = m2crypto_project
PYTHON_M2CRYPTO_CPE_ID_PRODUCT = m2crypto
PYTHON_M2CRYPTO_DEPENDENCIES = openssl host-swig
-PYTHON_M2CRYPTO_BUILD_OPTS = --openssl=$(STAGING_DIR)/usr
+PYTHON_M2CRYPTO_BUILD_OPTS = \
+ -C--build-option=build_ext \
+ -C--build-option=--openssl=$(STAGING_DIR)/usr
# 0001-Mitigate-the-Bleichenbacher-timing-attacks-in-the-RSA-decryption-API-CVE-2020-25657.patch
PYTHON_M2CRYPTO_IGNORE_CVES += CVE-2020-25657
diff --git a/package/python-pillow/python-pillow.mk b/package/python-pillow/python-pillow.mk
index b69d329cde..0d79424666 100644
--- a/package/python-pillow/python-pillow.mk
+++ b/package/python-pillow/python-pillow.mk
@@ -14,61 +14,60 @@ PYTHON_PILLOW_CPE_ID_PRODUCT = pillow
PYTHON_PILLOW_SETUP_TYPE = setuptools
PYTHON_PILLOW_DEPENDENCIES = host-pkgconf
-PYTHON_PILLOW_BUILD_OPTS = build_ext --disable-platform-guessing
-PYTHON_PILLOW_INSTALL_TARGET_OPTS = $(PYTHON_PILLOW_BUILD_OPTS)
+PYTHON_PILLOW_BUILD_OPTS = -C--build-option=build_ext -C--build-option=--disable-platform-guessing
ifeq ($(BR2_PACKAGE_FREETYPE),y)
PYTHON_PILLOW_DEPENDENCIES += freetype
-PYTHON_PILLOW_BUILD_OPTS += --enable-freetype
+PYTHON_PILLOW_BUILD_OPTS += -C--build-option=--enable-freetype
else
-PYTHON_PILLOW_BUILD_OPTS += --disable-freetype
+PYTHON_PILLOW_BUILD_OPTS += -C--build-option=--disable-freetype
endif
ifeq ($(BR2_PACKAGE_JPEG),y)
PYTHON_PILLOW_DEPENDENCIES += jpeg
-PYTHON_PILLOW_BUILD_OPTS += --enable-jpeg
+PYTHON_PILLOW_BUILD_OPTS += -C--build-option=--enable-jpeg
else
-PYTHON_PILLOW_BUILD_OPTS += --disable-jpeg
+PYTHON_PILLOW_BUILD_OPTS += -C--build-option=--disable-jpeg
endif
ifeq ($(BR2_PACKAGE_LCMS2),y)
PYTHON_PILLOW_DEPENDENCIES += lcms2
-PYTHON_PILLOW_BUILD_OPTS += --enable-lcms
+PYTHON_PILLOW_BUILD_OPTS += -C--build-option=--enable-lcms
else
-PYTHON_PILLOW_BUILD_OPTS += --disable-lcms
+PYTHON_PILLOW_BUILD_OPTS += -C--build-option=--disable-lcms
endif
ifeq ($(BR2_PACKAGE_LIBXCB),y)
PYTHON_PILLOW_DEPENDENCIES += libxcb
-PYTHON_PILLOW_BUILD_OPTS += --enable-xcb
+PYTHON_PILLOW_BUILD_OPTS += -C--build-option=--enable-xcb
else
-PYTHON_PILLOW_BUILD_OPTS += --disable-xcb
+PYTHON_PILLOW_BUILD_OPTS += -C--build-option=--disable-xcb
endif
ifeq ($(BR2_PACKAGE_OPENJPEG),y)
PYTHON_PILLOW_DEPENDENCIES += openjpeg
-PYTHON_PILLOW_BUILD_OPTS += --enable-jpeg2000
+PYTHON_PILLOW_BUILD_OPTS += -C--build-option=--enable-jpeg2000
else
-PYTHON_PILLOW_BUILD_OPTS += --disable-jpeg2000
+PYTHON_PILLOW_BUILD_OPTS += -C--build-option=--disable-jpeg2000
endif
ifeq ($(BR2_PACKAGE_TIFF),y)
PYTHON_PILLOW_DEPENDENCIES += tiff
-PYTHON_PILLOW_BUILD_OPTS += --enable-tiff
+PYTHON_PILLOW_BUILD_OPTS += -C--build-option=--enable-tiff
else
-PYTHON_PILLOW_BUILD_OPTS += --disable-tiff
+PYTHON_PILLOW_BUILD_OPTS += -C--build-option=--disable-tiff
endif
ifeq ($(BR2_PACKAGE_WEBP),y)
PYTHON_PILLOW_DEPENDENCIES += webp
-PYTHON_PILLOW_BUILD_OPTS += --enable-webp
+PYTHON_PILLOW_BUILD_OPTS += -C--build-option=--enable-webp
ifeq ($(BR2_PACKAGE_WEBP_DEMUX)$(BR2_PACKAGE_WEBP_MUX),yy)
-PYTHON_PILLOW_BUILD_OPTS += --enable-webpmux
+PYTHON_PILLOW_BUILD_OPTS += -C--build-option=--enable-webpmux
else
-PYTHON_PILLOW_BUILD_OPTS += --disable-webpmux
+PYTHON_PILLOW_BUILD_OPTS += -C--build-option=--disable-webpmux
endif
else
-PYTHON_PILLOW_BUILD_OPTS += --disable-webp --disable-webpmux
+PYTHON_PILLOW_BUILD_OPTS += -C--build-option=--disable-webp -C--build-option=--disable-webpmux
endif
$(eval $(python-package))
diff --git a/package/python-psycopg2/python-psycopg2.mk b/package/python-psycopg2/python-psycopg2.mk
index fa23c2814f..6eea825b1c 100644
--- a/package/python-psycopg2/python-psycopg2.mk
+++ b/package/python-psycopg2/python-psycopg2.mk
@@ -13,7 +13,8 @@ PYTHON_PSYCOPG2_LICENSE_FILES = LICENSE
PYTHON_PSYCOPG2_DEPENDENCIES = postgresql
# Force psycopg2 to use the Buildroot provided postgresql version
# instead of the one from the host machine
-PYTHON_PSYCOPG2_BUILD_OPTS = build_ext --pg-config=$(STAGING_DIR)/usr/bin/pg_config
-PYTHON_PSYCOPG2_INSTALL_TARGET_OPTS = build_ext --pg-config=$(STAGING_DIR)/usr/bin/pg_config
+PYTHON_PSYCOPG2_BUILD_OPTS = \
+ -C--build-option=build_ext \
+ -C--build-option=--pg-config=$(STAGING_DIR)/usr/bin/pg_config
$(eval $(python-package))
diff --git a/package/python-pypa-build/0001-main-ensure-config_settings-are-passed-to-get_requir.patch b/package/python-pypa-build/0001-main-ensure-config_settings-are-passed-to-get_requir.patch
new file mode 100644
index 0000000000..23d1f37061
--- /dev/null
+++ b/package/python-pypa-build/0001-main-ensure-config_settings-are-passed-to-get_requir.patch
@@ -0,0 +1,38 @@
+From 44632c4f0758cbe8281581713c55538d44a4e7d4 Mon Sep 17 00:00:00 2001
+From: James Hilliard <james.hilliard1@gmail.com>
+Date: Sun, 25 Jun 2023 23:08:55 -0600
+Subject: [PATCH] main: ensure config_settings are passed to
+ get_requires_for_build
+
+Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
+[Upstream status:
+https://github.com/pypa/build/pull/627]
+---
+ src/build/__main__.py | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/build/__main__.py b/src/build/__main__.py
+index 743c28a..8d2c609 100644
+--- a/src/build/__main__.py
++++ b/src/build/__main__.py
+@@ -113,7 +113,7 @@ def _build_in_isolated_env(
+ # first install the build dependencies
+ env.install(builder.build_system_requires)
+ # then get the extra required dependencies from the backend (which was installed in the call above :P)
+- env.install(builder.get_requires_for_build(distribution))
++ env.install(builder.get_requires_for_build(distribution, config_settings or {}))
+ return builder.build(distribution, outdir, config_settings or {})
+
+
+@@ -127,7 +127,7 @@ def _build_in_current_env(
+ builder = _ProjectBuilder(srcdir)
+
+ if not skip_dependency_check:
+- missing = builder.check_dependencies(distribution)
++ missing = builder.check_dependencies(distribution, config_settings or {})
+ if missing:
+ dependencies = ''.join('\n\t' + dep for deps in missing for dep in (deps[0], _format_dep_chain(deps[1:])) if dep)
+ _cprint()
+--
+2.34.1
+
diff --git a/package/python-pyzmq/python-pyzmq.mk b/package/python-pyzmq/python-pyzmq.mk
index 5792957eaf..1b7bceae5e 100644
--- a/package/python-pyzmq/python-pyzmq.mk
+++ b/package/python-pyzmq/python-pyzmq.mk
@@ -12,7 +12,7 @@ PYTHON_PYZMQ_LICENSE = LGPL-3.0+, BSD-3-Clause, Apache-2.0
PYTHON_PYZMQ_LICENSE_FILES = COPYING.LESSER COPYING.BSD
PYTHON_PYZMQ_DEPENDENCIES = host-python-packaging zeromq
PYTHON_PYZMQ_SETUP_TYPE = setuptools
-PYTHON_PYZMQ_BUILD_OPTS = --zmq=$(STAGING_DIR)/usr
+PYTHON_PYZMQ_BUILD_OPTS = -C--build-option=--zmq=$(STAGING_DIR)/usr
# Due to issues with cross-compiling, hardcode to the zeromq in BR
define PYTHON_PYZMQ_PATCH_ZEROMQ_VERSION
@@ -23,7 +23,7 @@ endef
PYTHON_PYZMQ_POST_PATCH_HOOKS += PYTHON_PYZMQ_PATCH_ZEROMQ_VERSION
ifeq ($(BR2_PACKAGE_ZEROMQ_DRAFTS),y)
-PYTHON_PYZMQ_BUILD_OPTS += --enable-drafts
+PYTHON_PYZMQ_BUILD_OPTS += -C--build-option=--enable-drafts
endif
$(eval $(python-package))
diff --git a/package/python-uvloop/python-uvloop.mk b/package/python-uvloop/python-uvloop.mk
index 147062cf7b..b072f37313 100644
--- a/package/python-uvloop/python-uvloop.mk
+++ b/package/python-uvloop/python-uvloop.mk
@@ -10,8 +10,10 @@ PYTHON_UVLOOP_SITE = https://files.pythonhosted.org/packages/ba/86/6dda1760481ab
PYTHON_UVLOOP_SETUP_TYPE = setuptools
PYTHON_UVLOOP_LICENSE = Apache-2.0, MIT
PYTHON_UVLOOP_LICENSE_FILES = LICENSE-APACHE LICENSE-MIT
-PYTHON_UVLOOP_BUILD_OPTS = build_ext --inplace --use-system-libuv
-PYTHON_UVLOOP_INSTALL_TARGET_OPTS = build_ext --inplace --use-system-libuv
PYTHON_UVLOOP_DEPENDENCIES = libuv
+PYTHON_UVLOOP_BUILD_OPTS = \
+ -C--build-option=build_ext \
+ -C--build-option=--inplace \
+ -C--build-option=--use-system-libuv
$(eval $(python-package))
--
2.34.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 13+ messages in thread
* Re: [Buildroot] [PATCH 5/5] package/pkg-python.mk: migrate setuptools to pep517
2023-06-26 18:15 ` [Buildroot] [PATCH 5/5] package/pkg-python.mk: migrate setuptools to pep517 James Hilliard
@ 2023-07-10 17:53 ` Thomas Petazzoni via buildroot
2023-07-10 19:55 ` James Hilliard
2023-08-26 22:11 ` Thomas Petazzoni via buildroot
1 sibling, 1 reply; 13+ messages in thread
From: Thomas Petazzoni via buildroot @ 2023-07-10 17:53 UTC (permalink / raw)
To: James Hilliard
Cc: Eric Le Bihan, Gustavo Heinz, Michael Rommel, Samuel Martin,
Guillaume William Brs, Asaf Kahlon, Angelo Compagnucci,
Jagan Teki, buildroot, Giulio Benetti
Hello James,
On Mon, 26 Jun 2023 12:15:31 -0600
James Hilliard <james.hilliard1@gmail.com> wrote:
> Now that setuptools and its dependencies are using pep517 we can
> migrate the setuptools infrastructure itself to use the pep517
> build frontend.
>
> As part of this we need to migrate the all python packages using
> _BUILD_OPTS to the new config settings format used by the pep517
> build frontend.
>
> We also need to add a patch fixing a bug in python-pypa-build which
> was preventing the config settings from being passed to some of the
> pep517 build hooks.
>
> Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
Could you clarify the relationship between this PATCH 5/5 and the rest
of the series? They are part of the same series, so there must be some
kind of relationship, but I fail to see which one.
Thanks,
Thomas
--
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [Buildroot] [PATCH 5/5] package/pkg-python.mk: migrate setuptools to pep517
2023-07-10 17:53 ` Thomas Petazzoni via buildroot
@ 2023-07-10 19:55 ` James Hilliard
0 siblings, 0 replies; 13+ messages in thread
From: James Hilliard @ 2023-07-10 19:55 UTC (permalink / raw)
To: Thomas Petazzoni
Cc: Eric Le Bihan, Gustavo Heinz, Michael Rommel, Samuel Martin,
Guillaume William Brs, Asaf Kahlon, Angelo Compagnucci,
Jagan Teki, buildroot, Giulio Benetti
On Mon, Jul 10, 2023 at 11:53 AM Thomas Petazzoni
<thomas.petazzoni@bootlin.com> wrote:
>
> Hello James,
>
> On Mon, 26 Jun 2023 12:15:31 -0600
> James Hilliard <james.hilliard1@gmail.com> wrote:
>
> > Now that setuptools and its dependencies are using pep517 we can
> > migrate the setuptools infrastructure itself to use the pep517
> > build frontend.
> >
> > As part of this we need to migrate the all python packages using
> > _BUILD_OPTS to the new config settings format used by the pep517
> > build frontend.
> >
> > We also need to add a patch fixing a bug in python-pypa-build which
> > was preventing the config settings from being passed to some of the
> > pep517 build hooks.
> >
> > Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
>
> Could you clarify the relationship between this PATCH 5/5 and the rest
> of the series? They are part of the same series, so there must be some
> kind of relationship, but I fail to see which one.
Those packages have _BUILD_OPTS which has a different format for pep517,
I updated them to their latest versions and migrated them to meson so that they
won't break when we do the pep517 migration in our python infrastructure.
>
> Thanks,
>
> Thomas
> --
> Thomas Petazzoni, co-owner and CEO, Bootlin
> Embedded Linux and Kernel engineering and training
> https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [Buildroot] [PATCH 5/5] package/pkg-python.mk: migrate setuptools to pep517
2023-06-26 18:15 ` [Buildroot] [PATCH 5/5] package/pkg-python.mk: migrate setuptools to pep517 James Hilliard
2023-07-10 17:53 ` Thomas Petazzoni via buildroot
@ 2023-08-26 22:11 ` Thomas Petazzoni via buildroot
2023-08-27 6:37 ` James Hilliard
1 sibling, 1 reply; 13+ messages in thread
From: Thomas Petazzoni via buildroot @ 2023-08-26 22:11 UTC (permalink / raw)
To: James Hilliard
Cc: Eric Le Bihan, Gustavo Heinz, Michael Rommel, Samuel Martin,
Guillaume William Brs, Asaf Kahlon, Angelo Compagnucci,
Jagan Teki, buildroot, Giulio Benetti
On Mon, 26 Jun 2023 12:15:31 -0600
James Hilliard <james.hilliard1@gmail.com> wrote:
> Now that setuptools and its dependencies are using pep517 we can
> migrate the setuptools infrastructure itself to use the pep517
> build frontend.
>
> As part of this we need to migrate the all python packages using
> _BUILD_OPTS to the new config settings format used by the pep517
> build frontend.
>
> We also need to add a patch fixing a bug in python-pypa-build which
> was preventing the config settings from being passed to some of the
> pep517 build hooks.
>
> Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
I looked at this patch again, and one thing I believe I don't really
like is that it requires a "flag" day, at which "<pkg>_SETUP_TYPE =
setuptools" will change its semantic from the legacy setuptools to the
PEP517-based setuptools. We generally try to avoid this sort of "flag"
day as it's a pain... but also your proposal changes the
semantic/behavior of "<pkg>_SETUP_TYPE = setuptools", which can break
external packages (Python packages people have in their BR2_EXTERNAL,
or Buildroot forks).
One option is to add create a new pep517-setuptools <pkg>_SETUP_TYPE,
and gradually convert packages over. This way we allow the co-existence
of "SETUP_TYPE = setuptools" packages with "SETUP_TYPE =
pep517-setuptools" package. The obvious drawback is that we have 449
packages with <pkg>_SETUP_TYPE = setuptools, and I suppose that 95% of
them work just fine with the PEP517-based setuptools.
I'm not really sure how to proceed here.
Best regards,
Thomas
--
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [Buildroot] [PATCH 5/5] package/pkg-python.mk: migrate setuptools to pep517
2023-08-26 22:11 ` Thomas Petazzoni via buildroot
@ 2023-08-27 6:37 ` James Hilliard
0 siblings, 0 replies; 13+ messages in thread
From: James Hilliard @ 2023-08-27 6:37 UTC (permalink / raw)
To: Thomas Petazzoni
Cc: Eric Le Bihan, Gustavo Heinz, Michael Rommel, Samuel Martin,
Guillaume William Brs, Asaf Kahlon, Angelo Compagnucci,
Jagan Teki, buildroot, Giulio Benetti
On Sat, Aug 26, 2023 at 6:11 PM Thomas Petazzoni
<thomas.petazzoni@bootlin.com> wrote:
>
> On Mon, 26 Jun 2023 12:15:31 -0600
> James Hilliard <james.hilliard1@gmail.com> wrote:
>
> > Now that setuptools and its dependencies are using pep517 we can
> > migrate the setuptools infrastructure itself to use the pep517
> > build frontend.
> >
> > As part of this we need to migrate the all python packages using
> > _BUILD_OPTS to the new config settings format used by the pep517
> > build frontend.
> >
> > We also need to add a patch fixing a bug in python-pypa-build which
> > was preventing the config settings from being passed to some of the
> > pep517 build hooks.
> >
> > Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
>
> I looked at this patch again, and one thing I believe I don't really
> like is that it requires a "flag" day, at which "<pkg>_SETUP_TYPE =
> setuptools" will change its semantic from the legacy setuptools to the
> PEP517-based setuptools. We generally try to avoid this sort of "flag"
> day as it's a pain... but also your proposal changes the
> semantic/behavior of "<pkg>_SETUP_TYPE = setuptools", which can break
> external packages (Python packages people have in their BR2_EXTERNAL,
> or Buildroot forks).
The behavior difference is fairly minor and any breakage in BR2_EXTERNAL
packages should be trivial to fix. Maintaining legacy setuptools builds at the
same time as pep517 builds would add significant complexity IMO and increase
the likelihood of subtle bugs.
>
> One option is to add create a new pep517-setuptools <pkg>_SETUP_TYPE,
> and gradually convert packages over. This way we allow the co-existence
> of "SETUP_TYPE = setuptools" packages with "SETUP_TYPE =
> pep517-setuptools" package. The obvious drawback is that we have 449
> packages with <pkg>_SETUP_TYPE = setuptools, and I suppose that 95% of
> them work just fine with the PEP517-based setuptools.
IMO there's little point in keeping the legacy non-pep517 setuptools
infrastructure
around as invoking setup.py directly is being deprecated upstream. The
differences
between pep517 setuptools and non-pep517 setuptools builds is overall
rather small.
I should be able to quickly fix any breakage resulting from this
conversion once I'm
aware of it(I suspect the autobuilders will identify anything I missed
rather quickly).
>
> I'm not really sure how to proceed here.
>
> Best regards,
>
> Thomas
> --
> Thomas Petazzoni, co-owner and CEO, Bootlin
> Embedded Linux and Kernel engineering and training
> https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [Buildroot] [PATCH 1/5] package/python-numpy: bump to version 1.25.0
2023-06-26 18:15 [Buildroot] [PATCH 1/5] package/python-numpy: bump to version 1.25.0 James Hilliard
` (3 preceding siblings ...)
2023-06-26 18:15 ` [Buildroot] [PATCH 5/5] package/pkg-python.mk: migrate setuptools to pep517 James Hilliard
@ 2023-09-30 12:37 ` Thomas Petazzoni via buildroot
4 siblings, 0 replies; 13+ messages in thread
From: Thomas Petazzoni via buildroot @ 2023-09-30 12:37 UTC (permalink / raw)
To: James Hilliard
Cc: Eric Le Bihan, Gustavo Heinz, Michael Rommel, Samuel Martin,
Guillaume William Brs, Asaf Kahlon, Angelo Compagnucci,
Jagan Teki, buildroot, Giulio Benetti
On Mon, 26 Jun 2023 12:15:27 -0600
James Hilliard <james.hilliard1@gmail.com> wrote:
> Migrate to meson package infrastructure.
>
> License has changed due to date update:
> https://github.com/numpy/numpy/commit/c1ffdbc0c29d48ece717acb5bfbf811c935b41f6
>
> Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
> ---
> package/python-numpy/python-numpy.hash | 6 ++---
> package/python-numpy/python-numpy.mk | 31 ++++++++++++--------------
> 2 files changed, 17 insertions(+), 20 deletions(-)
Applied to master, thanks.
Thomas
--
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [Buildroot] [PATCH 2/5] package/python-pythran: bump to version 0.13.1
2023-06-26 18:15 ` [Buildroot] [PATCH 2/5] package/python-pythran: bump to version 0.13.1 James Hilliard
@ 2023-09-30 12:38 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 13+ messages in thread
From: Thomas Petazzoni via buildroot @ 2023-09-30 12:38 UTC (permalink / raw)
To: James Hilliard
Cc: Eric Le Bihan, Gustavo Heinz, Michael Rommel, Samuel Martin,
Guillaume William Brs, Asaf Kahlon, Angelo Compagnucci,
Jagan Teki, buildroot, Giulio Benetti
On Mon, 26 Jun 2023 12:15:28 -0600
James Hilliard <james.hilliard1@gmail.com> wrote:
> Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
> ---
> package/python-pythran/python-pythran.hash | 4 ++--
> package/python-pythran/python-pythran.mk | 4 ++--
> 2 files changed, 4 insertions(+), 4 deletions(-)
This was bumped separately in commit
cfde8aec04f67fd5d50c7fbd1ec73166fed0fbfb, so I've marked this patch as
not applicable.
Thomas
--
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [Buildroot] [PATCH 3/5] package/python-pybind: bump to version 2.10.4
2023-06-26 18:15 ` [Buildroot] [PATCH 3/5] package/python-pybind: bump to version 2.10.4 James Hilliard
@ 2023-09-30 12:40 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 13+ messages in thread
From: Thomas Petazzoni via buildroot @ 2023-09-30 12:40 UTC (permalink / raw)
To: James Hilliard
Cc: Eric Le Bihan, Gustavo Heinz, Michael Rommel, Samuel Martin,
Guillaume William Brs, Asaf Kahlon, Angelo Compagnucci,
Jagan Teki, buildroot, Giulio Benetti
On Mon, 26 Jun 2023 12:15:29 -0600
James Hilliard <james.hilliard1@gmail.com> wrote:
> Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
> ---
> package/python-pybind/python-pybind.hash | 2 +-
> package/python-pybind/python-pybind.mk | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
A more recent patch of yours, bumping to 2.11.1 was merged as
commit 75ceac87d4051c0155e9ea82f1e7ba0af1b18ed1 in the mean time, so I
marked this one as Not Applicable in patchwork.
Thanks!
Thomas
--
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [Buildroot] [PATCH 4/5] package/python-scipy: bump to version 1.11.0
2023-06-26 18:15 ` [Buildroot] [PATCH 4/5] package/python-scipy: bump to version 1.11.0 James Hilliard
@ 2023-09-30 12:40 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 13+ messages in thread
From: Thomas Petazzoni via buildroot @ 2023-09-30 12:40 UTC (permalink / raw)
To: James Hilliard
Cc: Eric Le Bihan, Gustavo Heinz, Michael Rommel, Samuel Martin,
Guillaume William Brs, Asaf Kahlon, Angelo Compagnucci,
Jagan Teki, buildroot, Giulio Benetti
On Mon, 26 Jun 2023 12:15:30 -0600
James Hilliard <james.hilliard1@gmail.com> wrote:
> Migrate to meson package infrastructure.
>
> Add new openblas dependency.
>
> License hash changed due to date update:
> https://github.com/scipy/scipy/commit/d3f0aea40f64e478085b6478a9fe55ca8a75b087
>
> Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
> ---
> package/python-scipy/Config.in | 3 +++
> package/python-scipy/python-scipy.hash | 5 ++--
> package/python-scipy/python-scipy.mk | 37 +++++++++-----------------
> 3 files changed, 18 insertions(+), 27 deletions(-)
Applied to master, thanks.
Thomas
--
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2023-09-30 12:40 UTC | newest]
Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-06-26 18:15 [Buildroot] [PATCH 1/5] package/python-numpy: bump to version 1.25.0 James Hilliard
2023-06-26 18:15 ` [Buildroot] [PATCH 2/5] package/python-pythran: bump to version 0.13.1 James Hilliard
2023-09-30 12:38 ` Thomas Petazzoni via buildroot
2023-06-26 18:15 ` [Buildroot] [PATCH 3/5] package/python-pybind: bump to version 2.10.4 James Hilliard
2023-09-30 12:40 ` Thomas Petazzoni via buildroot
2023-06-26 18:15 ` [Buildroot] [PATCH 4/5] package/python-scipy: bump to version 1.11.0 James Hilliard
2023-09-30 12:40 ` Thomas Petazzoni via buildroot
2023-06-26 18:15 ` [Buildroot] [PATCH 5/5] package/pkg-python.mk: migrate setuptools to pep517 James Hilliard
2023-07-10 17:53 ` Thomas Petazzoni via buildroot
2023-07-10 19:55 ` James Hilliard
2023-08-26 22:11 ` Thomas Petazzoni via buildroot
2023-08-27 6:37 ` James Hilliard
2023-09-30 12:37 ` [Buildroot] [PATCH 1/5] package/python-numpy: bump to version 1.25.0 Thomas Petazzoni via buildroot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox