Compare commits

..
42 Commits
Author SHA1 Message Date
sisungo f947e27187 feat: add package alsa-lib
Signed-off-by: sisungo <[email protected]>
2026-07-02 22:40:43 +08:00
sisungo e0cbdf7a1b Merge pull request 'feat: add package bmake' (#65) from sisungo/semios-packages:bmake into master
Reviewed-on: semios/semios-packages#65
2026-07-02 22:36:32 +08:00
sisungo 19659a6b43 Merge pull request 'feat: add prefix support' (#70) from sisungo/semios-packages:prefix into master
Reviewed-on: semios/semios-packages#70
2026-07-02 22:35:46 +08:00
sisungo f7ff9d9742 feat: add prefix support
Signed-off-by: sisungo <[email protected]>
2026-07-02 22:35:03 +08:00
sisungo c9627305c2 Merge pull request 'feat: add package libffi' (#61) from sisungo/semios-packages:libffi into master
Reviewed-on: semios/semios-packages#61
2026-06-29 16:37:04 +08:00
sisungo 69adb4a599 Merge pull request 'feat: add package neatvi' (#60) from sisungo/semios-packages:neatvi into master
Reviewed-on: semios/semios-packages#60
2026-06-29 16:36:49 +08:00
sisungo 7076f76481 Merge pull request 'feat: add package awk' (#64) from sisungo/semios-packages:awk into master
Reviewed-on: semios/semios-packages#64
2026-06-29 16:36:33 +08:00
sisungo 83e967f858 feat: add package bmake
Signed-off-by: sisungo <[email protected]>
2026-06-29 16:23:56 +08:00
sisungo bc23a14b1a feat: add package awk
Signed-off-by: sisungo <[email protected]>
2026-06-29 15:43:38 +08:00
sisungo 5b78c48d8e feat: add package libffi
Signed-off-by: sisungo <[email protected]>
2026-06-29 14:13:56 +08:00
sisungo 36ceb91590 feat: add package neatvi
Signed-off-by: sisungo <[email protected]>
2026-06-29 13:56:33 +08:00
sisungo f24ea2d4bf Merge pull request 'feat: use packie new links format' (#59) from sisungo/semios-packages:new-links-format into master
Reviewed-on: semios/semios-packages#59
2026-06-28 17:12:16 +08:00
sisungo b4aa642b52 feat: use packie new links format
Signed-off-by: sisungo <[email protected]>
2026-06-28 16:31:35 +08:00
sisungo 9eb4453f3a Merge pull request 'feat: update aws-lc OPENSSLDIR' (#58) from sisungo/semios-packages:aws-lc-patch into master
Reviewed-on: semios/semios-packages#58
2026-06-28 11:32:43 +08:00
sisungo 132c47e419 Merge pull request 'feat: add aws-lc support for python' (#57) from sisungo/semios-packages:python into master
Reviewed-on: semios/semios-packages#57
2026-06-28 10:25:56 +08:00
sisungo 596b055467 feat: update aws-lc OPENSSLDIR
Signed-off-by: sisungo <[email protected]>
2026-06-28 03:35:34 +08:00
sisungo cc0a73feff feat: add aws-lc support for python
Signed-off-by: sisungo <[email protected]>
2026-06-28 02:46:31 +08:00
sisungo 4b842d43be Merge pull request 'feat: add package file' (#52) from sisungo/semios-packages:file into master
Reviewed-on: semios/semios-packages#52
2026-06-27 22:00:27 +08:00
sisungo 7f1ee4b598 Merge pull request 'feat: update aws-lc to 5.1.0' (#56) from sisungo/semios-packages:aws-lc-update into master
Reviewed-on: semios/semios-packages#56
2026-06-27 22:00:09 +08:00
sisungo 15eb054209 feat: update aws-lc to 5.1.0
Signed-off-by: sisungo <[email protected]>
2026-06-27 21:31:22 +08:00
sisungo 16a1087785 feat: add package file
Signed-off-by: sisungo <[email protected]>
2026-06-27 18:28:20 +08:00
sisungo d0186dacb5 Merge pull request 'feat: add package python' (#49) from sisungo/semios-packages:python into master
Reviewed-on: semios/semios-packages#49
2026-06-27 13:45:30 +08:00
sisungo 574f8a5996 Merge pull request 'feat: update semi-libc to v1.2.6' (#50) from sisungo/semios-packages:semi-libc-new into master
Reviewed-on: semios/semios-packages#50
2026-06-27 13:44:27 +08:00
sisungo bb3c5b2741 feat: update semi-libc to v1.2.6
Signed-off-by: sisungo <[email protected]>
2026-06-27 13:43:36 +08:00
sisungo e749a4f1f9 feat: add package python
Signed-off-by: sisungo <[email protected]>
2026-06-27 10:46:20 +08:00
sisungo 10ca4e4931 Merge pull request 'feat: add package openssh' (#47) from sisungo/semios-packages:openssh into master
Reviewed-on: semios/semios-packages#47
2026-06-26 19:58:49 +08:00
sisungo e65eee4bf1 Merge pull request 'feat: add package iana-timezone' (#46) from sisungo/semios-packages:iana-timezone into master
Reviewed-on: semios/semios-packages#46
2026-06-26 19:58:39 +08:00
sisungo 7797e7674c Merge pull request 'feat: add package mandoc' (#45) from sisungo/semios-packages:mandoc into master
Reviewed-on: semios/semios-packages#45
2026-06-26 19:58:24 +08:00
sisungo d9b7a01d01 Merge pull request 'feat: add package ncurses' (#48) from sisungo/semios-packages:ncurses into master
Reviewed-on: semios/semios-packages#48
2026-06-26 19:58:08 +08:00
sisungo 232d8c51d6 feat: add package ncurses
Signed-off-by: sisungo <[email protected]>
2026-06-26 18:11:33 +08:00
sisungo 56998f9787 feat: add package openssh
Signed-off-by: sisungo <[email protected]>
2026-06-26 17:07:35 +08:00
sisungo 510eca1ab6 feat: add package iana-timezone
Signed-off-by: sisungo <[email protected]>
2026-06-26 16:43:12 +08:00
sisungo 057330e43f feat: add package mandoc
Signed-off-by: sisungo <[email protected]>
2026-06-26 14:30:24 +08:00
sisungo 0ba3f9a31c Merge pull request 'feat: add package ripgrep' (#41) from sisungo/semios-packages:ripgrep into master
Reviewed-on: semios/semios-packages#41
2026-06-26 14:12:41 +08:00
sisungo 63c3485f5e Merge pull request 'feat: add package sed' (#42) from sisungo/semios-packages:sed into master
Reviewed-on: semios/semios-packages#42
2026-06-26 14:12:26 +08:00
sisungo 9835791b4c Merge pull request 'feat: add package nextvi' (#40) from sisungo/semios-packages:nextvi into master
Reviewed-on: semios/semios-packages#40
2026-06-26 14:12:15 +08:00
sisungo 204f650c63 Merge pull request 'fix: some dependencies are invalid' (#44) from sisungo/semios-packages:fix-deps into master
Reviewed-on: semios/semios-packages#44
2026-06-26 14:12:01 +08:00
sisungo e9fe74358f Merge pull request 'feat: add link to /bin/sh in mksh' (#39) from sisungo/semios-packages:mksh-link into master
Reviewed-on: semios/semios-packages#39
2026-06-26 14:11:48 +08:00
sisungo 962c916ae1 fix: some dependencies are invalid
Signed-off-by: sisungo <[email protected]>
2026-06-26 13:37:12 +08:00
sisungo bffd8e3cdc feat: add link to /bin/sh in mksh
Signed-off-by: sisungo <[email protected]>
2026-06-25 06:19:26 +08:00
sisungo 51368da8ff feat: add package ripgrep
Signed-off-by: sisungo <[email protected]>
2026-06-25 06:14:38 +08:00
sisungo f8f18ce917 feat: add package sed
Signed-off-by: sisungo <[email protected]>
2026-06-25 06:10:15 +08:00
31 changed files with 642 additions and 16 deletions
+16 -1
View File
@@ -1,4 +1,5 @@
import os
import shutil
import subprocess
from lib.common import treedir
@@ -32,11 +33,25 @@ def make(rem: list[str] = []):
subprocess.run(["make", f"-j{os.cpu_count()}"] + rem, check=True)
def make_install(rem: list[str] | None = None, chdir: bool = True):
def make_install(rem: list[str] | None = None, chdir: bool = True, move: bool = True):
default_rem = ["DESTDIR=" + os.getcwd() + "/../cpp_install"]
if rem is None:
try:
shutil.rmtree("../cpp_install")
except:
pass
subprocess.run(["make", "install"] + (rem or default_rem), check=True)
if rem is None and chdir:
os.chdir("../cpp_install")
if chdir and move:
subprocess.run(
["sh", "-c", "cp -r ./pkg/*@*/* . 2>/dev/null || true"], check=False
)
subprocess.run(
["sh", "-c", "cp -r ./usr/local/* . 2>/dev/null || true"], check=False
)
subprocess.run(["sh", "-c", "cp -r ./usr/* . 2>/dev/null || true"], check=False)
subprocess.run(["rm", "-rf", "./pkg", "./usr"], check=False)
def ninja(rem: list[str] = []):
+9
View File
@@ -72,6 +72,15 @@ def link(src: str, dst: str, default: bool = True):
]
def get_prefix(pkgname: str) -> str:
pkginfo = _pkginfo[pkgname]
if pkginfo.get(_key_arch_any):
pkgarch = "any"
else:
pkgarch = arch.get_target()
return f"/pkg/{pkgname}={pkginfo[_key_version]}@{pkgarch}"
def supported_arch(s: list[str] | typing.Callable[[str], bool]):
global _supported_arch
if isinstance(s, list):
+7 -1
View File
@@ -23,7 +23,13 @@ class PkgComposer:
def write_manifest(self, manifest: dict):
with open(self.workdir + "/PkgManifest.json", "w") as f:
json.dump(manifest, f, indent=4)
json.dump(manifest, f)
def write_links(self, links: list[dict]):
with open(self.workdir + "/_links", "w") as f:
for link in links:
json.dump(link, f)
f.write("\n")
def compose(self):
shutil.make_archive(self.pkgfile, _archive_format, self.workdir)
+49
View File
@@ -0,0 +1,49 @@
from lib import arch, cpp
from lib.make import *
upstream_version = "1.2.16.1"
version(upstream_version)
source_url("https://www.alsa-project.org/files/pub/lib/alsa-lib-1.2.16.1.tar.bz2")
def build():
cpp.configure(
[
"--prefix=/",
f"--libdir={get_prefix('alsa-lib')}/lib",
f"--includedir={get_prefix('alsa-lib-dev')}/include",
"--enable-symbolic-functions",
f"--with-configdir={get_prefix('alsa-lib')}/share/alsa",
f"--with-plugindir=/lib/{arch.get_target()}/alsa/plugins",
]
)
cpp.make()
cpp.make_install()
on_build(build)
def pack_alsa_lib(composer):
composer.makedir("lib")
for i in [
"libasound.so",
"libasound.so.2",
"libasound.so.2.0.0",
"libatopology.so",
"libatopology.so.2",
"libatopology.so.2.0.0",
]:
composer.addfile(f"lib/{i}", f"lib/{i}")
composer.makedir("share")
composer.add_dir("share/alsa", "share/alsa")
package("alsa-lib")
dep("semi-libc @same-arch")
on_pack(pack_alsa_lib)
package("alsa-lib-dev")
dep("alsa-lib (same)")
cpp.use_auto_pack(["dev"])
+24
View File
@@ -0,0 +1,24 @@
import os
from lib import cpp
from lib.make import *
version("2026.4.26")
source_url("https://github.com/onetrueawk/awk/archive/refs/tags/20260426.tar.gz")
def build():
cpp.make()
on_build(build)
def pack(composer):
composer.makedir("bin")
composer.addfile("a.out", "bin/awk")
package("awk")
dep("semi-libc @same-arch")
on_pack(pack)
@@ -0,0 +1,11 @@
--- a/crypto/x509/x509_def.c
+++ b/crypto/x509/x509_def.c
@@ -5,7 +5,7 @@
// TODO(fork): cleanup
-#define OPENSSLDIR "/etc/ssl"
+#define OPENSSLDIR "/var/config/ssl"
#define X509_CERT_AREA OPENSSLDIR
#define X509_CERT_DIR OPENSSLDIR "/certs"
+2 -2
View File
@@ -3,8 +3,8 @@ import os
import lib.cpp as cpp
from lib.make import *
version("5.0.0")
source_url("https://github.com/aws/aws-lc/archive/refs/tags/v5.0.0.tar.gz")
version("5.1.0")
source_url("https://github.com/aws/aws-lc/archive/refs/tags/v5.1.0.tar.gz")
def build():
@@ -0,0 +1,44 @@
--- a/unit-tests/Makefile
+++ b/unit-tests/Makefile
@@ -62,7 +62,6 @@
TESTS+= cmd-errors
TESTS+= cmd-errors-jobs
TESTS+= cmd-errors-lint
-TESTS+= cmd-interrupt
TESTS+= cmdline
TESTS+= cmdline-redirect-stdin
TESTS+= cmdline-undefined
@@ -139,7 +138,6 @@
TESTS+= deptgt-begin-fail
TESTS+= deptgt-begin-fail-indirect
TESTS+= deptgt-default
-TESTS+= deptgt-delete_on_error
TESTS+= deptgt-end
TESTS+= deptgt-end-fail
TESTS+= deptgt-end-fail-all
@@ -147,7 +145,6 @@
TESTS+= deptgt-end-jobs
TESTS+= deptgt-error
TESTS+= deptgt-ignore
-TESTS+= deptgt-interrupt
TESTS+= deptgt-main
TESTS+= deptgt-makeflags
TESTS+= deptgt-no_parallel
@@ -511,8 +508,6 @@
.if ${.MAKE.OS:NIRIX*} == ""
BROKEN_TESTS+= \
- cmd-interrupt \
- deptgt-interrupt \
job-output-null \
opt-chdir \
opt-debug-x-trace \
@@ -538,7 +533,6 @@
BROKEN_TESTS+= job-output-null
.else
BROKEN_TESTS+= \
- cmd-interrupt \
job-flags \
.endif
+36
View File
@@ -0,0 +1,36 @@
import os
from lib import cpp
from lib.make import *
VERSION = "2026.6.19"
version(VERSION)
source_url("https://www.crufty.net/ftp/pub/sjg/bmake-20260619.tar.gz")
def build():
cpp.configure(
[
"--prefix=/",
f"--with-default-sys-path=/pkg/bmake={VERSION}@{arch.get_target()}/share/mk",
]
)
cpp.make()
cpp.make_install()
os.chmod("bin/bmake", 0o655)
on_build(build)
def pack_bmake(composer):
composer.makedir("bin")
composer.addfile("bin/bmake", "bin/bmake")
composer.makedir("share")
composer.add_dir("share/mk", "share/mk")
package("bmake")
dep("semi-libc @same-arch")
on_pack(pack_bmake)
+43
View File
@@ -0,0 +1,43 @@
import subprocess
from lib import cpp
from lib.make import *
VERSION = "5.48"
version(VERSION)
source_git("https://github.com/file/file.git", "FILE5_48")
def build():
subprocess.run(["autoreconf", "-fiv"], check=True)
cpp.configure(["--prefix=/", f"--datadir=/share/file"])
cpp.make()
cpp.make_install()
on_build(build)
def pack_magic_db(composer):
composer.add_dir(f"share/file", "share")
package("file-magic-db")
arch_any()
link("share/misc/magic.mgc", "/share/file/misc/magic.mgc")
on_pack(pack_magic_db)
package("libmagic")
dep("semi-libc @same-arch")
dep("file-magic-db (same-version) @any")
cpp.use_auto_pack(["lib"])
package("libmagic-dev")
dep("libmagic (same)")
cpp.use_auto_pack(["dev"])
package("file")
dep("libmagic (same)")
cpp.use_auto_pack(["bin"])
+1 -1
View File
@@ -6,7 +6,7 @@ source_url("https://ftp.gnu.org/gnu/make/make-4.4.1.tar.gz")
def build():
cpp.configure(["--prefix=/"])
cpp.configure([f"--prefix={get_prefix('gnu-make')}"])
cpp.make()
cpp.make_install()
+32
View File
@@ -0,0 +1,32 @@
import os
from lib import cpp
from lib.make import *
version("2026.4.22")
source_url("https://data.iana.org/time-zones/releases/tzdb-2026b.tar.lz")
def build():
cpp.make()
cpp.make_install()
on_build(build)
def pack_db(composer):
composer.makedir("share")
composer.add_dir("share/zoneinfo", "share/zoneinfo")
package("iana-timezone-db")
arch_any()
on_pack(pack_db)
package("iana-timezone-tools")
dep("semi-libc @same-arch")
cpp.use_auto_pack(["bin"])
package("iana-timezone-dev")
cpp.use_auto_pack(["dev"])
+10 -1
View File
@@ -11,7 +11,16 @@ source_url(
def build():
os.chdir("source")
cpp.configure(["--enable-plugins", "--prefix=/"])
cpp.configure(
[
"--enable-plugins",
"--prefix=/",
f"--bindir={get_prefix('icu4c')}/bin",
f"--sbindir={get_prefix('icu4c')}/sbin",
f"--libdir={get_prefix('libicu4c')}/lib",
f"--includedir={get_prefix('libicu4c-dev')}/include",
]
)
cpp.make()
cpp.make_install()
+2
View File
@@ -19,6 +19,8 @@ on_build(build)
package("libkmod")
cpp.use_auto_pack(["lib"])
dep("semi-libc @same-arch")
dep("libzstd @same-arch")
dep("libcrypto @same-arch")
package("kmod")
cpp.use_auto_pack(["bin"])
+8 -1
View File
@@ -8,7 +8,14 @@ source_url(
def build():
cpp.configure(["--prefix=/"])
cpp.configure(
[
"--prefix=/",
f"--bindir={get_prefix('libarchive-tools')}/bin",
f"--libdir={get_prefix('libarchive')}/lib",
f"--includedir={get_prefix('libarchive-dev')}/include",
]
)
cpp.make()
cpp.make_install()
+32
View File
@@ -0,0 +1,32 @@
from lib import cpp
from lib.make import *
version("3.6.0")
source_url(
"https://github.com/libffi/libffi/releases/download/v3.6.0/libffi-3.6.0.tar.gz"
)
def build():
cpp.configure(
[
"--prefix=/",
f"--libdir={get_prefix('libffi')}/lib",
f"--includedir={get_prefix('libffi-dev')}/include",
"--enable-portable-binary",
"--disable-multi-os-directory",
]
)
cpp.make()
cpp.make_install()
on_build(build)
package("libffi")
dep("semi-libc @same-arch")
cpp.use_auto_pack(["lib"])
package("libffi-dev")
dep("libffi (same)")
cpp.use_auto_pack(["dev"])
+21
View File
@@ -0,0 +1,21 @@
import os
import subprocess
from lib import cpp
from lib.make import *
version("1.14.6")
source_url("https://mandoc.bsd.lv/snapshots/mandoc-1.14.6.tar.gz")
def build():
cpp.configure()
cpp.make([f"CC={os.environ['CC']}"])
cpp.make_install()
subprocess.run(["sh", "-c", "chmod +w bin/* sbin/*"], check=True)
on_build(build)
package("mandoc")
cpp.use_auto_pack(["bin"])
+1
View File
@@ -22,3 +22,4 @@ package("mksh")
on_pack(pack_mksh)
dep("semi-libc @same-arch")
provide("sh")
link("bin/mksh", "/bin/sh")
+65
View File
@@ -0,0 +1,65 @@
import os
from lib import cpp
from lib.make import *
version("6.6")
source_url("https://invisible-island.net/archives/ncurses/ncurses-6.6.tar.gz")
def build():
cpp.configure(
[
"--prefix=/",
f"--bindir={get_prefix('ncurses-tools')}/bin",
f"--sbindir={get_prefix('ncurses-tools')}/sbin",
f"--libdir={get_prefix('libncurses')}/lib",
f"--includedir={get_prefix('libncurses')}/include",
"--enable-pc-files",
"--with-shared",
"--with-terminfo-dirs=/share/terminfo",
"--enable-symlinks",
"--enable-sp-funcs",
"--enable-ext-colors",
"--enable-rgb-color",
"--enable-ext-mouse",
"--enable-ext-putwin",
"--enable-no-padding",
"--enable-sigwinch",
"--enable-tcap-names",
"--with-pthread",
"--enable-pthreads-eintr",
"--enable-weak-symbols",
"--enable-reentrant",
"--without-develop",
]
)
cpp.make()
cpp.make_install()
os.unlink("lib/terminfo")
on_build(build)
package("libncurses")
dep("semi-libc @same-arch")
cpp.use_auto_pack(["lib"])
package("ncurses-tools")
dep("libncurses (same)")
cpp.use_auto_pack(["bin"])
package("libncurses-dev")
dep("libncurses (same)")
cpp.use_auto_pack(["dev"])
def pack_terminfo(composer):
composer.makedir("share")
composer.add_dir("share/tabset", "share/tabset")
composer.add_dir("share/terminfo", "share/terminfo")
package("ncurses-terminfo")
arch_any()
on_pack(pack_terminfo)
+25
View File
@@ -0,0 +1,25 @@
import os
from lib import cpp
from lib.make import *
version("19")
source_url("https://github.com/aligrudi/neatvi/archive/refs/tags/19.tar.gz")
def build():
cpp.make([f"CC={os.environ['CC']}"])
on_build(build)
def pack(composer):
composer.makedir("bin")
composer.addfile("vi", "bin/vi")
package("neatvi")
provide("vi")
dep("semi-libc @same-arch")
on_pack(pack)
+55
View File
@@ -0,0 +1,55 @@
from lib import cpp
from lib.make import *
version("10.3.1")
source_url("https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-10.3p1.tar.gz")
def build():
cpp.configure(
[
"--prefix=/",
"--sysconfdir=/var/config",
"--disable-etc-default-login",
"--with-linux-memlock-onfault",
"--without-shadow",
"--with-pam",
"--with-pie",
]
)
cpp.make()
cpp.make_install()
on_build(build)
def pack_client(composer):
composer.add_dir("bin", "bin")
composer.makedir("libexec")
composer.addfile("libexec/ssh-sk-helper", "libexec/ssh-sk-helper")
composer.addfile("libexec/ssh-pkcs11-helper", "libexec/ssh-pkcs11-helper")
package("openssh-client")
dep("semi-libc @same-arch")
dep("libcrypto @same-arch")
dep("libz @same-arch")
on_pack(pack_client)
provide("ssh")
def pack_server(composer):
composer.makedir("bin")
composer.addfile("sbin/sshd", "bin/sshd")
composer.makedir("libexec")
composer.addfile("libexec/sftp-server", "libexec/sftp-server")
composer.addfile("libexec/ssh-keysign", "libexec/ssh-keysign")
composer.addfile("libexec/sshd-auth", "libexec/sshd-auth")
composer.addfile("libexec/sshd-session", "libexec/sshd-session")
package("openssh-server")
dep("openssh-client (same)")
dep("libpam @same-arch")
on_pack(pack_server)
+3
View File
@@ -10,6 +10,9 @@ def build():
cpp.configure(
[
"--prefix=/",
f"--bindir={get_prefix('pkgconf')}/bin",
f"--libdir={get_prefix('libpkgconf')}/lib",
f"--includedir={get_prefix('libpkgconf-dev')}/include",
f"--with-system-libdir=/lib:/lib/{arch.get_target()}",
f"--with-system-includedir=/lib/{arch.get_target()}/include",
f"--with-pkg-config-dir=/lib/{arch.get_target()}/pkgconfig",
+97
View File
@@ -0,0 +1,97 @@
import os
import shutil
import subprocess
from lib import arch, cpp
from lib.make import *
VERSION_BASE = "3.14"
VERSION_APPEND = "6"
VERSION_FULL = f"{VERSION_BASE}.{VERSION_APPEND}"
version(VERSION_FULL)
source_url(
f"https://www.python.org/ftp/python/{VERSION_FULL}/Python-{VERSION_FULL}.tar.xz"
)
def build():
cpp.configure(
[
"--prefix=/",
f"--with-platlibdir=lib/{arch.get_target()}",
"--enable-shared",
"--enable-safety",
"--enable-optimizations",
"--enable-loadable-sqlite-extensions",
"--enable-ipv6",
"--with-lto=thin",
"--with-tzpath=/share/zoneinfo",
"--with-system-expat",
"--with-system-libmpdec",
"--with-readline=editline",
"--with-tail-call-interp",
"--without-ensurepip",
"--with-ssl-default-suites=openssl",
]
)
cpp.make()
cpp.make_install()
os.rename(
f"lib/{arch.get_target()}/python{VERSION_BASE}", f"lib/python{VERSION_BASE}"
)
os.rmdir(f"lib/{arch.get_target()}")
on_build(build)
def python_config_target():
return arch.get_target().replace("-semios-linux", "-linux-musl")
def pack_libpython(composer):
# Pack the standard library
pystdpath = f"{composer.workdir}/bundle/lib/python{VERSION_BASE}"
composer.makedir("lib")
composer.add_dir(f"lib/python{VERSION_BASE}", f"lib/python{VERSION_BASE}")
shutil.rmtree(f"{pystdpath}/test")
os.remove(
f"{pystdpath}/config-{VERSION_BASE}-{python_config_target()}/libpython{VERSION_BASE}.a"
)
os.remove(f"{pystdpath}/config-{VERSION_BASE}-{python_config_target()}/python.o")
# Pack native libraries
composer.addfile(
f"lib/libpython{VERSION_BASE}.so", f"lib/libpython{VERSION_BASE}.so"
)
composer.addfile(
f"lib/libpython{VERSION_BASE}.so.1.0", f"lib/libpython{VERSION_BASE}.so.1.0"
)
composer.addfile("lib/libpython3.so", "lib/libpython3.so")
package("libpython")
dep("semi-libc @same-arch")
on_pack(pack_libpython)
package("python")
dep("libpython (same)")
cpp.use_auto_pack(["bin"])
link(f"bin/python{VERSION_BASE}", "/bin/python3")
link(f"bin/python{VERSION_BASE}", "/bin/python")
package("libpython-dev")
dep("libpython (same)")
cpp.use_auto_pack(["dev"])
def pack_test(composer):
composer.makedirs(f"lib/python{VERSION_BASE}")
composer.add_dir(f"lib/python{VERSION_BASE}/test", f"lib/python{VERSION_BASE}/test")
package("python-test")
dep("libpython (same)")
on_pack(pack_test)
+16
View File
@@ -0,0 +1,16 @@
from lib import rust
from lib.make import *
version("15.1.0")
source_url("https://github.com/BurntSushi/ripgrep/archive/refs/tags/15.1.0.tar.gz")
def build():
rust.build()
on_build(build)
package("ripgrep")
dep("semi-libc @same-arch")
rust.use_auto_pack(["bin"])
+16
View File
@@ -0,0 +1,16 @@
from lib import rust
from lib.make import *
version("0.1.1")
source_url("https://github.com/uutils/sed/releases/download/0.1.1/source.tar.gz")
def build():
rust.build()
on_build(build)
package("sed")
dep("semi-libc @same-arch")
rust.use_auto_pack(["bin"])
+2 -2
View File
@@ -2,9 +2,9 @@ import lib.arch as arch
from lib.cpp import *
from lib.make import *
source_url("https://gitea.semilabs.org/semios/semi-libc/archive/v1.2.5.tar.gz")
version("1.2.5")
version("1.2.6")
source_url("https://gitea.semilabs.org/semios/semi-libc/archive/v1.2.6.tar.gz")
def build():
configure(["--prefix=/"])
+3
View File
@@ -9,6 +9,9 @@ def build():
cpp.configure(
[
"--prefix=/",
f"--libdir={get_prefix('libsqlite')}/lib",
f"--bindir={get_prefix('sqlite')}/bin",
f"--includedir={get_prefix('libsqlite-dev')}/include",
"--all",
"--with-linenoise=/pkg/linenoise-dev=2.0@any",
"--icu-collations",
+8 -1
View File
@@ -8,7 +8,14 @@ source_url(
def build():
cpp.configure(["--prefix=/"])
cpp.configure(
[
"--prefix=/",
f"--libdir={get_prefix('liblzma')}/lib",
f"--bindir={get_prefix('xz')}/bin",
f"--includedir={get_prefix('liblzma-dev')}/include",
]
)
cpp.make()
cpp.make_install()
+2 -3
View File
@@ -11,14 +11,13 @@ def build():
cpp.cmake(["-DZLIB_COMPAT=ON", "-DINSTALL_UTILS=ON"])
cpp.ninja()
cpp.ninja_install()
os.chdir("usr")
on_build(build)
package("libz-ng")
cpp.use_auto_pack(["lib"])
provide("libz")
provide("libz@same-arch")
dep("semi-libc @same-arch")
package("zlib-ng-tools")
@@ -28,4 +27,4 @@ dep("libz-ng (same)")
package("libz-ng-dev")
cpp.use_auto_pack(["dev"])
dep("libz-ng (same)")
provide("libz-dev")
provide("libz-dev@same-arch")
+1 -2
View File
@@ -10,9 +10,8 @@ source_url(
def build():
cpp.make()
cpp.make(["HAVE_ZLIB=0", "HAVE_LZMA=0", "HAVE_LZ4=0"])
cpp.make_install()
os.chdir("usr/local")
on_build(build)
+1 -1
View File
@@ -107,11 +107,11 @@ def run_build_package(package: str):
"name": pkgname,
"version": pkgver,
"arch": pkgarch,
"links": pkginfo[lib.make._key_links],
"dependencies": pkginfo[lib.make._key_dependencies],
"provides": pkginfo[lib.make._key_provides],
}
composer.write_manifest(manifest)
composer.write_links(pkginfo[lib.make._key_links])
composer.compose()
# Build success