mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-08-24 18:58:08 -07:00
dev-python/scikit-build: Improved build system generator for CPython
C, C++, Cython and Fortran extensions Bug: https://github.com/gentoo/gentoo/pull/14344 Bug: https://bugs.gentoo.org/705872 Package-Manager: Portage-2.3.84, Repoman-2.3.20 Signed-off-by: Andrew Ammerlaan <andrewammerlaan@riseup.net> Signed-off-by: Benda Xu <heroxbd@gentoo.org>
This commit is contained in:
committed by
Benda Xu
parent
cb8d035a39
commit
dbcd93928d
1
dev-python/scikit-build/Manifest
Normal file
1
dev-python/scikit-build/Manifest
Normal file
@@ -0,0 +1 @@
|
||||
DIST scikit-build-0.10.0.tar.gz 132443 BLAKE2B 7e817b1b6d8ea5e663cec59c5ed51b3f58318eedf6587380eb2a1458bac772a5a02a936015027f1200f740884ba33512babb1aadc4cdbb59ea38f46bc36cbb5f SHA512 cbdc59a41c60c162be84b38d207838d5e38898871f2ef02dcb672796f01f7a31645892770172e9891a4dd7aa02a85dd489b6dede4c5f717ab013dd8947d5d314
|
||||
19
dev-python/scikit-build/files/scikit-build-0.10.0-docs.patch
Normal file
19
dev-python/scikit-build/files/scikit-build-0.10.0-docs.patch
Normal file
@@ -0,0 +1,19 @@
|
||||
diff --git a/docs/conf.py b/docs/conf.py
|
||||
index 094ed23..a58cb85 100644
|
||||
--- a/docs/conf.py
|
||||
+++ b/docs/conf.py
|
||||
@@ -41,7 +41,6 @@ import skbuild
|
||||
# Add any Sphinx extension module names here, as strings. They can be
|
||||
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
|
||||
extensions = [
|
||||
- 'cmake',
|
||||
'sphinx.ext.autodoc',
|
||||
'sphinx.ext.viewcode',
|
||||
'sphinx_issues'
|
||||
@@ -291,4 +290,4 @@ on_rtd = os.environ.get('READTHEDOCS', None) == 'True'
|
||||
if not on_rtd: # only import and set the theme if we're building docs locally
|
||||
import sphinx_rtd_theme
|
||||
html_theme = 'sphinx_rtd_theme'
|
||||
- html_theme_path = [sphinx_rtd_theme.get_html_theme_path()]
|
||||
\ No newline at end of file
|
||||
+ html_theme_path = [sphinx_rtd_theme.get_html_theme_path()]
|
||||
@@ -0,0 +1,132 @@
|
||||
This patch removes coverage tests (dep on pytest-cov which is deprecated)
|
||||
It also removes the tests that test the setup.py file
|
||||
These tests give 'permission denied' exceptions because it calls commands like 'setup.py install'
|
||||
diff --git a/tests/test_hello_cpp.py b/tests/test_hello_cpp.py
|
||||
index d39c8ef..0419b88 100644
|
||||
--- a/tests/test_hello_cpp.py
|
||||
+++ b/tests/test_hello_cpp.py
|
||||
@@ -182,24 +182,3 @@ def test_hello_cleans(capfd):
|
||||
assert "removing '{}'".format(SKBUILD_DIR()) == clean1_out.splitlines()[3]
|
||||
|
||||
assert "running clean" == clean2_out
|
||||
-
|
||||
-
|
||||
-@project_setup_py_test("hello-cpp", ["develop"])
|
||||
-def test_hello_develop():
|
||||
- for expected_file in [
|
||||
- # These files are the "regular" source files
|
||||
- 'setup.py',
|
||||
- 'CMakeLists.txt',
|
||||
- 'bonjour/__init__.py',
|
||||
- 'bonjourModule.py',
|
||||
- 'hello/__init__.py',
|
||||
- 'hello/__main__.py',
|
||||
- 'hello/_hello.cxx',
|
||||
- 'hello/CMakeLists.txt',
|
||||
- # These files are "generated" by CMake and
|
||||
- # are copied from CMAKE_INSTALL_DIR
|
||||
- 'hello/_hello%s' % (sysconfig.get_config_var('SO')),
|
||||
- 'hello/world.py',
|
||||
- 'helloModule.py'
|
||||
- ]:
|
||||
- assert os.path.exists(expected_file)
|
||||
diff --git a/tests/test_issue274_support_default_package_dir.py b/tests/test_issue274_support_default_package_dir.py
|
||||
deleted file mode 100644
|
||||
index 536f7b2..0000000
|
||||
--- a/tests/test_issue274_support_default_package_dir.py
|
||||
+++ /dev/null
|
||||
@@ -1,27 +0,0 @@
|
||||
-
|
||||
-from . import (
|
||||
- _tmpdir, execute_setup_py, initialize_git_repo_and_commit,
|
||||
- prepare_project, project_setup_py_test, push_dir
|
||||
-)
|
||||
-
|
||||
-
|
||||
-@project_setup_py_test("issue-274-support-default-package-dir", ["install"], disable_languages_test=True)
|
||||
-def test_install_command():
|
||||
- pass
|
||||
-
|
||||
-
|
||||
-def test_test_command():
|
||||
- with push_dir():
|
||||
-
|
||||
- tmp_dir = _tmpdir('test_test_command')
|
||||
- project = "issue-274-support-default-package-dir"
|
||||
- prepare_project(project, tmp_dir)
|
||||
- initialize_git_repo_and_commit(tmp_dir, verbose=True)
|
||||
-
|
||||
- try:
|
||||
- with execute_setup_py(tmp_dir, ["test"], disable_languages_test=True):
|
||||
- pass
|
||||
- except SystemExit as exc:
|
||||
- assert exc.code == 0
|
||||
-
|
||||
- assert tmp_dir.join("test_hello.completed.txt").exists()
|
||||
diff --git a/tests/test_issue274_support_one_package_without_package_dir.py b/tests/test_issue274_support_one_package_without_package_dir.py
|
||||
deleted file mode 100644
|
||||
index 6612087..0000000
|
||||
--- a/tests/test_issue274_support_one_package_without_package_dir.py
|
||||
+++ /dev/null
|
||||
@@ -1,27 +0,0 @@
|
||||
-
|
||||
-from . import (
|
||||
- _tmpdir, execute_setup_py, initialize_git_repo_and_commit,
|
||||
- prepare_project, project_setup_py_test, push_dir
|
||||
-)
|
||||
-
|
||||
-
|
||||
-@project_setup_py_test("issue-274-support-one-package-without-package-dir", ["install"], disable_languages_test=True)
|
||||
-def test_install_command():
|
||||
- pass
|
||||
-
|
||||
-
|
||||
-def test_test_command():
|
||||
- with push_dir():
|
||||
-
|
||||
- tmp_dir = _tmpdir('test_test_command')
|
||||
- project = "issue-274-support-one-package-without-package-dir"
|
||||
- prepare_project(project, tmp_dir)
|
||||
- initialize_git_repo_and_commit(tmp_dir, verbose=True)
|
||||
-
|
||||
- try:
|
||||
- with execute_setup_py(tmp_dir, ["test"], disable_languages_test=True):
|
||||
- pass
|
||||
- except SystemExit as exc:
|
||||
- assert exc.code == 0
|
||||
-
|
||||
- assert tmp_dir.join("test_hello.completed.txt").exists()
|
||||
diff --git a/tests/test_issue284_build_ext_inplace.py b/tests/test_issue284_build_ext_inplace.py
|
||||
deleted file mode 100644
|
||||
index 78dd3dd..0000000
|
||||
--- a/tests/test_issue284_build_ext_inplace.py
|
||||
+++ /dev/null
|
||||
@@ -1,15 +0,0 @@
|
||||
-
|
||||
-import os
|
||||
-import sysconfig
|
||||
-
|
||||
-from distutils import sysconfig as du_sysconfig
|
||||
-
|
||||
-from . import project_setup_py_test
|
||||
-
|
||||
-
|
||||
-@project_setup_py_test("issue-284-build-ext-inplace", ["build_ext", "--inplace"], disable_languages_test=True)
|
||||
-def test_build_ext_inplace_command():
|
||||
- assert os.path.exists('hello/_hello_sk%s' % sysconfig.get_config_var('SO'))
|
||||
-
|
||||
- # See issue scikit-build #383
|
||||
- assert os.path.exists('hello/_hello_ext%s' % du_sysconfig.get_config_var('SO'))
|
||||
diff --git a/tests/test_issue334_configure_cmakelists_non_cp1252_encoding.py b/tests/test_issue334_configure_cmakelists_non_cp1252_encoding.py
|
||||
deleted file mode 100644
|
||||
index 2285bfb..0000000
|
||||
--- a/tests/test_issue334_configure_cmakelists_non_cp1252_encoding.py
|
||||
+++ /dev/null
|
||||
@@ -1,7 +0,0 @@
|
||||
-
|
||||
-from . import project_setup_py_test
|
||||
-
|
||||
-
|
||||
-@project_setup_py_test("issue-334-configure-cmakelist-non-cp1252-encoding", ["install"], disable_languages_test=True)
|
||||
-def test_install_command():
|
||||
- pass
|
||||
9
dev-python/scikit-build/metadata.xml
Normal file
9
dev-python/scikit-build/metadata.xml
Normal file
@@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
|
||||
<pkgmetadata>
|
||||
<maintainer type="project">
|
||||
<email>sci@gentoo.org</email>
|
||||
<name>Gentoo Science Project</name>
|
||||
</maintainer>
|
||||
</pkgmetadata>
|
||||
39
dev-python/scikit-build/scikit-build-0.10.0.ebuild
Normal file
39
dev-python/scikit-build/scikit-build-0.10.0.ebuild
Normal file
@@ -0,0 +1,39 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{6,7} )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="Improved build system generator for Python C/C++/Fortran/Cython extensions"
|
||||
HOMEPAGE="https://github.com/scikit-build/scikit-build"
|
||||
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
|
||||
|
||||
SLOT="0"
|
||||
LICENSE="MIT"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
RDEPEND="dev-python/distro[${PYTHON_USEDEP}]
|
||||
dev-python/packaging[${PYTHON_USEDEP}]
|
||||
dev-python/wheel[${PYTHON_USEDEP}]"
|
||||
|
||||
DEPEND="test? (
|
||||
dev-python/coverage[${PYTHON_USEDEP}]
|
||||
dev-python/cython[${PYTHON_USEDEP}]
|
||||
dev-python/flake8[${PYTHON_USEDEP}]
|
||||
dev-python/path-py[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-mock[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-runner[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-virtualenv[${PYTHON_USEDEP}]
|
||||
dev-python/PyQt5[testlib,${PYTHON_USEDEP}]
|
||||
dev-python/requests[${PYTHON_USEDEP}]
|
||||
dev-python/six[${PYTHON_USEDEP}]
|
||||
dev-python/virtualenv[${PYTHON_USEDEP}] )"
|
||||
|
||||
PATCHES=( "${FILESDIR}/${P}-docs.patch"
|
||||
"${FILESDIR}/${P}-skip-sandbox-violation-tests.patch" )
|
||||
|
||||
distutils_enable_sphinx docs dev-python/sphinx_rtd_theme dev-python/sphinx-issues
|
||||
distutils_enable_tests pytest
|
||||
Reference in New Issue
Block a user