Files
2026-08-18 01:51:35 -04:00

40 lines
1.2 KiB
Plaintext

/*
* python — CPython 3.14.
*
* Needed by the build-tool layer: meson, ninja's configure.py, and most
* of modern tooling. Self-contained build (default configure): the
* interpreter links its own bundled libpython statically, so no runtime
* lib resolution is needed.
*
* NOTE: optional deps (libffi → ctypes) are auto-disabled when absent;
* the build works on a barebones system without them. setuptools is NOT
* bundled — packages that need it must ship it themselves.
*/
package "python" {
const version = "3.14.7"
const source = "https://www.python.org/ftp/python/${version}/Python-${version}.tgz"
sha256 = "62859805f6fdf25e2bcbf3fa3217801e1996887ca33e6a2af80674bdfa2dbe07"
license = "PSF-2.0"
provides = ["python3", "python3.14"]
depends = [
{ name = "make" },
]
prepare {
curl -L -O ${source}
echo "62859805f6fdf25e2bcbf3fa3217801e1996887ca33e6a2af80674bdfa2dbe07 Python-${version}.tgz" | sha256sum -c -
tar xf Python-${version}.tgz --strip-components=1
}
build {
./configure --prefix=${prefix}
make -j${jobs}
}
install {
make DESTDIR=${destdir} install
}
}