1
0
python-meson-python/python-meson-python.spec

98 lines
3.5 KiB
RPMSpec
Raw Normal View History

#
# spec file for package python-meson-python
#
# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%{?sle15_python_module_pythons}
Name: python-meson-python
Version: 0.14.0
Release: 0
Summary: Meson Python build backend (PEP 517)
License: MIT
URL: https://github.com/mesonbuild/meson-python
Source0: https://files.pythonhosted.org/packages/source/m/meson_python/meson_python-%{version}.tar.gz
# for the test suite
Source1: https://files.pythonhosted.org/packages/py3/t/tomli/tomli-2.0.1-py3-none-any.whl
Accepting request 1104396 from home:mcalabkova:branches:devel:languages:python - Update to 0.13.2 * Add support for editable installs. * Adjust the default build options passed to meson setup. * Make sure that the directory where the wheel or sdist build artifacts are created exists. Fixes building with PDM. * Fix the specification of the C++ compiler for cross-compilation with $ARCHFLAGS on macOS. * Pass the --reconfigure option to meson setup if and only if the specified build directory exists and is a valid Meson build directory. * Pass the --no-rebuild option to meson install. * Allow to select the files to be included in the wheel via Meson install tags passing the --tags option to meson install via pyproject.toml or config settings. * Do not use the meson compile indirection to build the project, except on Windows, where it is required to setup the Visual Studio environment. * Do not add ninja to the build dependencies if $NINJA is set but it does not point to a ninja executable with the required minimum version. * Verify at run time that Meson satisfies the minimum required version. * Place native and cross files in the build directory instead of in the source directory. * Drop the typing-extensions package dependency. * Add dependency on setuptools on Python 3.12 and later. This fixes build error due to Meson depending on the distutils standard library module removed in Python 3.12. * Bump the required pyproject-metadata version to 0.7.1. * Allows some more cross-compilation setups by not checking extension modules filename suffixes against the suffixes accepted by the current interpreter. * Raise an error when a file that would be installed by Meson cannot be mapped to a wheel location. * Raise an error when a package is split between platlib and purelib. * Do not generate a warning when pyproject.toml does not contain a project OBS-URL: https://build.opensuse.org/request/show/1104396 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-meson-python?expand=0&rev=16
2023-08-22 12:37:59 +00:00
Source2: https://files.pythonhosted.org/packages/py3/p/pyproject_metadata/pyproject_metadata-0.7.1-py3-none-any.whl
Source3: https://files.pythonhosted.org/packages/py3/p/packaging/packaging-23.0-py3-none-any.whl
Source4: https://files.pythonhosted.org/packages/py3/t/typing_extensions/typing_extensions-4.4.0-py3-none-any.whl
# PATCH-FEATURE-OPENSUSE mesonpy-trim-deps.patch code@bnavigator.de
Patch11: mesonpy-trim-deps.patch
# PATCH-FEATURE-OPENSUSE mesonpy-no-wheel-rebuild.patch code@bnavigator.de
Patch12: mesonpy-no-wheel-rebuild.patch
# PATCH-FEATURE-OPENSUSE
Patch14: no-build-isolation-in-test.patch
BuildRequires: %{python_module base >= 3.7}
BuildRequires: %{python_module pip}
Accepting request 1104396 from home:mcalabkova:branches:devel:languages:python - Update to 0.13.2 * Add support for editable installs. * Adjust the default build options passed to meson setup. * Make sure that the directory where the wheel or sdist build artifacts are created exists. Fixes building with PDM. * Fix the specification of the C++ compiler for cross-compilation with $ARCHFLAGS on macOS. * Pass the --reconfigure option to meson setup if and only if the specified build directory exists and is a valid Meson build directory. * Pass the --no-rebuild option to meson install. * Allow to select the files to be included in the wheel via Meson install tags passing the --tags option to meson install via pyproject.toml or config settings. * Do not use the meson compile indirection to build the project, except on Windows, where it is required to setup the Visual Studio environment. * Do not add ninja to the build dependencies if $NINJA is set but it does not point to a ninja executable with the required minimum version. * Verify at run time that Meson satisfies the minimum required version. * Place native and cross files in the build directory instead of in the source directory. * Drop the typing-extensions package dependency. * Add dependency on setuptools on Python 3.12 and later. This fixes build error due to Meson depending on the distutils standard library module removed in Python 3.12. * Bump the required pyproject-metadata version to 0.7.1. * Allows some more cross-compilation setups by not checking extension modules filename suffixes against the suffixes accepted by the current interpreter. * Raise an error when a file that would be installed by Meson cannot be mapped to a wheel location. * Raise an error when a package is split between platlib and purelib. * Do not generate a warning when pyproject.toml does not contain a project OBS-URL: https://build.opensuse.org/request/show/1104396 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-meson-python?expand=0&rev=16
2023-08-22 12:37:59 +00:00
BuildRequires: %{python_module pyproject-metadata >= 0.7.1}
BuildRequires: %{python_module tomli >= 1.0.0 if %python-base < 3.11}
BuildRequires: %{python_module typing-extensions >= 3.7.4 if %python-base < 3.10}
BuildRequires: fdupes
BuildRequires: meson >= 0.63.3
BuildRequires: ninja
BuildRequires: python-rpm-macros
Requires: meson >= 0.63.3
Accepting request 1104396 from home:mcalabkova:branches:devel:languages:python - Update to 0.13.2 * Add support for editable installs. * Adjust the default build options passed to meson setup. * Make sure that the directory where the wheel or sdist build artifacts are created exists. Fixes building with PDM. * Fix the specification of the C++ compiler for cross-compilation with $ARCHFLAGS on macOS. * Pass the --reconfigure option to meson setup if and only if the specified build directory exists and is a valid Meson build directory. * Pass the --no-rebuild option to meson install. * Allow to select the files to be included in the wheel via Meson install tags passing the --tags option to meson install via pyproject.toml or config settings. * Do not use the meson compile indirection to build the project, except on Windows, where it is required to setup the Visual Studio environment. * Do not add ninja to the build dependencies if $NINJA is set but it does not point to a ninja executable with the required minimum version. * Verify at run time that Meson satisfies the minimum required version. * Place native and cross files in the build directory instead of in the source directory. * Drop the typing-extensions package dependency. * Add dependency on setuptools on Python 3.12 and later. This fixes build error due to Meson depending on the distutils standard library module removed in Python 3.12. * Bump the required pyproject-metadata version to 0.7.1. * Allows some more cross-compilation setups by not checking extension modules filename suffixes against the suffixes accepted by the current interpreter. * Raise an error when a file that would be installed by Meson cannot be mapped to a wheel location. * Raise an error when a package is split between platlib and purelib. * Do not generate a warning when pyproject.toml does not contain a project OBS-URL: https://build.opensuse.org/request/show/1104396 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-meson-python?expand=0&rev=16
2023-08-22 12:37:59 +00:00
Requires: python-pyproject-metadata >= 0.7.1
%if 0%{python_version_nodots} >= 312
Requires: python-setuptools
%endif
%if 0%{python_version_nodots} < 311
Requires: python-tomli >= 1.0.0
%endif
%if 0%{python_version_nodots} < 310
Requires: python-typing-extensions >= 3.7.4
%endif
# SECTION test
BuildRequires: %{python_module GitPython}
BuildRequires: %{python_module Cython}
BuildRequires: %{python_module build}
BuildRequires: %{python_module devel}
BuildRequires: %{python_module pytest-mock}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module setuptools-wheel}
BuildRequires: %{python_module wheel}
BuildRequires: patchelf
# /SECTION
BuildArch: noarch
%python_subpackages
%description
Python build backend (PEP 517) for Meson projects.
%prep
%autosetup -p1 -n meson_python-%{version}
%build
%pyproject_wheel
%install
%pyproject_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
export MESONPY_FORCE_LOCAL_LIB=1
export PIP_FIND_LINKS="%{python3_sitelib}/../wheels"
%python_expand cp %{SOURCE1} %{SOURCE2} %{SOURCE3} %{SOURCE4} build/
%pytest
%files %{python_files}
%license LICENSE
Accepting request 1104396 from home:mcalabkova:branches:devel:languages:python - Update to 0.13.2 * Add support for editable installs. * Adjust the default build options passed to meson setup. * Make sure that the directory where the wheel or sdist build artifacts are created exists. Fixes building with PDM. * Fix the specification of the C++ compiler for cross-compilation with $ARCHFLAGS on macOS. * Pass the --reconfigure option to meson setup if and only if the specified build directory exists and is a valid Meson build directory. * Pass the --no-rebuild option to meson install. * Allow to select the files to be included in the wheel via Meson install tags passing the --tags option to meson install via pyproject.toml or config settings. * Do not use the meson compile indirection to build the project, except on Windows, where it is required to setup the Visual Studio environment. * Do not add ninja to the build dependencies if $NINJA is set but it does not point to a ninja executable with the required minimum version. * Verify at run time that Meson satisfies the minimum required version. * Place native and cross files in the build directory instead of in the source directory. * Drop the typing-extensions package dependency. * Add dependency on setuptools on Python 3.12 and later. This fixes build error due to Meson depending on the distutils standard library module removed in Python 3.12. * Bump the required pyproject-metadata version to 0.7.1. * Allows some more cross-compilation setups by not checking extension modules filename suffixes against the suffixes accepted by the current interpreter. * Raise an error when a file that would be installed by Meson cannot be mapped to a wheel location. * Raise an error when a package is split between platlib and purelib. * Do not generate a warning when pyproject.toml does not contain a project OBS-URL: https://build.opensuse.org/request/show/1104396 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-meson-python?expand=0&rev=16
2023-08-22 12:37:59 +00:00
%doc README.rst
%{python_sitelib}/mesonpy
%{python_sitelib}/meson_python-%{version}*-info
%changelog