common/build-helper/numpy.sh: write meson cross file when needed

This commit is contained in:
Andrew J. Hesford 2023-09-21 11:00:56 -04:00
parent bed90b356e
commit 99d8d3e26f
2 changed files with 15 additions and 0 deletions

View File

@ -1083,6 +1083,11 @@ meson for cross builds. This is particularly useful for building packages that w
invocations (e.g., `python3-pep517` packages that use a meson backend) and is added by default invocations (e.g., `python3-pep517` packages that use a meson backend) and is added by default
for packages that use the `meson` build style. for packages that use the `meson` build style.
- `numpy` configures the environment for cross-compilation of python packages that provide
compiled extensions linking to NumPy C libraries. If the `meson` build helper is also
configured, a secondary cross file, `${XBPS_WRAPPERDIR}/meson/xbps_numpy.cross`, will be
written to inform meson where common NumPy components may be found.
- `python3` configures the cross-build environment to use Python libraries, header files, and - `python3` configures the cross-build environment to use Python libraries, header files, and
interpreter configurations in the target root. The `python3` helper is added by default for interpreter configurations in the target root. The `python3` helper is added by default for
packages that use the `python3-module` or `python3-pep517` build styles. packages that use the `python3-module` or `python3-pep517` build styles.

View File

@ -34,4 +34,14 @@ if [ "$CROSS_BUILD" ]; then
ln -sf "${_gfortran}" "${XBPS_WRAPPERDIR}/gfortran" ln -sf "${_gfortran}" "${XBPS_WRAPPERDIR}/gfortran"
fi fi
unset _gfortran unset _gfortran
# Write a secondary meson cross file for numpy configuration
if [[ "${build_helper}" = *meson* ]]; then
mkdir -p "${XBPS_WRAPPERDIR}/meson"
cat > "${XBPS_WRAPPERDIR}/meson/xbps_numpy.cross" <<-EOF
[properties]
numpy-include-dir = '${XBPS_CROSS_BASE}/${py3_sitelib}/numpy/core/include'
pythran-include-dir = '${XBPS_CROSS_BASE}/${py3_sitelib}/pythran'
EOF
fi
fi fi