forked from FemboyOS/fempkg_recipes
48 lines
2.5 KiB
Python
48 lines
2.5 KiB
Python
pkgname = "rustc"
|
|
pkgver = "1.91.0"
|
|
source = f"https://static.rust-lang.org/dist/rustc-{pkgver}-src.tar.xz"
|
|
builddir = f"/tmp/fempkg/build/{pkgname}/{pkgname}-{pkgver}-src"
|
|
fembuilddir = f"/tmp/fempkg/build/{pkgname}"
|
|
outputdir = "/home/gabry/lfs-repo/binpkg"
|
|
manifestdir = "/home/gabry/lfs-repo/manifests"
|
|
destdir = f"{fembuilddir}/DESTDIR"
|
|
exports = "export LIBSSH2_SYS_USE_PKG_CONFIG=1 && export LIBSQLITE3_SYS_USE_PKG_CONFIG=1"
|
|
|
|
deps = ["cmake", "curl", "libssh2", "llvm"]
|
|
|
|
build = [
|
|
# Extract
|
|
f"mkdir /tmp/fempkg/build {fembuilddir} || true && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}-src.tar.xz",
|
|
|
|
# 64-bit build
|
|
f"cd {builddir} && mkdir -pv {destdir}/opt/rustc-{pkgver} && ln -svfn rustc-{pkgver} {destdir}/opt/rustc",
|
|
|
|
f"cd {builddir} && wget https://rocketleaguechatp.duckdns.org/bootstrap.toml",
|
|
f"cd {builddir} && {exports} && ./x.py build",
|
|
f"cd {builddir} && {exports} && DESTDIR={destdir} ./x.py install",
|
|
f"cd {builddir} && {exports} && rm -fv {destdir}/opt/rustc-{pkgver}/share/doc/rustc-{pkgver}/*.old",
|
|
f"cd {builddir} && {exports} && install -vm644 README.md {destdir}/opt/rustc-{pkgver}/share/doc/rustc-{pkgver}",
|
|
f"cd {builddir} && {exports} && install -vdm755 {destdir}/usr/share/zsh/site-functions",
|
|
f"cd {builddir} && {exports} && install -vdm755 {destdir}/usr/share/bash-completion/completions",
|
|
f"cd {builddir} && {exports} && ln -sfv {destdir}/opt/rustc/share/zsh/site-functions/_cargo {destdir}/usr/share/zsh/site-functions",
|
|
f"cd {builddir} && {exports} && mv -v {destdir}/etc/bash_completion.d/cargo {destdir}/usr/share/bash-completion/completions",
|
|
|
|
# Create license directory
|
|
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
|
|
f"install -v -m644 {builddir}/LICENSE-APACHE {destdir}/usr/share/licenses/{pkgname}/LICENSE-APACHE",
|
|
f"install -v -m644 {builddir}/LICENSE-MIT {destdir}/usr/share/licenses/{pkgname}/LICENSE-MIT",
|
|
f"install -v -m644 {builddir}/COPYRIGHT {destdir}/usr/share/licenses/{pkgname}/COPYRIGHT",
|
|
f"cp -rv {builddir}/LICENSES/* {destdir}/usr/share/licenses/{pkgname}/",
|
|
|
|
# Make tarball + manifests
|
|
f"mkdir -p {outputdir} && cd {destdir} && tar --transform 's|^\\.||' -I zstd -cf {outputdir}/{pkgname}-{pkgver}.tar.zst .",
|
|
f"mkdir -p {manifestdir} && tar -tf {outputdir}/{pkgname}-{pkgver}.tar.zst | grep -v '/$' > {manifestdir}/{pkgname}.txt",
|
|
|
|
# Cleanup
|
|
f"rm -rf {builddir} {fembuilddir}"
|
|
]
|
|
|
|
|
|
triggers = [
|
|
f"cd /tmp && find /opt -maxdepth 1 -type d -name \"rustc-*\" ! -name \"rustc-{pkgver}\" -exec rm -rf {{}} +"
|
|
] |