xbps-src: add support for python3 pkgs

- python_module build style now builds modules for python2/3 by default
- new python2_module and python3_module build styles for building
  python2-only and python3-only packages respectively
- no more python_versions
- no need to define pycompile_version for Python modules anymore
  (still needed for non-Python modules though)
- Python version and paths are now guessed automatically and a set of
  useful variables can now be used in templates
- #!/usr/bin/python2 and #!/usr/bin/python3 are now the default shebangs
- /usr/bin/foo2 and /usr/bin/foo3 are now the default names for bin
  scripts (for use with alternatives)
This commit is contained in:
Alessio Sergi 2016-10-16 16:46:46 +02:00
parent c90131095c
commit 4e6576e7a4
8 changed files with 149 additions and 57 deletions

View file

@ -3,7 +3,7 @@
#
do_build() {
: ${python_versions:=2.7}
: ${python_versions:="2.7 $py3_ver"}
local pyver= pysufx=
for pyver in $python_versions; do
@ -27,7 +27,7 @@ do_build() {
}
do_install() {
: ${python_versions:=2.7}
: ${python_versions:="2.7 $py3_ver"}
local pyver= pysufx=
for pyver in $python_versions; do
@ -51,13 +51,11 @@ do_install() {
fi
# Rename unversioned scripts to avoid name conflicts.
if [ "$python_versions" != "2.7" -a "$python_versions" != "${python_versions#2.7}" ]; then
if [ -d ${DESTDIR}/usr/bin ]; then
find ${DESTDIR}/usr/bin -type f ! -name "*[[:digit:]]\.[[:digit:]]" | while IFS= read -r f _; do
mv "${f}" "${f}${pyver}"
echo "[python-module] Unversioned script renamed to '${f#$DESTDIR}${pyver}'"
done
fi
if [ -d ${DESTDIR}/usr/bin ]; then
find ${DESTDIR}/usr/bin -type f ! -name "*[[:digit:]]" | while IFS= read -r f _; do
mv "${f}" "${f}${pyver%.*}"
echo "[python-module] Unversioned script renamed to '${f#$DESTDIR}${pyver%.*}'"
done
fi
done
}