From 9a74d5273d8b8b9f1d2df0ab30081d8f59fd4731 Mon Sep 17 00:00:00 2001 From: Ophestra Date: Mon, 26 Jan 2026 04:20:11 +0900 Subject: [PATCH] internal/rosa: libgd artifact Required by graphviz which is required by wayland. Signed-off-by: Ophestra --- cmd/mbf/main.go | 2 ++ internal/rosa/all.go | 1 + internal/rosa/libgd.go | 32 ++++++++++++++++++++++++++++++++ 3 files changed, 35 insertions(+) create mode 100644 internal/rosa/libgd.go diff --git a/cmd/mbf/main.go b/cmd/mbf/main.go index 2697492..1b35f67 100644 --- a/cmd/mbf/main.go +++ b/cmd/mbf/main.go @@ -174,6 +174,8 @@ func main() { p = rosa.Libxml2 case "libffi": p = rosa.Libffi + case "libgd": + p = rosa.Libgd case "m4": p = rosa.M4 case "make": diff --git a/internal/rosa/all.go b/internal/rosa/all.go index 330d25a..116dd1b 100644 --- a/internal/rosa/all.go +++ b/internal/rosa/all.go @@ -22,6 +22,7 @@ const ( KernelHeaders Libexpat Libffi + Libgd Libxml2 M4 Make diff --git a/internal/rosa/libgd.go b/internal/rosa/libgd.go new file mode 100644 index 0000000..330159a --- /dev/null +++ b/internal/rosa/libgd.go @@ -0,0 +1,32 @@ +package rosa + +import "hakurei.app/internal/pkg" + +func (t Toolchain) newLibgd() pkg.Artifact { + const ( + version = "2.3.3" + checksum = "8T-sh1_FJT9K9aajgxzh8ot6vWIF-xxjcKAHvTak9MgGUcsFfzP8cAvvv44u2r36" + ) + return t.New("libgd-"+version, []pkg.Artifact{ + t.Load(Make), + + t.Load(Zlib), + }, nil, []string{ + "TMPDIR=/dev/shm/gd", + }, ` +mkdir /dev/shm/gd + +cd "$(mktemp -d)" +/usr/src/libgd/configure \ + --prefix=/system \ + --build="${ROSA_TRIPLE}" +make "-j$(nproc)" check +make DESTDIR=/work install +`, pkg.Path(AbsUsrSrc.Append("libgd"), true, pkg.NewHTTPGetTar( + nil, "https://github.com/libgd/libgd/releases/download/"+ + "gd-"+version+"/libgd-"+version+".tar.gz", + mustDecode(checksum), + pkg.TarGzip, + ))) +} +func init() { artifactsF[Libgd] = Toolchain.newLibgd }