internal/rosa/package: migrate multiple libraries

Signed-off-by: Ophestra <cat@gensokyo.uk>
This commit is contained in:
2026-05-20 04:37:42 +09:00
parent 2e710328a4
commit 47f4e287fc
14 changed files with 266 additions and 334 deletions

View File

@@ -0,0 +1,26 @@
package musl-fts {
description = "implementation of fts(3) functions which are missing in musl libc";
website = "https://github.com/void-linux/musl-fts";
anitya = 26980;
version* = "1.2.7";
source = remoteGitHub {
suffix = "void-linux/musl-fts";
tag = "v"+version;
checksum = "N_p_ZApX3eHt7xoDCw1hLf6XdJOw7ZSx7xPvpvAP0knG2zgU0zeN5w8tt5Pg60XJ";
};
env = [
"CC=cc -fPIC",
];
exec = make {
generate = "./bootstrap.sh";
};
inputs = [
automake,
libtool,
pkg-config,
];
}

View File

@@ -0,0 +1,26 @@
package musl-obstack {
description = "obstack functions and macros separated from glibc";
website = "https://github.com/void-linux/musl-obstack";
anitya = 146206;
version* = "1.2.3";
source = remoteGitHub {
suffix = "void-linux/musl-obstack";
tag = "v"+version;
checksum = "tVRY_KjIlkkMszcaRlkKdBVQHIXTT_T_TiMxbwErlILXrOBosocg8KklppZhNdCG";
};
env = [
"CC=cc -fPIC",
];
exec = make {
generate = "./bootstrap.sh";
};
inputs = [
automake,
libtool,
pkg-config,
];
}

View File

@@ -0,0 +1,26 @@
package ncurses {
description = "a free software emulation of curses in System V Release 4.0 (SVr4)";
website = "https://invisible-island.net/ncurses";
anitya = 373226;
version* = "6.6";
source = remoteTar {
url = "https://ftpmirror.gnu.org/gnu/ncurses/ncurses-"+version+".tar.gz";
checksum = "XvWp4xi6hR_hH8XUoGY26L_pqBSDapJYulhzZqPuR0KNklqypqNc1yNXU-nOjf5w";
compress = gzip;
};
exec = make {
configure = {
"with-pkg-config";
"enable-pc-files";
"with-shared";
"with-cxx-shared";
};
// "tests" are actual demo programs, not a test suite.
skipCheck = true;
};
inputs = [ pkg-config ];
}

View File

@@ -0,0 +1,13 @@
diff --git a/examples/netfilter/nfct-daemon.c b/examples/netfilter/nfct-daemon.c
index d223ac2..a7878d0 100644
--- a/examples/netfilter/nfct-daemon.c
+++ b/examples/netfilter/nfct-daemon.c
@@ -20,7 +20,7 @@
#include <linux/netfilter/nfnetlink.h>
#include <linux/netfilter/nfnetlink_conntrack.h>
-#include <sys/queue.h>
+#include <bsd/sys/queue.h>
struct nstats {
LIST_ENTRY(nstats) list;

View File

@@ -0,0 +1,107 @@
package libmnl {
description = "a minimalistic user-space library oriented to Netlink developers";
website = "https://www.netfilter.org/projects/libmnl";
anitya = 1663;
version* = "1.0.5";
source = remoteTar {
url = "https://www.netfilter.org/projects/libmnl/files/"+
"libmnl-"+version+".tar.bz2";
checksum = "DN-vbbvQDpxXJm0TJ6xlluILvfrB86avrCTX50XyE9SEFSAZ_o8nuKc5Gu0Am7-u";
compress = bzip2;
};
patches = [ "libbsd-sys-queue.patch" ];
exec = make {
configure = {
"enable-static";
};
};
inputs = [
libbsd,
kernel-headers,
];
}
package libnftnl {
description = "a userspace library providing a low-level netlink API to the in-kernel nf_tables subsystem";
website = "https://www.netfilter.org/projects/libnftnl";
anitya = 1681;
version* = "1.3.1";
source = remoteGit {
url = "https://git.netfilter.org/libnftnl";
tag = "libnftnl-"+version;
checksum = "91ou66K-I17iX6DB6hiQkhhC_v4DFW5iDGzwjVRNbJNEmKqowLZBlh3FY-ZDO0r9";
};
env = [
"CFLAGS=-D_GNU_SOURCE",
];
exec = make {
generate = "./autogen.sh";
configure = {
"enable-static";
};
};
inputs = [
automake,
libtool,
pkg-config,
libmnl,
kernel-headers,
];
runtime = [ libmnl ];
}
package iptables {
description = "the userspace command line program used to configure the Linux 2.4.x and later packet filtering ruleset";
website = "https://www.netfilter.org/projects/iptables";
anitya = 1394;
version* = "1.8.13";
source = remoteGit {
url = "https://git.netfilter.org/iptables";
tag = "v"+version;
checksum = "TUA-cFIAsiMvtRR-XzQvXzoIhJUOc9J2gQDJCbBRjmgmVfGfPTCf58wL7e-cUKVQ";
};
early = `
rm \
extensions/libxt_connlabel.txlate \
extensions/libxt_conntrack.txlate
sed -i \
's/de:ad:0:be:ee:ff/DE:AD:00:BE:EE:FF/g' \
extensions/libebt_dnat.txlate \
extensions/libebt_snat.txlate
`;
exec = make {
generate = "./autogen.sh";
configure = {
"enable-static";
};
preCheck = `
ln -s ../system/bin/bash /bin/
chmod +w /etc/ && ln -s ../usr/src/iptables/etc/ethertypes /etc/
`;
};
inputs = [
automake,
libtool,
pkg-config,
bash,
python,
libnftnl,
kernel-headers,
];
runtime = [ libnftnl ];
}

View File

@@ -0,0 +1,23 @@
package nettle {
description = "a low-level cryptographic library";
website = "https://www.lysator.liu.se/~nisse/nettle";
anitya = 2073;
version* = "4.0";
source = remoteTar {
url = "https://ftpmirror.gnu.org/gnu/nettle/nettle-"+version+".tar.gz";
checksum = "6agC-vHzzoqAlaX3K9tX8yHgrm03HLqPZzVzq8jh_ePbuPMIvpxereu_uRJFmQK7";
compress = gzip;
};
exec = make {};
inputs = [
m4,
diffutils,
gmp,
];
runtime = [ gmp ];
}

View File

@@ -0,0 +1,45 @@
package openssl {
description = "TLS/SSL and crypto library";
website = "https://www.openssl.org";
anitya = 2566;
// strange malformed tags treated as pre-releases in Anitya
latest = anityaFallback;
version* = "3.6.2";
source = remoteGitHubRelease {
suffix = "openssl/openssl";
tag = "openssl-"+version;
name = "openssl-"+version+".tar.gz";
checksum = "jH004dXTiE01Hp0kyShkWXwrSHEksZi4i_3v47D9H9Uz9LQ1aMwF7mrl2Tb4t_XA";
compress = gzip;
};
env = [
"CC=cc",
];
exec = make {
omitDefaults = true;
configureName = "/usr/src/openssl/Configure";
configure = {
"prefix": "/system";
"libdir": "lib";
"openssldir": "etc/ssl";
"": "no-docs";
};
check = [
"HARNESS_JOBS=" + jobsE,
"test",
];
};
inputs = [
perl,
coreutils,
zlib,
kernel-headers,
];
}