aboutsummaryrefslogtreecommitdiffhomepage
path: root/internal
diff options
context:
space:
mode:
authorOphestra <cat@gensokyo.uk>2026-02-20 21:29:09 +0900
committerOphestra <cat@gensokyo.uk>2026-02-20 21:29:09 +0900
commit273068b90cf6117738c2aa1d48fd4fa9b471bf50 (patch)
tree1c0f571e732ca4bc258ecf444cc8b31aaaf97b84 /internal
parent16b20e1d3405793124d633f80e8a21b01063b7f6 (diff)
internal/rosa: musl-fts artifact
Another nonstandard glibc extension used by elfutils. Signed-off-by: Ophestra <cat@gensokyo.uk>
Diffstat (limited to 'internal')
-rw-r--r--internal/rosa/all.go2
-rw-r--r--internal/rosa/musl-fts.go33
2 files changed, 35 insertions, 0 deletions
diff --git a/internal/rosa/all.go b/internal/rosa/all.go
index e4005226..5e6500a4 100644
--- a/internal/rosa/all.go
+++ b/internal/rosa/all.go
@@ -57,6 +57,7 @@ const (
Make
Meson
Mksh
+ MuslFts
NSS
NSSCACert
Ninja
@@ -173,6 +174,7 @@ func ResolveName(name string) (p PArtifact, ok bool) {
"make": Make,
"meson": Meson,
"mksh": Mksh,
+ "musl-fts": MuslFts,
"nss": NSS,
"nss-cacert": NSSCACert,
"ninja": Ninja,
diff --git a/internal/rosa/musl-fts.go b/internal/rosa/musl-fts.go
new file mode 100644
index 00000000..ab565fe6
--- /dev/null
+++ b/internal/rosa/musl-fts.go
@@ -0,0 +1,33 @@
+package rosa
+
+import "hakurei.app/internal/pkg"
+
+func (t Toolchain) newMuslFts() pkg.Artifact {
+ const (
+ version = "1.2.7"
+ checksum = "N_p_ZApX3eHt7xoDCw1hLf6XdJOw7ZSx7xPvpvAP0knG2zgU0zeN5w8tt5Pg60XJ"
+ )
+ return t.NewViaMake("musl-fts", version, pkg.NewHTTPGetTar(
+ nil, "https://github.com/void-linux/musl-fts/archive/refs/tags/"+
+ "v"+version+".tar.gz",
+ mustDecode(checksum),
+ pkg.TarGzip,
+ ), &MakeAttr{
+ Writable: true,
+ Env: []string{
+ "CC=cc -fPIC",
+ },
+ ScriptEarly: `
+cd /usr/src/musl-fts
+./bootstrap.sh
+`,
+ },
+ t.Load(M4),
+ t.Load(Perl),
+ t.Load(Autoconf),
+ t.Load(Automake),
+ t.Load(Libtool),
+ t.Load(PkgConfig),
+ )
+}
+func init() { artifactsF[MuslFts] = Toolchain.newMuslFts }