summaryrefslogtreecommitdiff
path: root/dev-python/sip
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-05-12 16:42:50 +0300
committerV3n3RiX <venerix@koprulu.sector>2022-05-12 16:42:50 +0300
commit752d6256e5204b958b0ef7905675a940b5e9172f (patch)
tree330d16e6362a49cbed8875a777fe641a43376cd3 /dev-python/sip
parent0c100b7dd2b30e75b799d806df4ef899fd98e1ea (diff)
gentoo resync : 12.05.2022
Diffstat (limited to 'dev-python/sip')
-rw-r--r--dev-python/sip/Manifest2
-rw-r--r--dev-python/sip/files/sip-6.5.0-pep517-args.patch190
-rw-r--r--dev-python/sip/sip-6.5.0-r1.ebuild36
3 files changed, 228 insertions, 0 deletions
diff --git a/dev-python/sip/Manifest b/dev-python/sip/Manifest
index b1489e640283..ea39d1b2731c 100644
--- a/dev-python/sip/Manifest
+++ b/dev-python/sip/Manifest
@@ -1,4 +1,5 @@
AUX sip-4.18-darwin.patch 1187 BLAKE2B a3cd0418de90e7377bc2ae1206f4620c6be379a3bd38f22c19256b06f5ba0c90ff07f34dcc8d2f44a25244e11544176a5e1b91049d220bd56cc7b3876a26ba76 SHA512 1afe049fd21f0e8e5118dec4d4b74851cd5e2c75a66a93e1a79a42267954b1edfcff9644696c7d98342499fb27fde727a554b5739cbd791d17a0e319c1dddb7e
+AUX sip-6.5.0-pep517-args.patch 7397 BLAKE2B f29af4b2378c569b21e09b1659e1ebd4bcd2d0308cdfe82042c8830336090d55b0ac48c03b27c98a8488c183f4670f0333ef7b552e66f51432ea1db63025c851 SHA512 3aa8063c53f012bbc1d59d6c43c7053817ade8abb42918e32787faaa85d2bd909ed3760ac9d07d88e62780b35921e06711cd39fffbd2ac7671ac49c69d60ed3c
DIST sip-4.19.25.tar.gz 1056384 BLAKE2B f92e105e6b30e871aea2883dc9cd459e4032fb139a9eaff153a3412a66b39df4d7ac985711a2693aee83195ff3850ae648bee4102f7fc3cc30d09885799f2b98 SHA512 60fb4133c68869bf0993144978b4847d94a0f9c7b477f64a346ea133cfe35bc11820204ab327dcf9a929b6f65a26d16cc7efbce65e49967c3347b39376e57001
DIST sip-5.5.0.tar.gz 1108126 BLAKE2B 59f0323b3befd7ebb89461e93e1e7e5707d11b2882bd524a45f3a6ba8d8a3c792aff5580027255812f6a3fa0854febeb418690fa6106efb21aab1610d66ef911 SHA512 0122beab575239cdb3b1430dc53a7f74175e3fbb3e113bcafced122ffbc4bd3d339b64a672ac1319ea14cd540b5877c2bcfeb7f8821fe8a3c8ba3ce9744bf803
DIST sip-6.4.0.tar.gz 1201890 BLAKE2B be5ccdfa7853eb2baa3b7c4e7f64a315e39ef899631e93569d75ed27bbf9752c97cca1bfd6c813efb0046d1d82fc8c5625a04f08c330a4e2c102461f3a42beee SHA512 eec1bdbe4ef3d8ba5152a2dcd888efc23498bcbee01c95b7eb72074c2a133d8e8599cc4bb6d6b2fec99f093a73705e0fea1c148c2e49058c0fd6f2ba97f40884
@@ -6,5 +7,6 @@ DIST sip-6.5.0.tar.gz 1202004 BLAKE2B a67ba784c0851a528fded689cc2a84fa18ba906d23
EBUILD sip-4.19.25-r1.ebuild 2275 BLAKE2B 89ea240194120bff7b9b3d9b2026f2343fde3bbd8063bb2070ca12c624db79e4d2582a9024cc011705a8f3dd78468ba3849dfd9f806706a20cd1d3c3c0f21b79 SHA512 9cfcd1c771a10205695e66316168e3b29cf4b2fe48212b6918152b988571ce944ee86c6b55f3d9531e7a624a1c7554beff403d76addc6645e4f92e73fb904439
EBUILD sip-5.5.0-r2.ebuild 873 BLAKE2B 6056c5ce42dfc77adfef3e38413eb91d150edfd33704dbd0434d4bebb6481b34376768e6b106c26e606094983a548155d5d62315f9cd9483ac49f6ba506a1eac SHA512 b7e8751fd35c0447502819f21600ce4fd7a62adb24c28510368fff1c5d1e21b1d6993aafe2c4b9bc863e44b4999b7ce42ccd67f06203a3aeb25d8e508ac80f39
EBUILD sip-6.4.0.ebuild 906 BLAKE2B 983e093fda49cbb8ef2d9b99fbe27caa76c19348fef6b1133240c771dc69ac971a7d7e62a313ff6959bf226d09e0670a49616736c2a5791459d5733e851c9413 SHA512 b46a02396fe76b9ef983ca0f41e9c60ba7ce575a9bf58cdae25f425c7d4780e9f6eb0f58aa82f814820f5eb53404ec92e78da58b8ba1cbf948fd9df8f8705fa6
+EBUILD sip-6.5.0-r1.ebuild 957 BLAKE2B cf070b6bcc095b772aaac961533110e7c515c21d28a9075ea18df3fc2b75ee1162a311dc2f83be1c7808c6f35343aa8ae178869526c7e08d0811d098822b878a SHA512 9326b339c717bb812ebeaf6729921086be3305e4c361200cc6f08c37cebf3e9761f41092e24ab460655309bcc7a1263bda513e7effc75874bbaa57dc6396f89a
EBUILD sip-6.5.0.ebuild 906 BLAKE2B 983e093fda49cbb8ef2d9b99fbe27caa76c19348fef6b1133240c771dc69ac971a7d7e62a313ff6959bf226d09e0670a49616736c2a5791459d5733e851c9413 SHA512 b46a02396fe76b9ef983ca0f41e9c60ba7ce575a9bf58cdae25f425c7d4780e9f6eb0f58aa82f814820f5eb53404ec92e78da58b8ba1cbf948fd9df8f8705fa6
MISC metadata.xml 639 BLAKE2B deb4a3e534eaa966db932dc17bf7df6a04ed41ce707dc7f1befb272c362be06f222f976c4b0d526a6190d4954f1fa0e2c94ccc2e6cfceff6e8db5959e653fed1 SHA512 8c8e45d32587e346d4df067950aacbc767618418d42f4a5bf48a62706c9612007915ec643dc9fe7b7d083696b26795abb76d9cc475481c26782874f5116863a1
diff --git a/dev-python/sip/files/sip-6.5.0-pep517-args.patch b/dev-python/sip/files/sip-6.5.0-pep517-args.patch
new file mode 100644
index 000000000000..c4d39dcf6156
--- /dev/null
+++ b/dev-python/sip/files/sip-6.5.0-pep517-args.patch
@@ -0,0 +1,190 @@
+Backport from https://www.riverbankcomputing.com/hg/sip/
+
+changeset: 2771:8543f04b374f
+branch: 6.6-maint
+tag: tip
+user: Phil Thompson <phil@riverbankcomputing.com>
+date: Tue May 10 13:58:28 2022 +0100
+summary: Fixed the PEP571 backend to handle multiple instances of the same config
+
+changeset: 2769:c02af095a016
+branch: 6.6-maint
+user: Phil Thompson <phil@riverbankcomputing.com>
+date: Sat May 07 15:18:14 2022 +0100
+summary: Fix an API backward incompatibility.
+
+changeset: 2768:98dbce3e62f1
+branch: 6.6-maint
+user: Phil Thompson <phil@riverbankcomputing.com>
+date: Sat May 07 15:03:49 2022 +0100
+summary: Any config settings passed by a PEP 571 frontend are now used.
+
+diff -r 8583e2bb1b32 sipbuild/abstract_project.py
+--- a/sipbuild/abstract_project.py Thu Nov 25 18:15:32 2021 +0000
++++ b/sipbuild/abstract_project.py Tue May 10 16:15:30 2022 +0200
+@@ -1,4 +1,4 @@
+-# Copyright (c) 2020, Riverbank Computing Limited
++# Copyright (c) 2022, Riverbank Computing Limited
+ # All rights reserved.
+ #
+ # This copy of SIP is licensed for use under the terms of the SIP License
+@@ -34,7 +34,7 @@
+ """ This specifies the API of a project. """
+
+ @classmethod
+- def bootstrap(cls, tool, tool_description=''):
++ def bootstrap(cls, tool, tool_description='', arguments=None):
+ """ Return an AbstractProject instance fully configured for a
+ particular command line tool.
+ """
+@@ -79,6 +79,10 @@
+ "The project factory did not return an AbstractProject "
+ "object")
+
++ # We set this as an attribute rather than change the API of the ctor or
++ # setup().
++ project.arguments = arguments
++
+ # Complete the configuration of the project.
+ project.setup(pyproject, tool, tool_description)
+
+diff -r 8583e2bb1b32 sipbuild/api.py
+--- a/sipbuild/api.py Thu Nov 25 18:15:32 2021 +0000
++++ b/sipbuild/api.py Tue May 10 16:15:30 2022 +0200
+@@ -1,4 +1,4 @@
+-# Copyright (c) 2019, Riverbank Computing Limited
++# Copyright (c) 2022, Riverbank Computing Limited
+ # All rights reserved.
+ #
+ # This copy of SIP is licensed for use under the terms of the SIP License
+@@ -28,10 +28,8 @@
+ def build_sdist(sdist_directory, config_settings=None):
+ """ The PEP 517 hook for building an sdist from pyproject.toml. """
+
+- # Note that we ignore config_settings until we have a frontend that we can
+- # fully test with. (pip seems lacking at the moment.)
+-
+- project = AbstractProject.bootstrap('pep517')
++ project = AbstractProject.bootstrap('sdist',
++ arguments=_convert_config_settings(config_settings))
+
+ # pip executes this in a separate process and doesn't handle exceptions
+ # very well. However it does capture stdout and (eventually) show it to
+@@ -45,10 +43,8 @@
+ def build_wheel(wheel_directory, config_settings=None, metadata_directory=None):
+ """ The PEP 517 hook for building a wheel from pyproject.toml. """
+
+- # Note that we ignore config_settings until we have a frontend that we can
+- # fully test with. (pip seems lacking at the moment.)
+-
+- project = AbstractProject.bootstrap('pep517')
++ project = AbstractProject.bootstrap('wheel',
++ arguments=_convert_config_settings(config_settings))
+
+ # pip executes this in a separate process and doesn't handle exceptions
+ # very well. However it does capture stdout and (eventually) show it to
+@@ -57,3 +53,26 @@
+ return project.build_wheel(wheel_directory)
+ except Exception as e:
+ handle_exception(e)
++
++
++def _convert_config_settings(config_settings):
++ """ Return any configuration settings from the frontend to a pseudo-command
++ line.
++ """
++
++ if config_settings is None:
++ config_settings = {}
++
++ args = []
++
++ for name, value in config_settings.items():
++ if value:
++ if not isinstance(value, list):
++ value = [value]
++
++ for m_value in value:
++ args.append(name + '=' + m_value)
++ else:
++ args.append(name)
++
++ return args
+diff -r 8583e2bb1b32 sipbuild/configurable.py
+--- a/sipbuild/configurable.py Thu Nov 25 18:15:32 2021 +0000
++++ b/sipbuild/configurable.py Tue May 10 16:15:30 2022 +0200
+@@ -1,4 +1,4 @@
+-# Copyright (c) 2021, Riverbank Computing Limited
++# Copyright (c) 2022, Riverbank Computing Limited
+ # All rights reserved.
+ #
+ # This copy of SIP is licensed for use under the terms of the SIP License
+@@ -244,7 +244,7 @@
+ """
+
+ # The tools that will build a set of bindings.
+- BUILD_TOOLS = ('build', 'install', 'pep517', 'wheel')
++ BUILD_TOOLS = ('build', 'install', 'wheel')
+
+ # All the valid tools.
+ _ALL_TOOLS = BUILD_TOOLS + ('sdist', )
+diff -r 8583e2bb1b32 sipbuild/project.py
+--- a/sipbuild/project.py Thu Nov 25 18:15:32 2021 +0000
++++ b/sipbuild/project.py Tue May 10 16:15:30 2022 +0200
+@@ -155,6 +155,7 @@
+
+ # The current directory should contain the .toml file.
+ self.root_dir = os.getcwd()
++ self.arguments = None
+ self.bindings = collections.OrderedDict()
+ self.bindings_factories = []
+ self.builder = None
+@@ -204,11 +205,6 @@
+ def apply_user_defaults(self, tool):
+ """ Set default values for user options that haven't been set yet. """
+
+- # If we are the backend to a 3rd-party frontend (most probably pip)
+- # then let it handle the verbosity of messages.
+- if self.verbose is None and tool == '':
+- self.verbose = True
+-
+ # This is only used when creating sdist and wheel files.
+ if self.name is None:
+ self.name = self.metadata['name']
+@@ -569,14 +565,9 @@
+ # Set the initial configuration from the pyproject.toml file.
+ self._set_initial_configuration(pyproject, tool)
+
+- # Add any tool-specific command line options for (so far unspecified)
++ # Add any tool-specific command line arguments for (so far unspecified)
+ # parts of the configuration.
+- if tool != 'pep517':
+- self._configure_from_command_line(tool, tool_description)
+- else:
+- # Until pip improves it's error reporting we give the user all the
+- # help we can.
+- self.verbose = True
++ self._configure_from_arguments(tool, tool_description)
+
+ # Now that any help has been given we can report a problematic
+ # pyproject.toml file.
+@@ -712,8 +703,8 @@
+ for bindings in self.bindings.values():
+ bindings.verify_configuration(tool)
+
+- def _configure_from_command_line(self, tool, tool_description):
+- """ Update the configuration from the user supplied command line. """
++ def _configure_from_arguments(self, tool, tool_description):
++ """ Update the configuration from any user supplied arguments. """
+
+ from argparse import SUPPRESS
+ from .argument_parser import ArgumentParser
+@@ -739,7 +730,7 @@
+ bindings.add_command_line_options(parser, tool, all_options)
+
+ # Parse the arguments and update the corresponding configurables.
+- args = parser.parse_args()
++ args = parser.parse_args(self.arguments)
+
+ for option, configurables in all_options.items():
+ for configurable in configurables:
diff --git a/dev-python/sip/sip-6.5.0-r1.ebuild b/dev-python/sip/sip-6.5.0-r1.ebuild
new file mode 100644
index 000000000000..3f31cadaf6d1
--- /dev/null
+++ b/dev-python/sip/sip-6.5.0-r1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..10} )
+DISTUTILS_USE_SETUPTOOLS=rdepend
+inherit distutils-r1
+
+DESCRIPTION="Python bindings generator for C/C++ libraries"
+HOMEPAGE="https://www.riverbankcomputing.com/software/sip/ https://pypi.org/project/sip/"
+
+MY_P=${PN}-${PV/_pre/.dev}
+if [[ ${PV} == *_pre* ]]; then
+ SRC_URI="https://dev.gentoo.org/~pesa/distfiles/${MY_P}.tar.gz"
+else
+ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${MY_P}.tar.gz"
+fi
+S=${WORKDIR}/${MY_P}
+
+LICENSE="|| ( GPL-2 GPL-3 SIP )"
+SLOT="5"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+RDEPEND="
+ !<dev-python/sip-4.19.25-r1[${PYTHON_USEDEP}]
+ !=dev-python/sip-5.5.0-r0[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ dev-python/toml[${PYTHON_USEDEP}]
+"
+
+distutils_enable_sphinx doc --no-autodoc
+
+PATCHES=(
+ "${FILESDIR}"/${P}-pep517-args.patch
+)