Created
January 19, 2018 12:05
-
-
Save untitaker/f1f27e73489b6ea4cf3bb53bf37e34d3 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# $Id$ | |
# Maintainer: Angel Velasquez <angvp@archlinux.org> | |
# Maintainer: Felix Yan <felixonmars@archlinux.org> | |
# Contributor: Stéphane Gaudreault <stephane@archlinux.org> | |
# Contributor: Allan McRae <allan@archlinux.org> | |
# Contributor: Jason Chu <jason@archlinux.org> | |
pkgname=python | |
pkgver=3.6.4 | |
pkgrel=2 | |
_pybasever=3.6 | |
pkgdesc="Next generation of the python high-level scripting language" | |
arch=('x86_64') | |
license=('custom') | |
url="http://www.python.org/" | |
depends=('expat' 'bzip2' 'gdbm' 'openssl' 'libffi' 'zlib') | |
makedepends=('tk' 'sqlite' 'valgrind' 'bluez-libs' 'mpdecimal' 'llvm' 'gdb' 'xorg-server-xvfb') | |
optdepends=('python-setuptools' | |
'python-pip' | |
'sqlite' | |
'mpdecimal: for decimal' | |
'xz: for lzma' | |
'tk: for tkinter') | |
provides=('python3') | |
replaces=('python3') | |
source=("https://www.python.org/ftp/python/${pkgver%rc*}/Python-${pkgver}.tar.xz" | |
dont-make-libpython-readonly.patch) | |
sha512sums=('09ba2103ac517ac4d262f00380c9aac836a53401ce252540c17fd821a3b92e1ddf32528d00772221eb3126b12cb95b62c3ac3e852f4951e6f2eb406c88c848a2' | |
'SKIP') | |
prepare() { | |
cd Python-${pkgver} | |
# FS#45809 | |
patch -p1 -i ../dont-make-libpython-readonly.patch | |
# FS#23997 | |
sed -i -e "s|^#.* /usr/local/bin/python|#!/usr/bin/python|" Lib/cgi.py | |
# Ensure that we are using the system copy of various libraries (expat, zlib, libffi, and libmpdec), | |
# rather than copies shipped in the tarball | |
rm -r Modules/expat | |
rm -r Modules/zlib | |
rm -r Modules/_ctypes/{darwin,libffi}* | |
rm -r Modules/_decimal/libmpdec | |
} | |
build() { | |
cd Python-${pkgver} | |
# Disable bundled pip & setuptools | |
./configure --prefix=/usr \ | |
--enable-shared \ | |
--with-threads \ | |
--enable-ipv6 \ | |
--with-system-expat \ | |
--with-dbmliborder=gdbm:ndbm \ | |
--with-system-ffi \ | |
--with-system-libmpdec \ | |
--enable-loadable-sqlite-extensions \ | |
--without-ensurepip --with-pydebug | |
# Obtain next free server number for xvfb-run; this even works in a chroot environment. | |
export servernum=99 | |
while ! xvfb-run -a -n "$servernum" /bin/true 2>/dev/null; do servernum=$((servernum+1)); done | |
LC_CTYPE=en_US.UTF-8 xvfb-run -a -n "$servernum" make -j8 EXTRA_CFLAGS="$CFLAGS" | |
} | |
package() { | |
cd Python-${pkgver} | |
# Hack to avoid building again | |
sed -i 's/^all:.*$/all: build_all/' Makefile | |
make DESTDIR="${pkgdir}" EXTRA_CFLAGS="$CFLAGS" EXTRATESTOPTS=--list-tests -j8 install | |
# Why are these not done by default... | |
ln -s python3 "${pkgdir}"/usr/bin/python | |
ln -s python3-config "${pkgdir}"/usr/bin/python-config | |
ln -s idle3 "${pkgdir}"/usr/bin/idle | |
ln -s pydoc3 "${pkgdir}"/usr/bin/pydoc | |
ln -s python${_pybasever}.1 "${pkgdir}"/usr/share/man/man1/python.1 | |
# some useful "stuff" FS#46146 | |
install -dm755 "${pkgdir}"/usr/lib/python${_pybasever}/Tools/{i18n,scripts} | |
install -m755 Tools/i18n/{msgfmt,pygettext}.py "${pkgdir}"/usr/lib/python${_pybasever}/Tools/i18n/ | |
install -m755 Tools/scripts/{README,*py} "${pkgdir}"/usr/lib/python${_pybasever}/Tools/scripts/ | |
# License | |
install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# $Id$ | |
# Maintainer: Angel Velasquez <angvp@archlinux.org> | |
# Maintainer: Felix Yan <felixonmars@archlinux.org> | |
# Contributor: Stéphane Gaudreault <stephane@archlinux.org> | |
# Contributor: Allan McRae <allan@archlinux.org> | |
# Contributor: Jason Chu <jason@archlinux.org> | |
pkgname=python | |
pkgver=3.6.4 | |
pkgrel=2 | |
_pybasever=3.6 | |
pkgdesc="Next generation of the python high-level scripting language" | |
arch=('x86_64') | |
license=('custom') | |
url="http://www.python.org/" | |
depends=('expat' 'bzip2' 'gdbm' 'openssl' 'libffi' 'zlib') | |
makedepends=('tk' 'sqlite' 'valgrind' 'bluez-libs' 'mpdecimal' 'llvm' 'gdb' 'xorg-server-xvfb') | |
optdepends=('python-setuptools' | |
'python-pip' | |
'sqlite' | |
'mpdecimal: for decimal' | |
'xz: for lzma' | |
'tk: for tkinter') | |
provides=('python3') | |
replaces=('python3') | |
source=("https://www.python.org/ftp/python/${pkgver%rc*}/Python-${pkgver}.tar.xz"{,.asc} | |
dont-make-libpython-readonly.patch) | |
sha512sums=('09ba2103ac517ac4d262f00380c9aac836a53401ce252540c17fd821a3b92e1ddf32528d00772221eb3126b12cb95b62c3ac3e852f4951e6f2eb406c88c848a2' | |
'SKIP' | |
'2ef96708d5b13ae2a3d2cc62c87b4780e60ecfce914e190564492def3a11d5e56977659f41c7f9d12266e58050c766bce4e2b5d50b708eb792794fa8357920c4') | |
validpgpkeys=('0D96DF4D4110E5C43FBFB17F2D347EA6AA65421D') # Ned Deily (Python release signing key) <nad@python.org> | |
prepare() { | |
cd Python-${pkgver} | |
# FS#45809 | |
patch -p1 -i ../dont-make-libpython-readonly.patch | |
# FS#23997 | |
sed -i -e "s|^#.* /usr/local/bin/python|#!/usr/bin/python|" Lib/cgi.py | |
# Ensure that we are using the system copy of various libraries (expat, zlib, libffi, and libmpdec), | |
# rather than copies shipped in the tarball | |
rm -r Modules/expat | |
rm -r Modules/zlib | |
rm -r Modules/_ctypes/{darwin,libffi}* | |
rm -r Modules/_decimal/libmpdec | |
} | |
build() { | |
cd Python-${pkgver} | |
# Disable bundled pip & setuptools | |
./configure --prefix=/usr \ | |
--enable-shared \ | |
--with-threads \ | |
--with-computed-gotos \ | |
--enable-optimizations \ | |
--with-lto \ | |
--enable-ipv6 \ | |
--with-system-expat \ | |
--with-dbmliborder=gdbm:ndbm \ | |
--with-system-ffi \ | |
--with-system-libmpdec \ | |
--enable-loadable-sqlite-extensions \ | |
--without-ensurepip | |
# Obtain next free server number for xvfb-run; this even works in a chroot environment. | |
export servernum=99 | |
while ! xvfb-run -a -n "$servernum" /bin/true 2>/dev/null; do servernum=$((servernum+1)); done | |
LC_CTYPE=en_US.UTF-8 xvfb-run -a -n "$servernum" make EXTRA_CFLAGS="$CFLAGS" | |
} | |
check() { | |
# test_gdb is expected to fail with LTO | |
# test_subprocess hangs on 3.6.3 | |
cd Python-${pkgver} | |
# Obtain next free server number for xvfb-run; this even works in a chroot environment. | |
export servernum=99 | |
while ! xvfb-run -a -n "$servernum" /bin/true 2>/dev/null; do servernum=$((servernum+1)); done | |
LD_LIBRARY_PATH="${srcdir}/Python-${pkgver}":${LD_LIBRARY_PATH} \ | |
LC_CTYPE=en_US.UTF-8 xvfb-run -a -n "$servernum" \ | |
"${srcdir}/Python-${pkgver}/python" -m test.regrtest -v -uall -x test_gdb -x test_subprocess | |
} | |
package() { | |
cd Python-${pkgver} | |
# Hack to avoid building again | |
sed -i 's/^all:.*$/all: build_all/' Makefile | |
make DESTDIR="${pkgdir}" EXTRA_CFLAGS="$CFLAGS" install | |
# Why are these not done by default... | |
ln -s python3 "${pkgdir}"/usr/bin/python | |
ln -s python3-config "${pkgdir}"/usr/bin/python-config | |
ln -s idle3 "${pkgdir}"/usr/bin/idle | |
ln -s pydoc3 "${pkgdir}"/usr/bin/pydoc | |
ln -s python${_pybasever}.1 "${pkgdir}"/usr/share/man/man1/python.1 | |
# some useful "stuff" FS#46146 | |
install -dm755 "${pkgdir}"/usr/lib/python${_pybasever}/Tools/{i18n,scripts} | |
install -m755 Tools/i18n/{msgfmt,pygettext}.py "${pkgdir}"/usr/lib/python${_pybasever}/Tools/i18n/ | |
install -m755 Tools/scripts/{README,*py} "${pkgdir}"/usr/lib/python${_pybasever}/Tools/scripts/ | |
# License | |
install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment