From 10064e2661936f1be871d249a9261644104f48dd Mon Sep 17 00:00:00 2001 From: Joachim Metz Date: Sun, 3 Mar 2024 15:55:46 +0100 Subject: [PATCH] Changes for building pyzmq rpm --- .../google-cloud-pubsub-control | 16 -- .../google-cloud-pubsub-py3dist-overrides | 1 - data/dpkg_templates/google-cloud-pubsub-rules | 16 -- data/licenses/LICENSE.google-cloud-pubsub | 201 ------------------ data/licenses/LICENSE.psq | 201 ------------------ data/presets.ini | 2 +- data/projects.ini | 34 +-- data/rpm_templates/pyzmq.spec | 30 +-- l2tdevtools/build_helpers/factory.py | 32 ++- l2tdevtools/build_helpers/rpm.py | 8 +- tests/build_helpers/rpm.py | 4 +- 11 files changed, 37 insertions(+), 508 deletions(-) delete mode 100644 data/dpkg_templates/google-cloud-pubsub-control delete mode 100644 data/dpkg_templates/google-cloud-pubsub-py3dist-overrides delete mode 100755 data/dpkg_templates/google-cloud-pubsub-rules delete mode 100644 data/licenses/LICENSE.google-cloud-pubsub delete mode 100644 data/licenses/LICENSE.psq diff --git a/data/dpkg_templates/google-cloud-pubsub-control b/data/dpkg_templates/google-cloud-pubsub-control deleted file mode 100644 index ea87a58a..00000000 --- a/data/dpkg_templates/google-cloud-pubsub-control +++ /dev/null @@ -1,16 +0,0 @@ -Source: google-cloud-pubsub -Section: python -Priority: extra -Maintainer: Google LLC -Build-Depends: debhelper (>= 9), dh-python, python3-all (>= 3.5~), python3-setuptools, libprotobuf-dev (>= 3.6.1), protobuf-compiler (>= 3.6.1), python3-protobuf (>= 3.6.1), python3-googleapis-common-protos -Standards-Version: 4.1.4 -X-Python3-Version: >= 3.5 -Homepage: https://github.com/googleapis/google-cloud-python - -Package: python3-google-cloud-pubsub -Architecture: all -Depends: python3-google-api-core, python3-grpc-google-iam-v1, python3-grpcio, ${{python3:Depends}}, ${{misc:Depends}} -Description: Google Cloud Pub/Sub API client library - Google Cloud Pub / Sub is a fully-managed real-time messaging - service that allows you to send and receive messages between independent - applications. diff --git a/data/dpkg_templates/google-cloud-pubsub-py3dist-overrides b/data/dpkg_templates/google-cloud-pubsub-py3dist-overrides deleted file mode 100644 index 391ceb02..00000000 --- a/data/dpkg_templates/google-cloud-pubsub-py3dist-overrides +++ /dev/null @@ -1 +0,0 @@ -google_api_core python3-google-api-core diff --git a/data/dpkg_templates/google-cloud-pubsub-rules b/data/dpkg_templates/google-cloud-pubsub-rules deleted file mode 100755 index 5635c2cf..00000000 --- a/data/dpkg_templates/google-cloud-pubsub-rules +++ /dev/null @@ -1,16 +0,0 @@ -#!/usr/bin/make -f - -%: - dh $@ --buildsystem=pybuild --with=python3 - -.PHONY: override_dh_auto_test -override_dh_auto_test: - -.PHONY: override_dh_auto_install -override_dh_auto_install: - dh_auto_install --destdir=debian/tmp - for PROTO_PATH in `ls -d debian/tmp/usr/lib/python3*/dist-packages/google/cloud/pubsub_v1/proto`; do \ - rm -f $${{PROTO_PATH}}/pubsub_pb2.py; \ - protoc --proto_path=/usr/lib/python3/dist-packages --proto_path=$${{PROTO_PATH}} --python_out=$${{PROTO_PATH}} pubsub.proto; \ - done - diff --git a/data/licenses/LICENSE.google-cloud-pubsub b/data/licenses/LICENSE.google-cloud-pubsub deleted file mode 100644 index a8ee855d..00000000 --- a/data/licenses/LICENSE.google-cloud-pubsub +++ /dev/null @@ -1,201 +0,0 @@ - Apache License - Version 2.0, January 2004 - https://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [yyyy] [name of copyright owner] - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - https://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. diff --git a/data/licenses/LICENSE.psq b/data/licenses/LICENSE.psq deleted file mode 100644 index 261eeb9e..00000000 --- a/data/licenses/LICENSE.psq +++ /dev/null @@ -1,201 +0,0 @@ - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [yyyy] [name of copyright owner] - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. diff --git a/data/presets.ini b/data/presets.ini index 4bd0fa32..ec39160e 100644 --- a/data/presets.ini +++ b/data/presets.ini @@ -40,7 +40,7 @@ projects: alembic,altair,amqp,aniso8601,asn1crypto,attrs,bcrypt,beautifulsoup4,b [turbinia] presets: dfimagetools -projects: boto3,botocore,cachetools,Click,colorlog,dateutil,docutils,filelock,google-api-core,google-api-python-client,google-auth,google-auth-httplib2,google-cloud-core,google-cloud-datastore,google-cloud-error-reporting,google-cloud-logging,google-cloud-pubsub,google-cloud-storage,google-resumable-media,googleapis-common-protos,grpc-google-iam-v1,grpcio,httplib2,jmespath,libcloudforensics,protobuf,psq,pyasn1,pyasn1-modules,pytz,requests,rsa,s3transfer,turbinia,uritemplate,urllib3,Werkzeug +projects: boto3,botocore,cachetools,Click,colorlog,dateutil,docutils,filelock,google-api-core,google-api-python-client,google-auth,google-auth-httplib2,google-cloud-core,google-cloud-datastore,google-cloud-error-reporting,google-cloud-logging,google-cloud-storage,google-resumable-media,googleapis-common-protos,grpc-google-iam-v1,grpcio,httplib2,jmespath,libcloudforensics,protobuf,pyasn1,pyasn1-modules,pytz,requests,rsa,s3transfer,turbinia,uritemplate,urllib3,Werkzeug [winevt-kb] presets: dfimagetools diff --git a/data/projects.ini b/data/projects.ini index dfd37f3a..af04c3d4 100644 --- a/data/projects.ini +++ b/data/projects.ini @@ -679,22 +679,6 @@ git_url: https://github.com/googleapis/python-logging.git description_short: Stackdriver Logging API client library description_long: Stackdriver Logging API client library -[google-cloud-pubsub] -dpkg_build_dependencies: libprotobuf-dev,protobuf-compiler,python3-googleapis-common-protos,python3-protobuf -dpkg_dependencies: python3-google-api-core,python3-grpc-google-iam-v1,python3-grpcio -dpkg_template_control: google-cloud-pubsub-control -dpkg_template_rules: google-cloud-pubsub-rules -dpkg_template_py3dist_overrides: google-cloud-pubsub-py3dist-overrides -version: >=0.41.0 -maintainer: Google LLC -homepage_url: https://github.com/googleapis/google-cloud-python -download_url: https://pypi.org/project/google-cloud-pubsub/ -git_url: https://github.com/googleapis/google-cloud-python.git -description_short: Google Cloud Pub/Sub API client library -description_long: Google Cloud Pub / Sub is a fully-managed real-time messaging - service that allows you to send and receive messages between independent - applications. - [google-cloud-storage] dpkg_dependencies: python3-google-auth,python3-google-cloud-core,python3-google-resumable-media version: >=1.16.1 @@ -1649,17 +1633,6 @@ description_long: psutil is a cross-platform library for retrieving information on running processes and system utilization (CPU, memory, disks, network) in Python. -[psq] -dpkg_dependencies: python3-click,python3-colorlog,python3-google-cloud-datastore,python3-google-cloud-pubsub,python3-werkzeug -version: >=0.7.0 -maintainer: Thea Flowers -homepage_url: https://github.com/GoogleCloudPlatform/psq -download_url: https://pypi.org/project/psq -git_url: https://github.com/GoogleCloudPlatform/psq.git -description_short: A simple task queue using Google Cloud Pub/Sub -description_long: Python implementation of a simple distributed task queue - using Google Cloud Pub/Sub. - [py] version: >=1.4.31 dpkg_name: python3-py @@ -1870,11 +1843,12 @@ description_long: Python-yaml is a complete YAML 1.1 parser and emitter [pyzmq] architecture_dependent: true +build_system: scikit version: >=14.7.0 dpkg_name: python-zmq dpkg_build_dependencies: cython3,python3-packaging dpkg_template_rules: pyzmq-rules -rpm_build_dependencies: gcc-c++,python3-packaging +rpm_build_dependencies: gcc-c++,python3-packaging,python3-scikit-build-core rpm_name: zmq rpm_template_spec: pyzmq.spec maintainer: PyZMQ project @@ -1949,7 +1923,7 @@ dpkg_build_dependencies: python3-semantic-version,python3-setuptools-scm,python3 dpkg_name: python-setuptools-rust dpkg_source_name: setuptools-rust dpkg_template_source_options: setuptools-rust-source_options -rpm_build_dependencies: ython3-semantic_version,python3-setuptools,python3-setuptools_scm,python3-toml +rpm_build_dependencies: python3-semantic_version,python3-setuptools,python3-setuptools_scm,python3-toml rpm_dependencies: python3-semantic_version,python3-setuptools rpm_name: setuptools-rust rpm_template_spec: setuptools-rust.spec @@ -2070,7 +2044,7 @@ description_long: List processing tools and functional utilities [turbinia] dpkg_build_dependencies: python3-setuptools-scm -dpkg_dependencies: python3-cachetools,python3-click,python3-colorlog,python3-boto3,python3-botocore,python3-dateutil,python3-docutils,python3-filelock,python3-google-api-core,python3-google-auth,python3-google-auth-httplib2,python3-google-cloud-core,python3-google-cloud-datastore,python3-google-cloud-error-reporting,python3-google-cloud-logging,python3-google-cloud-pubsub,python3-google-cloud-storage,python3-googleapi,python3-googleapis-common-protos,python3-grpc-google-iam-v1,python3-grpcio,python3-httplib2,python3-jmespath,python3-libcloudforensics,python3-protobuf,python3-psq,python3-pyasn1,python3-pyasn1-modules,python3-requests,python3-rsa,python3-s3transfer,python3-six,python3-tz,python3-uritemplate,python3-urllib3,python3-werkzeug +dpkg_dependencies: python3-cachetools,python3-click,python3-colorlog,python3-boto3,python3-botocore,python3-dateutil,python3-docutils,python3-filelock,python3-google-api-core,python3-google-auth,python3-google-auth-httplib2,python3-google-cloud-core,python3-google-cloud-datastore,python3-google-cloud-error-reporting,python3-google-cloud-logging,python3-google-cloud-storage,python3-googleapi,python3-googleapis-common-protos,python3-grpc-google-iam-v1,python3-grpcio,python3-httplib2,python3-jmespath,python3-libcloudforensics,python3-protobuf,python3-pyasn1,python3-pyasn1-modules,python3-requests,python3-rsa,python3-s3transfer,python3-six,python3-tz,python3-uritemplate,python3-urllib3,python3-werkzeug dpkg_template_py3dist_overrides: turbinia-py3dist-overrides maintainer: Turbinia development team homepage_url: https://github.com/google/turbinia diff --git a/data/rpm_templates/pyzmq.spec b/data/rpm_templates/pyzmq.spec index 551ab218..0b018f97 100644 --- a/data/rpm_templates/pyzmq.spec +++ b/data/rpm_templates/pyzmq.spec @@ -1,22 +1,17 @@ %define name pyzmq %define version {version} -%define unmangled_name pyzmq -%define unmangled_version {version} %define release 1 %define py_setup_args --zmq=bundled -Summary: Python bindings for 0MQ Name: %{{name}} Version: %{{version}} Release: %{{release}} -Source0: %{{unmangled_name}}-%{{unmangled_version}}.tar.gz License: LGPL+BSD -Group: Development/Libraries -BuildRoot: %{{_tmppath}}/%{{unmangled_name}}-release-%{{version}}-%{{release}}-buildroot -Prefix: %{{_prefix}} -Vendor: Brian E. Granger, Min Ragan-Kelley +Summary: Python bindings for 0MQ Url: https://pyzmq.readthedocs.org -BuildRequires: gcc, gcc-c++, python3-setuptools, python3-devel, python3-packaging +Vendor: Brian E. Granger, Min Ragan-Kelley +Source0: %{{name}}-%{{version}}.tar.gz +BuildRequires: gcc, gcc-c++, python3-devel, python3-packaging, python3-scikit-build-core, python3-setuptools %description PyZMQ is the official Python binding for the ZeroMQ @@ -30,22 +25,19 @@ PyZMQ is the official Python binding for the ZeroMQ Messaging Library (http://www.zeromq.org). %prep -%autosetup -n %{{unmangled_name}}-%{{unmangled_version}} +%autosetup -p1 -n %{{name}}-%{{version}} %build -%py3_build +%pyproject_wheel %install -%py3_install -rm -rf %{{buildroot}}/usr/lib/python*/site-packages/*.egg-info/requires.txt -rm -rf %{{buildroot}}/usr/share/doc/%{{name}}/ - -%clean -rm -rf %{{buildroot}} +%pyproject_install %files -n python3-zmq -%{{_libdir}}/python3*/site-packages/zmq/ -%{{_libdir}}/python3*/site-packages/pyzmq*.egg-info +%license LICENSE.BSD LICENSE.LESSER +%doc AUTHORS.md README.md +%{{_libdir}}/python3*/site-packages/zmq +%{{_libdir}}/python3*/site-packages/pyzmq*.dist-info %changelog * {date_time} log2timeline development team {version}-1 diff --git a/l2tdevtools/build_helpers/factory.py b/l2tdevtools/build_helpers/factory.py index 4472c82f..3a747f49 100644 --- a/l2tdevtools/build_helpers/factory.py +++ b/l2tdevtools/build_helpers/factory.py @@ -19,43 +19,41 @@ class BuildHelperFactory(object): 'wheel': wheel.ConfigureMakeWheelBuildHelper, } - # Note that the rpm and srpm setup.py build helpers are used to build - # projects that use flit. _FLIT_BUILD_HELPER_CLASSES = { - 'rpm': rpm.SetupPyRPMBuildHelper, - 'srpm': rpm.SetupPySRPMBuildHelper, + 'rpm': rpm.PyprojectRPMBuildHelper, + 'srpm': rpm.PyprojectSRPMBuildHelper, 'wheel': wheel.FlitWheelBuildHelper, } - # Note that the rpm and srpm setup.py build helpers are used to build - # projects that use poetry. _POETRY_BUILD_HELPER_CLASSES = { 'dpkg': dpkg.PybuildDPKGBuildHelper, 'dpkg-source': dpkg.PybuildSourceDPKGBuildHelper, - 'rpm': rpm.SetupPyRPMBuildHelper, - 'srpm': rpm.SetupPySRPMBuildHelper, + 'rpm': rpm.PyprojectRPMBuildHelper, + 'srpm': rpm.PyprojectSRPMBuildHelper, 'wheel': wheel.PoetryWheelBuildHelper, } - _PYPROJECT_BUILD_HELPER_CLASSES = { + _SCIKIT_BUILD_HELPER_CLASSES = { 'dpkg': dpkg.PybuildDPKGBuildHelper, 'dpkg-source': dpkg.PybuildSourceDPKGBuildHelper, + 'rpm': rpm.PyprojectRPMBuildHelper, + 'srpm': rpm.PyprojectSRPMBuildHelper, } _SETUP_PY_BUILD_HELPER_CLASSES = { 'dpkg': dpkg.PybuildDPKGBuildHelper, 'dpkg-source': dpkg.PybuildSourceDPKGBuildHelper, - 'rpm': rpm.SetupPyRPMBuildHelper, + 'rpm': rpm.PyprojectRPMBuildHelper, 'source': source.SetupPySourceBuildHelper, - 'srpm': rpm.SetupPySRPMBuildHelper, + 'srpm': rpm.PyprojectSRPMBuildHelper, 'wheel': wheel.SetuptoolsWheelBuildHelper, } - # Note that the rpm and srpm setup.py build helpers are used to build - # projects that use setuptools. _SETUPTOOLS_BUILD_HELPER_CLASSES = { - 'rpm': rpm.SetupPyRPMBuildHelper, - 'srpm': rpm.SetupPySRPMBuildHelper, + 'dpkg': dpkg.PybuildDPKGBuildHelper, + 'dpkg-source': dpkg.PybuildSourceDPKGBuildHelper, + 'rpm': rpm.PyprojectRPMBuildHelper, + 'srpm': rpm.PyprojectSRPMBuildHelper, 'wheel': wheel.SetuptoolsWheelBuildHelper, } @@ -88,8 +86,8 @@ def NewBuildHelper( build_helper_class = cls._POETRY_BUILD_HELPER_CLASSES.get( build_target, None) - elif project_definition.build_system == 'pyproject': - build_helper_class = cls._PYPROJECT_BUILD_HELPER_CLASSES.get( + elif project_definition.build_system == 'scikit': + build_helper_class = cls._SCIKIT_BUILD_HELPER_CLASSES.get( build_target, None) elif project_definition.build_system == 'setup_py': diff --git a/l2tdevtools/build_helpers/rpm.py b/l2tdevtools/build_helpers/rpm.py index c22c3809..f9d22383 100644 --- a/l2tdevtools/build_helpers/rpm.py +++ b/l2tdevtools/build_helpers/rpm.py @@ -417,7 +417,7 @@ def Clean(self, source_helper_object): self._RemoveOlderRPMs(project_name, project_version) -class SetupPyRPMBuildHelper(RPMBuildHelper): +class PyprojectRPMBuildHelper(RPMBuildHelper): """Helper to build RPM packages (.rpm).""" def __init__( @@ -431,7 +431,7 @@ def __init__( dependency_definitions (dict[str, ProjectDefinition]): definitions of all projects, which is used to determine the properties of dependencies. """ - super(SetupPyRPMBuildHelper, self).__init__( + super(PyprojectRPMBuildHelper, self).__init__( project_definition, l2tdevtools_path, dependency_definitions) if not project_definition.architecture_dependent: self.architecture = 'noarch' @@ -695,7 +695,7 @@ def Build(self, source_helper_object): return build_successful -class SetupPySRPMBuildHelper(SRPMBuildHelper): +class PyprojectSRPMBuildHelper(SRPMBuildHelper): """Helper to build source RPM packages (.src.rpm).""" def __init__( @@ -709,7 +709,7 @@ def __init__( dependency_definitions (dict[str, ProjectDefinition]): definitions of all projects, which is used to determine the properties of dependencies. """ - super(SetupPySRPMBuildHelper, self).__init__( + super(PyprojectSRPMBuildHelper, self).__init__( project_definition, l2tdevtools_path, dependency_definitions) if not project_definition.architecture_dependent: self.architecture = 'noarch' diff --git a/tests/build_helpers/rpm.py b/tests/build_helpers/rpm.py index 75d2d2f2..12e7e710 100644 --- a/tests/build_helpers/rpm.py +++ b/tests/build_helpers/rpm.py @@ -8,11 +8,11 @@ # TODO: add BaseRPMBuildHelper tests. # TODO: add RPMBuildHelper tests. # TODO: add ConfigureMakeRPMBuildHelper tests. -# TODO: add SetupPyRPMBuildHelper tests. +# TODO: add PyprojectRPMBuildHelper tests. # TODO: add SRPMBuildHelper tests. # TODO: add ConfigureMakeSRPMBuildHelper tests. -# TODO: add SetupPySRPMBuildHelper tests. +# TODO: add PyprojectSRPMBuildHelper tests. if __name__ == '__main__':