Compare commits

...
7 Commits
6 changed files with 160 additions and 1 deletions
+4
View File
@@ -44,6 +44,10 @@ def builddep(s: str):
elif s == "shortcut/rust":
builddep("shortcut/c")
_builddep += ["cargo", "rustc"]
elif s == "shortcut/cmake":
_builddep += ["cmake", "ninja"]
elif s == "shortcut/meson":
_builddep += ["meson", "ninja"]
else:
_builddep += [s]
+63
View File
@@ -0,0 +1,63 @@
import subprocess
import os
from lib import cpp, arch
from lib.make import *
upstream_version = "4.3.4"
[upstream_major, upstream_minor, upstream_rev] = upstream_version.split(".")
version(upstream_version)
source_url(
"https://github.com/Kitware/CMake/releases/download/v4.3.4/cmake-4.3.4.tar.gz"
)
builddep("shortcut/c++")
builddep("shortcut/autotools")
builddep("shortcut/cmake")
builddep(f"libcurl-dev @{arch.get_target()}")
builddep(f"aws-lc-dev @{arch.get_target()}")
builddep(f"libcurl-dev @{arch.get_target()}")
builddep(f"libexpat-dev @{arch.get_target()}")
builddep(f"libz-dev @{arch.get_target()}")
builddep(f"libbzip2-dev @{arch.get_target()}")
builddep(f"liblzma-dev @{arch.get_target()}")
builddep(f"libzstd-dev @{arch.get_target()}")
builddep(f"libnghttp2-dev @{arch.get_target()}")
builddep(f"librhash-dev @{arch.get_target()}")
builddep(f"libarchive-dev @{arch.get_target()}")
builddep(f"linux-dev @{arch.get_target()}")
def build():
os.environ["CMAKE_PREFIX_PATH"] = f"/lib/{arch.get_target()}"
cpp.cmake([
f"-DCMAKE_INSTALL_PREFIX={get_prefix('cmake')}",
"-DCMAKE_USE_SYSTEM_CURL=ON",
"-DCMAKE_USE_SYSTEM_ZLIB=ON",
"-DCMAKE_USE_SYSTEM_ZSTD=ON",
"-DCMAKE_USE_SYSTEM_LIBRHASH=ON",
"-DCMAKE_USE_SYSTEM_LIBARCHIVE=ON",
"-DCMAKE_USE_SYSTEM_LIBLZMA=ON",
"-DCMAKE_USE_SYSTEM_EXPAT=ON",
"-DCMAKE_USE_SYSTEM_BZIP2=ON",
])
cpp.ninja()
cpp.ninja_install()
on_build(build)
def pack_cmake(composer):
composer.add_dir("bin", "bin")
composer.makedir("share")
composer.add_dir(
f"share/cmake-{upstream_major}.{upstream_minor}",
f"share/cmake-{upstream_major}.{upstream_minor}",
)
package("cmake")
dep("semi-libc @same-arch")
dep("libcxx @same-arch")
dep("libcurl @same-arch")
on_pack(pack_cmake)
+30
View File
@@ -0,0 +1,30 @@
import subprocess
from lib.make import *
version("1.11.2")
source_url("https://github.com/mesonbuild/meson/releases/download/1.11.2/meson-1.11.2.tar.gz")
builddep("python")
def build():
subprocess.run([
"python3",
"./packaging/create_zipapp.py",
"--outfile",
"meson",
"--interpreter",
"/bin/python3"
])
on_build(build)
def pack_meson(composer):
composer.makedir("bin")
composer.addfile("meson", "bin/meson")
package("meson")
dep("python @same-arch")
recommend("ninja")
on_pack(pack_meson)
+33
View File
@@ -0,0 +1,33 @@
import subprocess
import os
from lib.make import *
from lib import cpp
version("1.2.3")
source_url("https://github.com/void-linux/musl-obstack/archive/refs/tags/v1.2.3.tar.gz")
def compile_obj(name):
subprocess.run(
os.environ.get("CC", "cc").split(" ")
+ ["-std=c23", "-I", ".", "-O3", "-c", "-o", f"{name}.o", f"{name}.c"],
check=True,
)
def build():
with open("config.h", "wt+") as config_h:
pass
compile_obj("obstack")
compile_obj("obstack_printf")
subprocess.run(["ar", "rcs", "libiberty_obstack.a", "obstack.o", "obstack_printf.o"], check=True)
on_build(build)
def pack_dev(composer):
composer.makedir("lib")
composer.addfile("libiberty_obstack.a", "lib/libiberty_obstack.a")
composer.makedir("include")
composer.addfile("obstack.h", "include/obstack.h")
package("libiberty-obstack-dev")
on_pack(pack_dev)
+11
View File
@@ -0,0 +1,11 @@
prefix=/
exec_prefix=${prefix}
libdir=
includedir=
Name: librhash
Description: LibRHash shared library
Version:
Cflags: -I${includedir}
Libs: -L${libdir} -lrhash
Libs.private:
+19 -1
View File
@@ -1,25 +1,43 @@
from lib import cpp
from lib.make import *
version("1.4.6")
import os
upstream_version = "1.4.6"
version(upstream_version)
source_url("https://github.com/rhash/RHash/archive/refs/tags/v1.4.6.tar.gz")
builddep("shortcut/c")
builddep("shortcut/autotools")
with open("files/librhash.pc") as f:
librhash_pc = f.read()
def build():
global librhash_pc
cpp.configure(
[
"--prefix=/",
f"--bindir={get_prefix('rhash-tools')}/bin",
f"--libdir={get_prefix('librhash')}/lib",
"--disable-gettext",
"--enable-lib-static",
]
)
cpp.make()
cpp.make_install()
os.symlink("librhash.so.1", "./lib/librhash.so")
os.makedirs("./lib/pkgconfig", exist_ok=True)
with open("./lib/pkgconfig/librhash.pc", "w+") as file:
librhash_pc = (librhash_pc
.replace("libdir=", f"libdir={get_prefix('librhash')}/lib")
.replace("includedir=", f"includedir={get_prefix('librhash-dev')}/include")
.replace("Version:", f"Version: {upstream_version}")
)
file.write(librhash_pc)
on_build(build)