diff --git a/internal/rosa/all.go b/internal/rosa/all.go index eeb6b7db..19242c65 100644 --- a/internal/rosa/all.go +++ b/internal/rosa/all.go @@ -161,6 +161,9 @@ const ( // stages only. This preset and its direct output must never be exposed. gcc + // nettle3 is an older version of [Nettle]. + nettle3 + // Stage0 is a tarball containing all compile-time dependencies of artifacts // part of the [Std] toolchain. Stage0 diff --git a/internal/rosa/nettle3.go b/internal/rosa/nettle3.go new file mode 100644 index 00000000..3fc3eefd --- /dev/null +++ b/internal/rosa/nettle3.go @@ -0,0 +1,33 @@ +package rosa + +import "hakurei.app/internal/pkg" + +func (t Toolchain) newNettle3() (pkg.Artifact, string) { + const ( + version = "3.10.2" + checksum = "07aXlj10X5llf67jIqRQAA1pgLSgb0w_JYggZVPuKNoc-B-_usb5Kr8FrfBe7g1S" + ) + return t.NewPackage("nettle", version, pkg.NewHTTPGetTar( + nil, "https://ftpmirror.gnu.org/gnu/nettle/nettle-"+version+".tar.gz", + mustDecode(checksum), + pkg.TarGzip, + ), nil, (*MakeHelper)(nil), + M4, + Diffutils, + + GMP, + ), version +} +func init() { + artifactsM[nettle3] = Metadata{ + f: Toolchain.newNettle3, + + Name: "nettle3", + Description: "a low-level cryptographic library", + Website: "https://www.lysator.liu.se/~nisse/nettle/", + + Dependencies: P{ + GMP, + }, + } +}