Skip to content

Commit

Permalink
common/hooks/pre-pkg/04-generate-provides: generate provides for pyth…
Browse files Browse the repository at this point in the history
…on modules
  • Loading branch information
classabbyamp committed Dec 7, 2024
1 parent b699ef1 commit b1a17ba
Showing 1 changed file with 14 additions and 1 deletion.
15 changes: 14 additions & 1 deletion common/hooks/pre-pkg/04-generate-provides.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,27 @@
# This hook executes the following tasks:
# - Generates provides file with provides entries for xbps-create(1)

generate_python_provides() {
local py3_bin="${XBPS_MASTERDIR}/usr/bin/python3"

if [ -z "$nopyprovides" ] && [ -d "${PKGDESTDIR}/${py3_sitelib}" ] && [ -x "${py3_bin}" ]; then
PYTHONPATH="${XBPS_MASTERDIR}/${py3_sitelib}-bootstrap" "${py3_bin}" \
"${XBPS_COMMONDIR}"/scripts/parse-py-metadata.py \
-S "${PKGDESTDIR}/${py3_sitelib}" -v "${pkgver}" provides
fi
}

hook() {
local -a _provides=()

# include explicit values from the template
read -r -a _provides <<< "$provides"

# get the canonical python package names for each python module
mapfile -t _provides -O "${#_provides[@]}" < <( generate_python_provides )

if [ "${#_provides[@]}" -gt 0 ]; then
echo " ${_provides[*]}"
echo "${_provides[*]}" > "${PKGDESTDIR}/provides"
echo "${_provides[*]}" > "${XBPS_STATEDIR}/${pkgname}-provides"
fi
}

0 comments on commit b1a17ba

Please sign in to comment.