| 1 |
|
# Copyright 1999-2025 Gentoo Authors
|
|
1 |
# Copyright 1999-2026 Gentoo Authors
|
| 2 |
2 |
# Distributed under the terms of the GNU General Public License v2
|
| 3 |
3 |
|
| 4 |
4 |
EAPI=8
|
| 5 |
5 |
|
| 6 |
6 |
DISTUTILS_EXT=1
|
| 7 |
7 |
DISTUTILS_OPTIONAL=1
|
| 8 |
|
DISTUTILS_SINGLE_IMPL=1
|
| 9 |
8 |
DISTUTILS_USE_PEP517=scikit-build-core
|
| 10 |
|
PYTHON_COMPAT=( python3_{11..13} )
|
|
9 |
PYTHON_COMPAT=( python3_{11..14} )
|
| 11 |
10 |
FORTRAN_NEEDED=fortran
|
| 12 |
11 |
inherit cmake distutils-r1 fortran-2 toolchain-funcs
|
| 13 |
12 |
|
| ... | ... | |
| 25 |
24 |
RDEPEND="
|
| 26 |
25 |
python? (
|
| 27 |
26 |
${PYTHON_DEPS}
|
| 28 |
|
$(python_gen_cond_dep '
|
| 29 |
|
dev-python/numpy[${PYTHON_USEDEP}]
|
| 30 |
|
dev-python/ruamel-yaml[${PYTHON_USEDEP}]
|
| 31 |
|
')
|
|
27 |
dev-python/numpy[${PYTHON_USEDEP}]
|
|
28 |
dev-python/ruamel-yaml[${PYTHON_USEDEP}]
|
| 32 |
29 |
$(python_gen_cond_dep '
|
| 33 |
30 |
dev-python/typing-extensions[${PYTHON_USEDEP}]
|
| 34 |
31 |
' 3.11 3.12)
|
| 35 |
32 |
)
|
| 36 |
33 |
"
|
| 37 |
|
DEPEND="${RDEPEND}"
|
|
34 |
DEPEND="
|
|
35 |
${RDEPEND}
|
|
36 |
python? ( dev-python/pybind11[${PYTHON_USEDEP}] )
|
|
37 |
"
|
| 38 |
38 |
BDEPEND="
|
| 39 |
39 |
python? (
|
| 40 |
40 |
${DISTUTILS_DEPS}
|
| 41 |
41 |
${PYTHON_DEPS}
|
| 42 |
|
test? ( $(python_gen_cond_dep 'dev-python/pyyaml[${PYTHON_USEDEP}]') )
|
|
42 |
dev-python/setuptools-scm[${PYTHON_USEDEP}]
|
|
43 |
test? ( dev-python/pyyaml[${PYTHON_USEDEP}] )
|
| 43 |
44 |
)
|
| 44 |
45 |
test? ( dev-cpp/gtest )
|
| 45 |
46 |
"
|
| ... | ... | |
| 58 |
59 |
pkg_setup() {
|
| 59 |
60 |
[[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
|
| 60 |
61 |
use fortran && fortran-2_pkg_setup
|
| 61 |
|
use python && python-single-r1_pkg_setup
|
|
62 |
use python && python_setup
|
| 62 |
63 |
}
|
| 63 |
64 |
|
| 64 |
65 |
src_prepare() {
|
| ... | ... | |
| 84 |
85 |
}
|
| 85 |
86 |
|
| 86 |
87 |
src_test() {
|
| 87 |
|
local -x LD_LIBRARY_PATH="${BUILD_DIR}"
|
|
88 |
CMAKE_SKIP_TESTS=(
|
|
89 |
# the testsuites are already quite extensive
|
|
90 |
example-*
|
|
91 |
)
|
|
92 |
local -x LD_LIBRARY_PATH="${BUILD_DIR}:${BUILD_DIR}/fortran"
|
| 88 |
93 |
cmake_src_test
|
| 89 |
94 |
use python && distutils-r1_src_test
|
| 90 |
95 |
}
|
| 91 |
96 |
|
|
97 |
python_install() {
|
|
98 |
distutils-r1_python_install
|
|
99 |
|
|
100 |
# remove duplicate headers/lib
|
|
101 |
rm -r "${ED}"/$(python_get_sitedir)/spglib/{$(get_libdir),include} || die
|
|
102 |
}
|
|
103 |
|
| 92 |
104 |
src_install() {
|
| 93 |
105 |
cmake_src_install
|
| 94 |
|
if use python; then
|
| 95 |
|
distutils-r1_src_install
|
| 96 |
|
|
| 97 |
|
# remove duplicate headers/lib
|
| 98 |
|
rm -r "${ED}"/$(python_get_sitedir)/spglib/{$(get_libdir),include} || die
|
| 99 |
|
fi
|
|
106 |
use python && distutils-r1_src_install
|
| 100 |
107 |
}
|