diff options
| author | Ophestra <cat@gensokyo.uk> | 2026-02-11 23:51:10 +0900 |
|---|---|---|
| committer | Ophestra <cat@gensokyo.uk> | 2026-02-12 01:19:40 +0900 |
| commit | 1791b604b525cd67f3b6c393a1364688762aa2e0 (patch) | |
| tree | 84b622364fb5530d97edecb1beccfee9d59ed602 /internal/rosa/ssl.go | |
| parent | 59ff6db7ec627bd8237b9508ef78c65204971cfc (diff) | |
internal/rosa/make: configurable configure and install
This makes the helper useful for non-autotools build systems.
Signed-off-by: Ophestra <cat@gensokyo.uk>
Diffstat (limited to 'internal/rosa/ssl.go')
| -rw-r--r-- | internal/rosa/ssl.go | 74 |
1 files changed, 43 insertions, 31 deletions
diff --git a/internal/rosa/ssl.go b/internal/rosa/ssl.go index 997411c4..28b01971 100644 --- a/internal/rosa/ssl.go +++ b/internal/rosa/ssl.go @@ -12,45 +12,57 @@ func (t Toolchain) newNSS() pkg.Artifact { version0 = "4_38_2" checksum0 = "25x2uJeQnOHIiq_zj17b4sYqKgeoU8-IsySUptoPcdHZ52PohFZfGuIisBreWzx0" ) - return t.New("nss-"+version, 0, []pkg.Artifact{ - t.Load(Perl), - t.Load(Python), - t.Load(Unzip), - t.Load(Make), - t.Load(Gawk), - t.Load(Coreutils), + return t.NewViaMake("nss", version, t.NewPatchedSource( + "nss", version, pkg.NewHTTPGetTar( + nil, "https://github.com/nss-dev/nss/archive/refs/tags/"+ + "NSS_"+version+"_RTM.tar.gz", + mustDecode(checksum), + pkg.TarGzip, + ), false, + ), &MakeAttr{ + Paths: []pkg.ExecPath{ + pkg.Path(AbsUsrSrc.Append("nspr.zip"), false, pkg.NewHTTPGet( + nil, "https://hg-edge.mozilla.org/projects/nspr/archive/"+ + "NSPR_"+version0+"_RTM.zip", + mustDecode(checksum0), + )), + }, - t.Load(Zlib), - t.Load(KernelHeaders), - }, nil, nil, ` + Writable: true, + OmitDefaults: true, + SkipConfigure: true, + InPlace: true, + + ScriptEarly: ` unzip /usr/src/nspr.zip -d /usr/src -mv '/usr/src/nspr-NSPR_`+version0+`_RTM' /usr/src/nspr +mv '/usr/src/nspr-NSPR_` + version0 + `_RTM' /usr/src/nspr cd /usr/src/nss - -make \ - "-j$(nproc)" \ - CCC="clang++" \ - NSDISTMODE=copy \ - BUILD_OPT=1 \ - USE_64=1 \ - nss_build_all +`, + SkipCheck: true, + Make: []string{ + "CCC=clang++", + "NSDISTMODE=copy", + "BUILD_OPT=1", + "USE_64=1", + "nss_build_all", + }, + ScriptInstall: ` mkdir -p /work/system/nss cp -r \ /usr/src/dist/. \ lib/ckfw/builtins/certdata.txt \ /work/system/nss -`, pkg.Path(AbsUsrSrc.Append("nss"), true, t.NewPatchedSource( - "nss", version, pkg.NewHTTPGetTar( - nil, "https://github.com/nss-dev/nss/archive/refs/tags/"+ - "NSS_"+version+"_RTM.tar.gz", - mustDecode(checksum), - pkg.TarGzip, - ), false, - )), pkg.Path(AbsUsrSrc.Append("nspr.zip"), false, pkg.NewHTTPGet( - nil, "https://hg-edge.mozilla.org/projects/nspr/archive/"+ - "NSPR_"+version0+"_RTM.zip", - mustDecode(checksum0), - ))) +`, + }, + t.Load(Perl), + t.Load(Python), + t.Load(Unzip), + t.Load(Gawk), + t.Load(Coreutils), + + t.Load(Zlib), + t.Load(KernelHeaders), + ) } func init() { artifactsF[NSS] = Toolchain.newNSS } |
