diff --git a/README.md b/README.md index 268b85c..d8f651c 100644 --- a/README.md +++ b/README.md @@ -21,3 +21,4 @@ Warning: `leaf` won't deal with the dependence relation, and currently won't che - `libxml2` is not needed for `nghttp2` - `icu` is not needed for `libxml2` - `net-misc/curl`+`app-arch/libarchive`+`dev-libs/libuv` -> `dev-build/cmake` +- `dev-db/sqlite` -> rebuild `dev-lang/python` diff --git a/dev-lang/python-3.13.7.PKGBUILD b/dev-lang/python-3.13.7.PKGBUILD new file mode 100644 index 0000000..591793b --- /dev/null +++ b/dev-lang/python-3.13.7.PKGBUILD @@ -0,0 +1,61 @@ +pkgname=python +pkgver=3.13.7 +_pybasever=${pkgver%.*} +pkgdesc="The Python programming language" +license=('PSF-2.0') +homepage="https://www.python.org/" +sources=("Python-${pkgver}.tar.xz" + "${pkgname}-${pkgver}-docs-html.tar.bz2" + "pythondocs.sh" +) +urls=("https://www.python.org/ftp/${pkgname}/${pkgver}/${sources[0]}" + "https://www.python.org/ftp/${pkgname}/doc/${pkgver}/${sources[1]}" + "pythondocs.sh" +) +md5sums=("256cdb3bbf45cdce7499e52ba6c36ea3" + "b84c0d81b2758398bb7f5b7411d3d908" + "6ec60270c2441d78b2bc9eb24709f6e3" +) + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + tar --no-same-owner -xf ${distdir}/${sources[1]} +} + +src_build() { + # PGO should be done with -O3 + CFLAGS="${CFLAGS/-O2/-O3}" + + ./configure --prefix=/usr \ + --enable-shared \ + --with-system-expat \ + --without-ensurepip \ + --enable-optimizations + make +} + +src_check() { + LD_LIBRARY_PATH="${srcdir}":${LD_LIBRARY_PATH}\ + make test TESTOPTS="--timeout 120" +} + +src_install() { + # PGO should be done with -O3 + CFLAGS="${CFLAGS/-O2/-O3} -ffat-lto-objects" + + make DESTDIR="${pkgdir}" EXTRA_CFLAGS="$CFLAGS" install + + 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 + + # doc + install -v -dm755 "${pkgdir}/usr/share/doc/python-${pkgver}/html" + cp -R --no-preserve=mode python-${pkgver}-docs-html/* \ + "${pkgdir}/usr/share/doc/python-${pkgver}/html" + ln -svfn python-${pkgver} "${pkgdir}/usr/share/doc/python-3" + install -v -dm755 "${pkgdir}/etc/profile.d/" + install -vm644 ${distdir}/${sources[2]} "${pkgdir}/etc/profile.d/${sources[2]}" +} diff --git a/dev-lang/python-3.13.7/pythondocs.sh b/dev-lang/python-3.13.7/pythondocs.sh new file mode 100644 index 0000000..625a373 --- /dev/null +++ b/dev-lang/python-3.13.7/pythondocs.sh @@ -0,0 +1,3 @@ +# /etc/profile.d/pythondocs.sh +# this file belongs to dev-lang/python +export PYTHONDOCS=/usr/share/doc/python-3/html diff --git a/lfs/vim-9.1.1629.PKGBUILD b/lfs/vim-9.1.1629.PKGBUILD index e3ca5f6..b535eff 100644 --- a/lfs/vim-9.1.1629.PKGBUILD +++ b/lfs/vim-9.1.1629.PKGBUILD @@ -42,11 +42,17 @@ src_build() { src_check() { leaf_record_message "Tests require at least 24 lines with 80 characters." leaf_record_message "Test_write_backup_symlink is known to fail if BUILD_DIR is under /tmp." + if [[ -f /etc/vimrc ]]; then + mv -v /etc/vimrc /etc/vimrc.old + fi chown -R leaf . sed '/test_plugin_glvs/d' -i src/testdir/Make_all.mak echo "Testing... May take a while..." su leaf -c "TERM=xterm-256color LANG=en_US.UTF-8 make -j1 test" \ &> vim-test.log + if [[ -f /etc/vimrc.old ]]; then + mv -v /etc/vimrc.old /etc/vimrc + fi } src_install() {