mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-29 13:46:49 +00:00
Merge pull request #9226 from jernejsk/py-build
[LE13] Revamp python build process to be PEP 517 compatible
This commit is contained in:
commit
1c4e76d97e
@ -7,7 +7,7 @@ PKG_SHA256="b08d8569d6dc8fa91a42ba1e37f620fdcb19d6bf2330e4b7d7301431ddbe124c"
|
|||||||
PKG_LICENSE="Unlicense"
|
PKG_LICENSE="Unlicense"
|
||||||
PKG_SITE="http://abyz.me.uk/lg/"
|
PKG_SITE="http://abyz.me.uk/lg/"
|
||||||
PKG_URL="https://github.com/joan2937/lg/archive/v${PKG_VERSION}.tar.gz"
|
PKG_URL="https://github.com/joan2937/lg/archive/v${PKG_VERSION}.tar.gz"
|
||||||
PKG_DEPENDS_TARGET="toolchain Python3 swig:host"
|
PKG_DEPENDS_TARGET="toolchain Python3 swig:host setuptools:host"
|
||||||
PKG_LONGDESC="A library for Linux Single Board Computers (SBC) which allows control of the General Purpose Input Outputs (GPIO)"
|
PKG_LONGDESC="A library for Linux Single Board Computers (SBC) which allows control of the General Purpose Input Outputs (GPIO)"
|
||||||
PKG_TOOLCHAIN="manual"
|
PKG_TOOLCHAIN="manual"
|
||||||
|
|
||||||
@ -21,6 +21,6 @@ make_target() {
|
|||||||
(
|
(
|
||||||
cd PY_LGPIO
|
cd PY_LGPIO
|
||||||
swig -python lgpio.i
|
swig -python lgpio.i
|
||||||
python_target_env python setup.py build
|
python_target_env python3 -m build -n -w -x
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
@ -7,7 +7,7 @@ PKG_SHA256="1f899e43603184fac32f34d72498fc737952dbc9c97a8dd9467fadfdf4600cf9"
|
|||||||
PKG_LICENSE="GPL"
|
PKG_LICENSE="GPL"
|
||||||
PKG_SITE="https://i2c.wiki.kernel.org/index.php/I2C_Tools"
|
PKG_SITE="https://i2c.wiki.kernel.org/index.php/I2C_Tools"
|
||||||
PKG_URL="https://www.kernel.org/pub/software/utils/i2c-tools/${PKG_NAME}-${PKG_VERSION}.tar.xz"
|
PKG_URL="https://www.kernel.org/pub/software/utils/i2c-tools/${PKG_NAME}-${PKG_VERSION}.tar.xz"
|
||||||
PKG_DEPENDS_TARGET="toolchain Python3"
|
PKG_DEPENDS_TARGET="toolchain Python3 setuptools:host"
|
||||||
PKG_LONGDESC="A heterogeneous set of I2C tools for Linux."
|
PKG_LONGDESC="A heterogeneous set of I2C tools for Linux."
|
||||||
PKG_BUILD_FLAGS="-sysroot"
|
PKG_BUILD_FLAGS="-sysroot"
|
||||||
|
|
||||||
@ -20,7 +20,7 @@ make_target() {
|
|||||||
|
|
||||||
(
|
(
|
||||||
cd py-smbus
|
cd py-smbus
|
||||||
python_target_env python3 setup.py build
|
python_target_env python3 -m build -n -w -x
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -31,6 +31,6 @@ makeinstall_target() {
|
|||||||
install
|
install
|
||||||
(
|
(
|
||||||
cd py-smbus
|
cd py-smbus
|
||||||
exec_thread_safe python_target_env python3 setup.py install --root=${INSTALL} --prefix=/usr
|
python3 -m installer --overwrite-existing dist/*.whl -d ${INSTALL} -p /usr
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
@ -9,9 +9,4 @@ PKG_SITE="https://pypi.org/project/Jinja2/"
|
|||||||
PKG_URL="https://files.pythonhosted.org/packages/source/${PKG_NAME:0:1}/${PKG_NAME}/${PKG_NAME,,}-${PKG_VERSION}.tar.gz"
|
PKG_URL="https://files.pythonhosted.org/packages/source/${PKG_NAME:0:1}/${PKG_NAME}/${PKG_NAME,,}-${PKG_VERSION}.tar.gz"
|
||||||
PKG_DEPENDS_HOST="Python3:host setuptools:host MarkupSafe:host"
|
PKG_DEPENDS_HOST="Python3:host setuptools:host MarkupSafe:host"
|
||||||
PKG_LONGDESC="Jinja is a fast, expressive, extensible templating engine."
|
PKG_LONGDESC="Jinja is a fast, expressive, extensible templating engine."
|
||||||
PKG_TOOLCHAIN="manual"
|
PKG_TOOLCHAIN="python"
|
||||||
|
|
||||||
makeinstall_host() {
|
|
||||||
export DONT_BUILD_LEGACY_PYC=1
|
|
||||||
exec_thread_safe python3 setup.py install --prefix=${TOOLCHAIN}
|
|
||||||
}
|
|
||||||
|
@ -1,116 +0,0 @@
|
|||||||
From 24f91e001d3b7b7037b2fb572a633f3a7fa7ca1c Mon Sep 17 00:00:00 2001
|
|
||||||
From: Rudi Heitbaum <rudi@heitbaum.com>
|
|
||||||
Date: Wed, 17 Jul 2024 11:19:20 +0000
|
|
||||||
Subject: [PATCH] revert setuptools removal
|
|
||||||
|
|
||||||
---
|
|
||||||
setup.cfg | 81 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
|
||||||
setup.py | 8 ++++++
|
|
||||||
2 files changed, 89 insertions(+)
|
|
||||||
create mode 100644 setup.cfg
|
|
||||||
create mode 100644 setup.py
|
|
||||||
|
|
||||||
diff --git a/setup.cfg b/setup.cfg
|
|
||||||
new file mode 100644
|
|
||||||
index 0000000..b4531db
|
|
||||||
--- /dev/null
|
|
||||||
+++ b/setup.cfg
|
|
||||||
@@ -0,0 +1,81 @@
|
|
||||||
+[metadata]
|
|
||||||
+name = Jinja2
|
|
||||||
+version = attr: jinja2.__version__
|
|
||||||
+url = https://palletsprojects.com/p/jinja/
|
|
||||||
+project_urls =
|
|
||||||
+ Donate = https://palletsprojects.com/donate
|
|
||||||
+ Documentation = https://jinja.palletsprojects.com/
|
|
||||||
+ Changes = https://jinja.palletsprojects.com/changes/
|
|
||||||
+ Source Code = https://github.com/pallets/jinja/
|
|
||||||
+ Issue Tracker = https://github.com/pallets/jinja/issues/
|
|
||||||
+ Chat = https://discord.gg/pallets
|
|
||||||
+license = BSD-3-Clause
|
|
||||||
+license_files = LICENSE.rst
|
|
||||||
+maintainer = Pallets
|
|
||||||
+maintainer_email = contact@palletsprojects.com
|
|
||||||
+description = A very fast and expressive template engine.
|
|
||||||
+long_description = file: README.rst
|
|
||||||
+long_description_content_type = text/x-rst
|
|
||||||
+classifiers =
|
|
||||||
+ Development Status :: 5 - Production/Stable
|
|
||||||
+ Environment :: Web Environment
|
|
||||||
+ Intended Audience :: Developers
|
|
||||||
+ License :: OSI Approved :: BSD License
|
|
||||||
+ Operating System :: OS Independent
|
|
||||||
+ Programming Language :: Python
|
|
||||||
+ Topic :: Internet :: WWW/HTTP :: Dynamic Content
|
|
||||||
+ Topic :: Text Processing :: Markup :: HTML
|
|
||||||
+
|
|
||||||
+[options]
|
|
||||||
+packages = find:
|
|
||||||
+package_dir = = src
|
|
||||||
+include_package_data = True
|
|
||||||
+python_requires = >= 3.7
|
|
||||||
+# Dependencies are in setup.py for GitHub's dependency graph.
|
|
||||||
+
|
|
||||||
+[options.packages.find]
|
|
||||||
+where = src
|
|
||||||
+
|
|
||||||
+[options.entry_points]
|
|
||||||
+babel.extractors =
|
|
||||||
+ jinja2 = jinja2.ext:babel_extract[i18n]
|
|
||||||
+
|
|
||||||
+[tool:pytest]
|
|
||||||
+testpaths = tests
|
|
||||||
+filterwarnings =
|
|
||||||
+ error
|
|
||||||
+
|
|
||||||
+[coverage:run]
|
|
||||||
+branch = True
|
|
||||||
+source =
|
|
||||||
+ jinja2
|
|
||||||
+ tests
|
|
||||||
+
|
|
||||||
+[coverage:paths]
|
|
||||||
+source =
|
|
||||||
+ src
|
|
||||||
+ */site-packages
|
|
||||||
+
|
|
||||||
+[mypy]
|
|
||||||
+files = src/jinja2
|
|
||||||
+python_version = 3.7
|
|
||||||
+show_error_codes = True
|
|
||||||
+disallow_subclassing_any = True
|
|
||||||
+disallow_untyped_calls = True
|
|
||||||
+disallow_untyped_defs = True
|
|
||||||
+disallow_incomplete_defs = True
|
|
||||||
+no_implicit_optional = True
|
|
||||||
+local_partial_types = True
|
|
||||||
+no_implicit_reexport = True
|
|
||||||
+strict_equality = True
|
|
||||||
+warn_redundant_casts = True
|
|
||||||
+warn_unused_configs = True
|
|
||||||
+warn_unused_ignores = True
|
|
||||||
+warn_return_any = True
|
|
||||||
+warn_unreachable = True
|
|
||||||
+
|
|
||||||
+[mypy-jinja2.defaults]
|
|
||||||
+no_implicit_reexport = False
|
|
||||||
+
|
|
||||||
+[mypy-markupsafe]
|
|
||||||
+no_implicit_reexport = False
|
|
||||||
diff --git a/setup.py b/setup.py
|
|
||||||
new file mode 100644
|
|
||||||
index 0000000..79d0708
|
|
||||||
--- /dev/null
|
|
||||||
+++ b/setup.py
|
|
||||||
@@ -0,0 +1,8 @@
|
|
||||||
+from setuptools import setup
|
|
||||||
+
|
|
||||||
+# Metadata goes in setup.cfg. These are here for GitHub's dependency graph.
|
|
||||||
+setup(
|
|
||||||
+ name="Jinja2",
|
|
||||||
+ install_requires=["MarkupSafe>=2.0"],
|
|
||||||
+ extras_require={"i18n": ["Babel>=2.7"]},
|
|
||||||
+)
|
|
||||||
--
|
|
||||||
2.43.0
|
|
||||||
|
|
@ -10,9 +10,4 @@ PKG_SITE="https://pypi.org/project/Mako"
|
|||||||
PKG_URL="https://files.pythonhosted.org/packages/source/${PKG_NAME:0:1}/${PKG_NAME}/${PKG_NAME}-${PKG_VERSION}.tar.gz"
|
PKG_URL="https://files.pythonhosted.org/packages/source/${PKG_NAME:0:1}/${PKG_NAME}/${PKG_NAME}-${PKG_VERSION}.tar.gz"
|
||||||
PKG_DEPENDS_HOST="Python3:host setuptools:host MarkupSafe:host"
|
PKG_DEPENDS_HOST="Python3:host setuptools:host MarkupSafe:host"
|
||||||
PKG_LONGDESC="Mako is a super-fast templating language that borrows the best ideas from the existing templating languages."
|
PKG_LONGDESC="Mako is a super-fast templating language that borrows the best ideas from the existing templating languages."
|
||||||
PKG_TOOLCHAIN="manual"
|
PKG_TOOLCHAIN="python"
|
||||||
|
|
||||||
makeinstall_host() {
|
|
||||||
export DONT_BUILD_LEGACY_PYC=1
|
|
||||||
exec_thread_safe python3 setup.py install --prefix=${TOOLCHAIN}
|
|
||||||
}
|
|
||||||
|
@ -10,9 +10,4 @@ PKG_SITE="https://pypi.org/project/MarkupSafe/"
|
|||||||
PKG_URL="https://files.pythonhosted.org/packages/source/${PKG_NAME:0:1}/${PKG_NAME}/${PKG_NAME}-${PKG_VERSION}.tar.gz"
|
PKG_URL="https://files.pythonhosted.org/packages/source/${PKG_NAME:0:1}/${PKG_NAME}/${PKG_NAME}-${PKG_VERSION}.tar.gz"
|
||||||
PKG_DEPENDS_HOST="Python3:host setuptools:host"
|
PKG_DEPENDS_HOST="Python3:host setuptools:host"
|
||||||
PKG_LONGDESC="MarkupSafe implements a XML/HTML/XHTML Markup safe string for Python"
|
PKG_LONGDESC="MarkupSafe implements a XML/HTML/XHTML Markup safe string for Python"
|
||||||
PKG_TOOLCHAIN="manual"
|
PKG_TOOLCHAIN="python"
|
||||||
|
|
||||||
makeinstall_host() {
|
|
||||||
export DONT_BUILD_LEGACY_PYC=1
|
|
||||||
exec_thread_safe python3 setup.py install --prefix=${TOOLCHAIN}
|
|
||||||
}
|
|
||||||
|
22
packages/python/devel/flit/package.mk
Normal file
22
packages/python/devel/flit/package.mk
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
# SPDX-License-Identifier: GPL-2.0
|
||||||
|
# Copyright (C) 2024-present Team LibreELEC (https://libreelec.tv)
|
||||||
|
|
||||||
|
PKG_NAME="flit"
|
||||||
|
PKG_VERSION="3.9.0"
|
||||||
|
PKG_SHA256="72ad266176c4a3fcfab5f2930d76896059851240570ce9a98733b658cb786eba"
|
||||||
|
PKG_LICENSE="BSD"
|
||||||
|
PKG_SITE="https://pypi.org/project/flit-core/"
|
||||||
|
PKG_URL="https://files.pythonhosted.org/packages/source/f/flit_core/flit_core-${PKG_VERSION}.tar.gz"
|
||||||
|
PKG_SOURCE_DIR="flit_core-${PKG_VERSION}"
|
||||||
|
PKG_DEPENDS_HOST="Python3:host"
|
||||||
|
PKG_LONGDESC="flit provides a PEP 517 build backend for packages using Flit."
|
||||||
|
PKG_TOOLCHAIN="manual"
|
||||||
|
|
||||||
|
make_host() {
|
||||||
|
export DONT_BUILD_LEGACY_PYC=1
|
||||||
|
python3 -m flit_core.wheel
|
||||||
|
}
|
||||||
|
|
||||||
|
makeinstall_host() {
|
||||||
|
exec_thread_safe python3 -m bootstrap_install dist/*.whl --installdir=${TOOLCHAIN}/lib/${PKG_PYTHON_VERSION}/site-packages
|
||||||
|
}
|
@ -9,16 +9,9 @@ PKG_SITE="https://mesonbuild.com"
|
|||||||
PKG_URL="https://github.com/mesonbuild/meson/releases/download/${PKG_VERSION}/${PKG_NAME}-${PKG_VERSION}.tar.gz"
|
PKG_URL="https://github.com/mesonbuild/meson/releases/download/${PKG_VERSION}/${PKG_NAME}-${PKG_VERSION}.tar.gz"
|
||||||
PKG_DEPENDS_HOST="Python3:host setuptools:host"
|
PKG_DEPENDS_HOST="Python3:host setuptools:host"
|
||||||
PKG_LONGDESC="High productivity build system"
|
PKG_LONGDESC="High productivity build system"
|
||||||
PKG_TOOLCHAIN="manual"
|
PKG_TOOLCHAIN="python"
|
||||||
|
|
||||||
makeinstall_host() {
|
|
||||||
export DONT_BUILD_LEGACY_PYC=1
|
|
||||||
python3 setup.py build
|
|
||||||
}
|
|
||||||
|
|
||||||
makeinstall_host() {
|
|
||||||
exec_thread_safe python3 setup.py install --prefix=${TOOLCHAIN} --skip-build
|
|
||||||
|
|
||||||
|
post_makeinstall_target() {
|
||||||
# Avoid using full path to python3 that may exceed 128 byte limit.
|
# Avoid using full path to python3 that may exceed 128 byte limit.
|
||||||
# Instead use PATH as we know our toolchain is first.
|
# Instead use PATH as we know our toolchain is first.
|
||||||
sed -e '1 s/^#!.*$/#!\/usr\/bin\/env python3/' -i ${TOOLCHAIN}/bin/meson
|
sed -e '1 s/^#!.*$/#!\/usr\/bin\/env python3/' -i ${TOOLCHAIN}/bin/meson
|
||||||
|
13
packages/python/devel/pybuild/package.mk
Normal file
13
packages/python/devel/pybuild/package.mk
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
# SPDX-License-Identifier: GPL-2.0
|
||||||
|
# Copyright (C) 2024-present Team LibreELEC (https://libreelec.tv)
|
||||||
|
|
||||||
|
PKG_NAME="pybuild"
|
||||||
|
PKG_VERSION="1.2.1"
|
||||||
|
PKG_SHA256="526263f4870c26f26c433545579475377b2b7588b6f1eac76a001e873ae3e19d"
|
||||||
|
PKG_LICENSE="BSD"
|
||||||
|
PKG_SITE="https://pypi.org/project/build/"
|
||||||
|
PKG_URL="https://files.pythonhosted.org/packages/source/b/build/build-${PKG_VERSION}.tar.gz"
|
||||||
|
PKG_SOURCE_DIR="build-${PKG_VERSION}"
|
||||||
|
PKG_DEPENDS_HOST="flit:host pyproject-hooks:host pyinstaller:host pypackaging:host"
|
||||||
|
PKG_LONGDESC="A simple, correct Python build frontend."
|
||||||
|
PKG_TOOLCHAIN="python-flit"
|
@ -9,9 +9,4 @@ PKG_SITE="https://pypi.org/project/pycparser/"
|
|||||||
PKG_URL="https://files.pythonhosted.org/packages/source/${PKG_NAME:0:1}/${PKG_NAME}/${PKG_NAME}-${PKG_VERSION}.tar.gz"
|
PKG_URL="https://files.pythonhosted.org/packages/source/${PKG_NAME:0:1}/${PKG_NAME}/${PKG_NAME}-${PKG_VERSION}.tar.gz"
|
||||||
PKG_DEPENDS_HOST="Python3:host setuptools:host"
|
PKG_DEPENDS_HOST="Python3:host setuptools:host"
|
||||||
PKG_LONGDESC="Complete C99 parser in pure Python"
|
PKG_LONGDESC="Complete C99 parser in pure Python"
|
||||||
PKG_TOOLCHAIN="manual"
|
PKG_TOOLCHAIN="python"
|
||||||
|
|
||||||
makeinstall_host() {
|
|
||||||
export DONT_BUILD_LEGACY_PYC=1
|
|
||||||
exec_thread_safe python3 setup.py install --prefix="${TOOLCHAIN}"
|
|
||||||
}
|
|
||||||
|
@ -9,8 +9,4 @@ PKG_SITE="https://github.com/eliben/pyelftools"
|
|||||||
PKG_URL="https://github.com/eliben/pyelftools/archive/refs/tags/v${PKG_VERSION}.tar.gz"
|
PKG_URL="https://github.com/eliben/pyelftools/archive/refs/tags/v${PKG_VERSION}.tar.gz"
|
||||||
PKG_DEPENDS_HOST="Python3:host setuptools:host"
|
PKG_DEPENDS_HOST="Python3:host setuptools:host"
|
||||||
PKG_LONGDESC="Library for analyzing ELF files and DWARF debugging information"
|
PKG_LONGDESC="Library for analyzing ELF files and DWARF debugging information"
|
||||||
PKG_TOOLCHAIN="manual"
|
PKG_TOOLCHAIN="python"
|
||||||
|
|
||||||
makeinstall_host() {
|
|
||||||
exec_thread_safe python3 setup.py install --prefix=${TOOLCHAIN}
|
|
||||||
}
|
|
||||||
|
18
packages/python/devel/pyinstaller/package.mk
Normal file
18
packages/python/devel/pyinstaller/package.mk
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
# SPDX-License-Identifier: GPL-2.0
|
||||||
|
# Copyright (C) 2024-present Team LibreELEC (https://libreelec.tv)
|
||||||
|
|
||||||
|
PKG_NAME="pyinstaller"
|
||||||
|
PKG_VERSION="0.7.0"
|
||||||
|
PKG_SHA256="a26d3e3116289bb08216e0d0f7d925fcef0b0194eedfa0c944bcaaa106c4b631"
|
||||||
|
PKG_LICENSE="MIT"
|
||||||
|
PKG_SITE="https://pypi.org/project/installer/"
|
||||||
|
PKG_URL="https://files.pythonhosted.org/packages/source/i/installer/installer-${PKG_VERSION}.tar.gz"
|
||||||
|
PKG_SOURCE_DIR="installer-${PKG_VERSION}"
|
||||||
|
PKG_DEPENDS_HOST="flit:host"
|
||||||
|
PKG_LONGDESC="installer provides basic functionality and abstractions for handling wheels and installing packages from wheels."
|
||||||
|
PKG_TOOLCHAIN="python-flit"
|
||||||
|
|
||||||
|
makeinstall_host() {
|
||||||
|
# simple bootstrap install, but should be able to call itself if needed
|
||||||
|
unzip -o -d ${TOOLCHAIN}/lib/${PKG_PYTHON_VERSION}/site-packages dist/*.whl
|
||||||
|
}
|
@ -0,0 +1,82 @@
|
|||||||
|
From 4628ef70e1159d3cbab58d395f647c3dff887650 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Carl Smedstad <carl.smedstad@protonmail.com>
|
||||||
|
Date: Tue, 13 Feb 2024 21:10:22 +0100
|
||||||
|
Subject: [PATCH] Add --overwrite-existing option that overwrites existing
|
||||||
|
files
|
||||||
|
|
||||||
|
Implement the --overwrite-existing option that, if supplied, will make
|
||||||
|
installer overwrite any already existing package files instead of
|
||||||
|
failing. With this flag, installer can be used in an idempotent manner,
|
||||||
|
i.e. the same command can be executed multiple times with the same
|
||||||
|
result:
|
||||||
|
|
||||||
|
python -m installer --overwrite-existing --destdir=tmp dist/*.whl
|
||||||
|
python -m installer --overwrite-existing --destdir=tmp dist/*.whl
|
||||||
|
python -m installer --overwrite-existing --destdir=tmp dist/*.whl
|
||||||
|
---
|
||||||
|
src/installer/__main__.py | 6 ++++++
|
||||||
|
src/installer/destinations.py | 5 ++++-
|
||||||
|
tests/test_destinations.py | 22 ++++++++++++++++++++++
|
||||||
|
3 files changed, 32 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/src/installer/__main__.py b/src/installer/__main__.py
|
||||||
|
index 7ece8d213fe4..b587232912f9 100644
|
||||||
|
--- a/src/installer/__main__.py
|
||||||
|
+++ b/src/installer/__main__.py
|
||||||
|
@@ -51,6 +51,11 @@ def _get_main_parser() -> argparse.ArgumentParser:
|
||||||
|
choices=["all", "entries", "none"],
|
||||||
|
help="validate the wheel against certain part of its record (default=none)",
|
||||||
|
)
|
||||||
|
+ parser.add_argument(
|
||||||
|
+ "--overwrite-existing",
|
||||||
|
+ action="store_true",
|
||||||
|
+ help="silently overwrite existing files",
|
||||||
|
+ )
|
||||||
|
return parser
|
||||||
|
|
||||||
|
|
||||||
|
@@ -95,6 +100,7 @@ def _main(cli_args: Sequence[str], program: Optional[str] = None) -> None:
|
||||||
|
script_kind=get_launcher_kind(),
|
||||||
|
bytecode_optimization_levels=bytecode_levels,
|
||||||
|
destdir=args.destdir,
|
||||||
|
+ overwrite_existing=args.overwrite_existing,
|
||||||
|
)
|
||||||
|
installer.install(source, destination, {})
|
||||||
|
|
||||||
|
diff --git a/src/installer/destinations.py b/src/installer/destinations.py
|
||||||
|
index 31a254c387be..982e6adfc218 100644
|
||||||
|
--- a/src/installer/destinations.py
|
||||||
|
+++ b/src/installer/destinations.py
|
||||||
|
@@ -111,6 +111,7 @@ class SchemeDictionaryDestination(WheelDestination):
|
||||||
|
hash_algorithm: str = "sha256",
|
||||||
|
bytecode_optimization_levels: Collection[int] = (),
|
||||||
|
destdir: Optional[str] = None,
|
||||||
|
+ overwrite_existing: bool = False,
|
||||||
|
) -> None:
|
||||||
|
"""Construct a ``SchemeDictionaryDestination`` object.
|
||||||
|
|
||||||
|
@@ -127,6 +128,7 @@ class SchemeDictionaryDestination(WheelDestination):
|
||||||
|
:param destdir: A staging directory in which to write all files. This
|
||||||
|
is expected to be the filesystem root at runtime, so embedded paths
|
||||||
|
will be written as though this was the root.
|
||||||
|
+ :param overwrite_existing: silently overwrite existing files.
|
||||||
|
"""
|
||||||
|
self.scheme_dict = scheme_dict
|
||||||
|
self.interpreter = interpreter
|
||||||
|
@@ -134,6 +136,7 @@ class SchemeDictionaryDestination(WheelDestination):
|
||||||
|
self.hash_algorithm = hash_algorithm
|
||||||
|
self.bytecode_optimization_levels = bytecode_optimization_levels
|
||||||
|
self.destdir = destdir
|
||||||
|
+ self.overwrite_existing = overwrite_existing
|
||||||
|
|
||||||
|
def _path_with_destdir(self, scheme: Scheme, path: str) -> str:
|
||||||
|
file = os.path.join(self.scheme_dict[scheme], path)
|
||||||
|
@@ -161,7 +164,7 @@ class SchemeDictionaryDestination(WheelDestination):
|
||||||
|
- Hashes the written content, to determine the entry in the ``RECORD`` file.
|
||||||
|
"""
|
||||||
|
target_path = self._path_with_destdir(scheme, path)
|
||||||
|
- if os.path.exists(target_path):
|
||||||
|
+ if not self.overwrite_existing and os.path.exists(target_path):
|
||||||
|
message = f"File already exists: {target_path}"
|
||||||
|
raise FileExistsError(message)
|
||||||
|
|
13
packages/python/devel/pypackaging/package.mk
Normal file
13
packages/python/devel/pypackaging/package.mk
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
# SPDX-License-Identifier: GPL-2.0
|
||||||
|
# Copyright (C) 2024-present Team LibreELEC (https://libreelec.tv)
|
||||||
|
|
||||||
|
PKG_NAME="pypackaging"
|
||||||
|
PKG_VERSION="24.1"
|
||||||
|
PKG_SHA256="026ed72c8ed3fcce5bf8950572258698927fd1dbda10a5e981cdf0ac37f4f002"
|
||||||
|
PKG_LICENSE="BSD"
|
||||||
|
PKG_SITE="https://pypi.org/project/build/"
|
||||||
|
PKG_URL="https://files.pythonhosted.org/packages/source/p/packaging/packaging-${PKG_VERSION}.tar.gz"
|
||||||
|
PKG_SOURCE_DIR="packaging-${PKG_VERSION}"
|
||||||
|
PKG_DEPENDS_HOST="flit:host pyinstaller:host"
|
||||||
|
PKG_LONGDESC="Reusable core utilities for various Python Packaging interoperability specifications."
|
||||||
|
PKG_TOOLCHAIN="python-flit"
|
13
packages/python/devel/pyproject-hooks/package.mk
Normal file
13
packages/python/devel/pyproject-hooks/package.mk
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
# SPDX-License-Identifier: GPL-2.0
|
||||||
|
# Copyright (C) 2024-present Team LibreELEC (https://libreelec.tv)
|
||||||
|
|
||||||
|
PKG_NAME="pyproject-hooks"
|
||||||
|
PKG_VERSION="1.0.0"
|
||||||
|
PKG_SHA256="f271b298b97f5955d53fb12b72c1fb1948c22c1a6b70b315c54cedaca0264ef5"
|
||||||
|
PKG_LICENSE="BSD"
|
||||||
|
PKG_SITE="https://pypi.org/project/pyproject-hooks/"
|
||||||
|
PKG_URL="https://files.pythonhosted.org/packages/source/p/pyproject_hooks/pyproject_hooks-${PKG_VERSION}.tar.gz"
|
||||||
|
PKG_SOURCE_DIR="pyproject_hooks-${PKG_VERSION}"
|
||||||
|
PKG_DEPENDS_HOST="flit:host pyinstaller:host"
|
||||||
|
PKG_LONGDESC="pyproject-hooks provides the basic functionality to help write tooling that generates distribution files from Python projects."
|
||||||
|
PKG_TOOLCHAIN="python-flit"
|
@ -9,9 +9,4 @@ PKG_SITE="https://pypi.org/project/PyYAML/"
|
|||||||
PKG_URL="https://files.pythonhosted.org/packages/source/${PKG_NAME:0:1}/${PKG_NAME}/${PKG_NAME}-${PKG_VERSION}.tar.gz"
|
PKG_URL="https://files.pythonhosted.org/packages/source/${PKG_NAME:0:1}/${PKG_NAME}/${PKG_NAME}-${PKG_VERSION}.tar.gz"
|
||||||
PKG_DEPENDS_HOST="Python3:host setuptools:host"
|
PKG_DEPENDS_HOST="Python3:host setuptools:host"
|
||||||
PKG_LONGDESC="YAML parser and emitter for Python"
|
PKG_LONGDESC="YAML parser and emitter for Python"
|
||||||
PKG_TOOLCHAIN="manual"
|
PKG_TOOLCHAIN="python"
|
||||||
|
|
||||||
makeinstall_host() {
|
|
||||||
export DONT_BUILD_LEGACY_PYC=1
|
|
||||||
exec_thread_safe python3 setup.py install --prefix="${TOOLCHAIN}"
|
|
||||||
}
|
|
||||||
|
@ -3,19 +3,11 @@
|
|||||||
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
|
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
|
||||||
|
|
||||||
PKG_NAME="setuptools"
|
PKG_NAME="setuptools"
|
||||||
PKG_VERSION="52.0.0"
|
PKG_VERSION="73.0.1"
|
||||||
PKG_SHA256="ff0c74d1b905a224d647f99c6135eacbec2620219992186b81aa20012bc7f882"
|
PKG_SHA256="d59a3e788ab7e012ab2c4baed1b376da6366883ee20d7a5fc426816e3d7b1193"
|
||||||
PKG_LICENSE="OSS"
|
PKG_LICENSE="OSS"
|
||||||
PKG_SITE="https://pypi.org/project/setuptools"
|
PKG_SITE="https://pypi.org/project/setuptools"
|
||||||
PKG_URL="https://github.com/pypa/setuptools/archive/v${PKG_VERSION}.tar.gz"
|
PKG_URL="https://files.pythonhosted.org/packages/source/${PKG_NAME:0:1}/${PKG_NAME}/${PKG_NAME,,}-${PKG_VERSION}.tar.gz"
|
||||||
PKG_DEPENDS_HOST="Python3:host"
|
PKG_DEPENDS_HOST="pybuild:host"
|
||||||
PKG_LONGDESC="Replaces Setuptools as the standard method for working with Python module distributions."
|
PKG_LONGDESC="Replaces Setuptools as the standard method for working with Python module distributions."
|
||||||
PKG_TOOLCHAIN="manual"
|
PKG_TOOLCHAIN="python"
|
||||||
|
|
||||||
make_host() {
|
|
||||||
python3 bootstrap.py
|
|
||||||
}
|
|
||||||
|
|
||||||
makeinstall_host() {
|
|
||||||
exec_thread_safe python3 setup.py install --prefix=${TOOLCHAIN}
|
|
||||||
}
|
|
||||||
|
@ -10,15 +10,9 @@ PKG_SITE="https://python-pillow.org/"
|
|||||||
PKG_URL="https://github.com/python-pillow/${PKG_NAME}/archive/${PKG_VERSION}.tar.gz"
|
PKG_URL="https://github.com/python-pillow/${PKG_NAME}/archive/${PKG_VERSION}.tar.gz"
|
||||||
PKG_DEPENDS_TARGET="toolchain Python3 zlib freetype libjpeg-turbo tiff"
|
PKG_DEPENDS_TARGET="toolchain Python3 zlib freetype libjpeg-turbo tiff"
|
||||||
PKG_LONGDESC="The Python Imaging Library adds image processing capabilities to your Python interpreter."
|
PKG_LONGDESC="The Python Imaging Library adds image processing capabilities to your Python interpreter."
|
||||||
PKG_TOOLCHAIN="manual"
|
PKG_TOOLCHAIN="python"
|
||||||
|
|
||||||
make_target() {
|
PKG_PYTHON_OPTS_TARGET="-C--build-option=build_ext -C--build-option=--disable-platform-guessing"
|
||||||
python_target_env python3 setup.py build_ext --disable-platform-guessing build
|
|
||||||
}
|
|
||||||
|
|
||||||
makeinstall_target() {
|
|
||||||
exec_thread_safe python_target_env python3 setup.py build_ext --disable-platform-guessing install --root=${INSTALL} --prefix=/usr
|
|
||||||
}
|
|
||||||
|
|
||||||
post_makeinstall_target() {
|
post_makeinstall_target() {
|
||||||
python_remove_source
|
python_remove_source
|
||||||
|
@ -1,87 +0,0 @@
|
|||||||
From 346de8011ac8ece998d9bd857d661cf2bb7479a2 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Rudi Heitbaum <rudi@heitbaum.com>
|
|
||||||
Date: Sat, 20 Jan 2024 02:20:01 +0000
|
|
||||||
Subject: [PATCH] Revert "Move build config from setup.cfg to pyproject.toml"
|
|
||||||
|
|
||||||
This partially reverts commit 430920e2a8420bdfcd08eafe6446d6173692e24e.
|
|
||||||
---
|
|
||||||
setup.cfg | 67 +++++++++++++++++++++++++++++++++++++++++++
|
|
||||||
1 files changed, 67 insertions(+)
|
|
||||||
create mode 100644 setup.cfg
|
|
||||||
|
|
||||||
diff --git a/setup.cfg b/setup.cfg
|
|
||||||
new file mode 100644
|
|
||||||
index 000000000..627788cd8
|
|
||||||
--- /dev/null
|
|
||||||
+++ b/setup.cfg
|
|
||||||
@@ -0,0 +1,67 @@
|
|
||||||
+[metadata]
|
|
||||||
+name = Pillow
|
|
||||||
+description = Python Imaging Library (Fork)
|
|
||||||
+long_description = file: README.md
|
|
||||||
+long_description_content_type = text/markdown
|
|
||||||
+url = https://python-pillow.org
|
|
||||||
+author = Jeffrey A. Clark (Alex)
|
|
||||||
+author_email = aclark@aclark.net
|
|
||||||
+license = HPND
|
|
||||||
+classifiers =
|
|
||||||
+ Development Status :: 6 - Mature
|
|
||||||
+ License :: OSI Approved :: Historical Permission Notice and Disclaimer (HPND)
|
|
||||||
+ Programming Language :: Python :: 3
|
|
||||||
+ Programming Language :: Python :: 3 :: Only
|
|
||||||
+ Programming Language :: Python :: 3.8
|
|
||||||
+ Programming Language :: Python :: 3.9
|
|
||||||
+ Programming Language :: Python :: 3.10
|
|
||||||
+ Programming Language :: Python :: 3.11
|
|
||||||
+ Programming Language :: Python :: 3.12
|
|
||||||
+ Programming Language :: Python :: Implementation :: CPython
|
|
||||||
+ Programming Language :: Python :: Implementation :: PyPy
|
|
||||||
+ Topic :: Multimedia :: Graphics
|
|
||||||
+ Topic :: Multimedia :: Graphics :: Capture :: Digital Camera
|
|
||||||
+ Topic :: Multimedia :: Graphics :: Capture :: Screen Capture
|
|
||||||
+ Topic :: Multimedia :: Graphics :: Graphics Conversion
|
|
||||||
+ Topic :: Multimedia :: Graphics :: Viewers
|
|
||||||
+keywords = Imaging
|
|
||||||
+project_urls =
|
|
||||||
+ Documentation=https://pillow.readthedocs.io
|
|
||||||
+ Source=https://github.com/python-pillow/Pillow
|
|
||||||
+ Funding=https://tidelift.com/subscription/pkg/pypi-pillow?utm_source=pypi-pillow&utm_medium=pypi
|
|
||||||
+ Release notes=https://pillow.readthedocs.io/en/stable/releasenotes/index.html
|
|
||||||
+ Changelog=https://github.com/python-pillow/Pillow/blob/main/CHANGES.rst
|
|
||||||
+ Twitter=https://twitter.com/PythonPillow
|
|
||||||
+ Mastodon=https://fosstodon.org/@pillow
|
|
||||||
+
|
|
||||||
+[options]
|
|
||||||
+packages = PIL
|
|
||||||
+python_requires = >=3.8
|
|
||||||
+include_package_data = True
|
|
||||||
+package_dir =
|
|
||||||
+ = src
|
|
||||||
+
|
|
||||||
+[options.extras_require]
|
|
||||||
+docs =
|
|
||||||
+ furo
|
|
||||||
+ olefile
|
|
||||||
+ sphinx>=2.4
|
|
||||||
+ sphinx-copybutton
|
|
||||||
+ sphinx-inline-tabs
|
|
||||||
+ sphinx-removed-in
|
|
||||||
+ sphinxext-opengraph
|
|
||||||
+tests =
|
|
||||||
+ check-manifest
|
|
||||||
+ coverage
|
|
||||||
+ defusedxml
|
|
||||||
+ markdown2
|
|
||||||
+ olefile
|
|
||||||
+ packaging
|
|
||||||
+ pyroma
|
|
||||||
+ pytest
|
|
||||||
+ pytest-cov
|
|
||||||
+ pytest-timeout
|
|
||||||
+
|
|
||||||
+[flake8]
|
|
||||||
+extend-ignore = E203
|
|
||||||
+max-line-length = 88
|
|
||||||
--
|
|
||||||
2.43.0
|
|
||||||
|
|
@ -7,11 +7,6 @@ PKG_SHA256="61a70234dc7da467cceb07fcdd6dec1213d6143a1b6b19ccc5d7b64cc247ea47"
|
|||||||
PKG_LICENSE="MIT"
|
PKG_LICENSE="MIT"
|
||||||
PKG_SITE="https://glad.dav1d.de"
|
PKG_SITE="https://glad.dav1d.de"
|
||||||
PKG_URL="https://github.com/Dav1dde/glad/archive/refs/tags/v${PKG_VERSION}.tar.gz"
|
PKG_URL="https://github.com/Dav1dde/glad/archive/refs/tags/v${PKG_VERSION}.tar.gz"
|
||||||
PKG_DEPENDS_TARGET="toolchain"
|
PKG_DEPENDS_TARGET="setuptools:host"
|
||||||
PKG_LONGDESC="Multi-Language Vulkan/GL/GLES/EGL/GLX/WGL Loader-Generator based on the official specs"
|
PKG_LONGDESC="Multi-Language Vulkan/GL/GLES/EGL/GLX/WGL Loader-Generator based on the official specs"
|
||||||
PKG_TOOLCHAIN="manual"
|
PKG_TOOLCHAIN="python"
|
||||||
|
|
||||||
makeinstall_host() {
|
|
||||||
export DONT_BUILD_LEGACY_PYC=1
|
|
||||||
exec_thread_safe python3 setup.py install --prefix=${TOOLCHAIN}
|
|
||||||
}
|
|
||||||
|
@ -7,30 +7,22 @@ PKG_SHA256="35019dff66c25db80d0c739b9c7b59bb0f61551897681c6dbdbdd0f7198f780f"
|
|||||||
PKG_LICENSE="BSD"
|
PKG_LICENSE="BSD"
|
||||||
PKG_SITE="https://pypi.org/project/pycryptodome"
|
PKG_SITE="https://pypi.org/project/pycryptodome"
|
||||||
PKG_URL="https://github.com/Legrandin/${PKG_NAME}/archive/v${PKG_VERSION}.tar.gz"
|
PKG_URL="https://github.com/Legrandin/${PKG_NAME}/archive/v${PKG_VERSION}.tar.gz"
|
||||||
PKG_DEPENDS_TARGET="toolchain Python3"
|
PKG_DEPENDS_TARGET="toolchain Python3 setuptools:host"
|
||||||
PKG_LONGDESC="PyCryptodome is a self-contained Python package of low-level cryptographic primitives."
|
PKG_LONGDESC="PyCryptodome is a self-contained Python package of low-level cryptographic primitives."
|
||||||
PKG_TOOLCHAIN="manual"
|
PKG_TOOLCHAIN="python"
|
||||||
|
|
||||||
pre_configure_target() {
|
pre_configure_target() {
|
||||||
cd ${PKG_BUILD}
|
cd ${PKG_BUILD}
|
||||||
rm -rf .${TARGET_NAME}
|
rm -rf .${TARGET_NAME}
|
||||||
}
|
}
|
||||||
|
|
||||||
make_target() {
|
post_makeinstall_target() {
|
||||||
python_target_env python3 setup.py build
|
|
||||||
}
|
|
||||||
|
|
||||||
makeinstall_target() {
|
|
||||||
exec_thread_safe python_target_env python3 setup.py install --root=${INSTALL} --prefix=/usr
|
|
||||||
|
|
||||||
# Remove SelfTest bloat
|
# Remove SelfTest bloat
|
||||||
find ${INSTALL} -type d -name SelfTest -exec rm -fr "{}" \; 2>/dev/null || true
|
find ${INSTALL} -type d -name SelfTest -exec rm -fr "{}" \; 2>/dev/null || true
|
||||||
find ${INSTALL} -name SOURCES.txt -exec sed -i "/\/SelfTest\//d;" "{}" \;
|
find ${INSTALL} -name SOURCES.txt -exec sed -i "/\/SelfTest\//d;" "{}" \;
|
||||||
|
|
||||||
# Create Cryptodome as an alternative namespace to Crypto (Kodi addons may use either)
|
# Create Cryptodome as an alternative namespace to Crypto (Kodi addons may use either)
|
||||||
ln -sf /usr/lib/${PKG_PYTHON_VERSION}/site-packages/Crypto ${INSTALL}/usr/lib/${PKG_PYTHON_VERSION}/site-packages/Cryptodome
|
ln -sf /usr/lib/${PKG_PYTHON_VERSION}/site-packages/Crypto ${INSTALL}/usr/lib/${PKG_PYTHON_VERSION}/site-packages/Cryptodome
|
||||||
}
|
|
||||||
|
|
||||||
post_makeinstall_target() {
|
|
||||||
python_remove_source
|
python_remove_source
|
||||||
}
|
}
|
||||||
|
@ -7,17 +7,9 @@ PKG_SHA256="857104ef2fd1978323d7c87b32c753d2d178b79adbd13f52cea23511f5195ded"
|
|||||||
PKG_LICENSE="LGPLv2.1+"
|
PKG_LICENSE="LGPLv2.1+"
|
||||||
PKG_SITE="https://gitlab.com/ldo/dbussy"
|
PKG_SITE="https://gitlab.com/ldo/dbussy"
|
||||||
PKG_URL="https://github.com/ldo/${PKG_NAME}/archive/${PKG_VERSION}.tar.gz"
|
PKG_URL="https://github.com/ldo/${PKG_NAME}/archive/${PKG_VERSION}.tar.gz"
|
||||||
PKG_DEPENDS_TARGET="toolchain Python3 dbus"
|
PKG_DEPENDS_TARGET="toolchain Python3 dbus setuptools:host"
|
||||||
PKG_LONGDESC="DBussy is a wrapper around libdbus, written in pure Python"
|
PKG_LONGDESC="DBussy is a wrapper around libdbus, written in pure Python"
|
||||||
PKG_TOOLCHAIN="manual"
|
PKG_TOOLCHAIN="python"
|
||||||
|
|
||||||
make_target() {
|
|
||||||
python3 setup.py build
|
|
||||||
}
|
|
||||||
|
|
||||||
makeinstall_target() {
|
|
||||||
python3 setup.py install --root=${INSTALL} --prefix=/usr
|
|
||||||
}
|
|
||||||
|
|
||||||
post_makeinstall_target() {
|
post_makeinstall_target() {
|
||||||
python_remove_source
|
python_remove_source
|
||||||
|
@ -8,17 +8,9 @@ PKG_SHA256="8e086896c36210ab6050f2f9f095a5f1e03c83fa0e7f296d6cba425411364680"
|
|||||||
PKG_LICENSE="OSS"
|
PKG_LICENSE="OSS"
|
||||||
PKG_SITE="http://pypi.org/project/simplejson"
|
PKG_SITE="http://pypi.org/project/simplejson"
|
||||||
PKG_URL="https://files.pythonhosted.org/packages/source/${PKG_NAME:0:1}/${PKG_NAME}/${PKG_NAME}-${PKG_VERSION}.tar.gz"
|
PKG_URL="https://files.pythonhosted.org/packages/source/${PKG_NAME:0:1}/${PKG_NAME}/${PKG_NAME}-${PKG_VERSION}.tar.gz"
|
||||||
PKG_DEPENDS_TARGET="toolchain Python3"
|
PKG_DEPENDS_TARGET="toolchain Python3 setuptools:host"
|
||||||
PKG_LONGDESC="A simple, fast, complete, correct and extensible JSON encoder and decoder for Python 2.5+."
|
PKG_LONGDESC="A simple, fast, complete, correct and extensible JSON encoder and decoder for Python 2.5+."
|
||||||
PKG_TOOLCHAIN="manual"
|
PKG_TOOLCHAIN="python"
|
||||||
|
|
||||||
make_target() {
|
|
||||||
python_target_env python3 setup.py build
|
|
||||||
}
|
|
||||||
|
|
||||||
makeinstall_target() {
|
|
||||||
exec_thread_safe python_target_env python3 setup.py install --root=${INSTALL} --prefix=/usr
|
|
||||||
}
|
|
||||||
|
|
||||||
post_makeinstall_target() {
|
post_makeinstall_target() {
|
||||||
python_remove_source
|
python_remove_source
|
||||||
|
@ -119,7 +119,7 @@ if [ -z "${PKG_TOOLCHAIN}" -o "${PKG_TOOLCHAIN}" = "auto" ]; then
|
|||||||
fi
|
fi
|
||||||
_auto_toolchain=" (auto-detect)"
|
_auto_toolchain=" (auto-detect)"
|
||||||
fi
|
fi
|
||||||
if ! listcontains "meson cmake cmake-make configure ninja make autotools manual" "${PKG_TOOLCHAIN}"; then
|
if ! listcontains "meson cmake cmake-make configure ninja make autotools manual python-flit python" "${PKG_TOOLCHAIN}"; then
|
||||||
die "$(print_color "CLR_ERROR" "ERROR:") unknown toolchain ${PKG_TOOLCHAIN}"
|
die "$(print_color "CLR_ERROR" "ERROR:") unknown toolchain ${PKG_TOOLCHAIN}"
|
||||||
fi
|
fi
|
||||||
build_msg "CLR_TOOLCHAIN" "TOOLCHAIN" "${PKG_TOOLCHAIN}${_auto_toolchain}"
|
build_msg "CLR_TOOLCHAIN" "TOOLCHAIN" "${PKG_TOOLCHAIN}${_auto_toolchain}"
|
||||||
@ -416,6 +416,23 @@ else
|
|||||||
echo "Executing (bootstrap): make ${PKG_MAKE_OPTS_BOOTSTRAP}" | tr -s " "
|
echo "Executing (bootstrap): make ${PKG_MAKE_OPTS_BOOTSTRAP}" | tr -s " "
|
||||||
make ${PKG_MAKE_OPTS_BOOTSTRAP}
|
make ${PKG_MAKE_OPTS_BOOTSTRAP}
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
# python builds
|
||||||
|
"python-flit:target")
|
||||||
|
die "$(print_color "CLR_ERROR" "ERROR:") toolchain python-flit should not be used for target!"
|
||||||
|
;;
|
||||||
|
"python-flit:host")
|
||||||
|
echo "Executing (host): python3 -m flit_core.wheel"
|
||||||
|
DONT_BUILD_LEGACY_PYC=1 python3 -m flit_core.wheel
|
||||||
|
;;
|
||||||
|
"python:target")
|
||||||
|
echo "Executing (target): python3 -m build -n -w -x ${PKG_PYTHON_OPTS_TARGET}" | tr -s " "
|
||||||
|
python_target_env python3 -m build -n -w -x ${PKG_PYTHON_OPTS_TARGET}
|
||||||
|
;;
|
||||||
|
"python:host")
|
||||||
|
echo "Executing (host): python3 -m build -n -w -x ${PKG_PYTHON_OPTS_HOST}" | tr -s " "
|
||||||
|
DONT_BUILD_LEGACY_PYC=1 python3 -m build -n -w -x ${PKG_PYTHON_OPTS_HOST}
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -475,6 +492,17 @@ else
|
|||||||
"configure:bootstrap" | "cmake-make:bootstrap" | "autotools:bootstrap" | "make:bootstrap")
|
"configure:bootstrap" | "cmake-make:bootstrap" | "autotools:bootstrap" | "make:bootstrap")
|
||||||
make install ${PKG_MAKEINSTALL_OPTS_BOOTSTRAP}
|
make install ${PKG_MAKEINSTALL_OPTS_BOOTSTRAP}
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
# python builds
|
||||||
|
"python-flit:target")
|
||||||
|
die "$(print_color "CLR_ERROR" "ERROR:") toolchain python-flit should not be used for target!"
|
||||||
|
;;
|
||||||
|
"python:target")
|
||||||
|
python3 -m installer --overwrite-existing dist/*.whl -d ${INSTALL} -p /usr
|
||||||
|
;;
|
||||||
|
"python-flit:host" | "python:host")
|
||||||
|
python3 -m installer --overwrite-existing dist/*.whl
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user