forked from security/hakurei
internal/rosa: openssl artifact
Optional for many programs. Signed-off-by: Ophestra <cat@gensokyo.uk>
This commit is contained in:
@@ -45,6 +45,7 @@ const (
|
|||||||
NSS
|
NSS
|
||||||
NSSCACert
|
NSSCACert
|
||||||
Ninja
|
Ninja
|
||||||
|
OpenSSL
|
||||||
Packaging
|
Packaging
|
||||||
Patch
|
Patch
|
||||||
Perl
|
Perl
|
||||||
@@ -129,6 +130,7 @@ func ResolveName(name string) (p PArtifact, ok bool) {
|
|||||||
"nss": NSS,
|
"nss": NSS,
|
||||||
"nss-cacert": NSSCACert,
|
"nss-cacert": NSSCACert,
|
||||||
"ninja": Ninja,
|
"ninja": Ninja,
|
||||||
|
"openssl": OpenSSL,
|
||||||
"packaging": Packaging,
|
"packaging": Packaging,
|
||||||
"patch": Patch,
|
"patch": Patch,
|
||||||
"perl": Perl,
|
"perl": Perl,
|
||||||
|
|||||||
38
internal/rosa/openssl.go
Normal file
38
internal/rosa/openssl.go
Normal file
@@ -0,0 +1,38 @@
|
|||||||
|
package rosa
|
||||||
|
|
||||||
|
import "hakurei.app/internal/pkg"
|
||||||
|
|
||||||
|
func (t Toolchain) newOpenSSL() pkg.Artifact {
|
||||||
|
const (
|
||||||
|
version = "3.5.5"
|
||||||
|
checksum = "I2Hp1LxcTR8j4G6LFEQMVy6EJH-Na1byI9Ti-ThBot6EMLNRnjGXGq-WXrim3Fkz"
|
||||||
|
)
|
||||||
|
return t.New("openssl-"+version, 0, []pkg.Artifact{
|
||||||
|
t.Load(Perl),
|
||||||
|
t.Load(Make),
|
||||||
|
|
||||||
|
t.Load(Zlib),
|
||||||
|
t.Load(KernelHeaders),
|
||||||
|
}, nil, []string{
|
||||||
|
"CC=cc",
|
||||||
|
}, `
|
||||||
|
cd "$(mktemp -d)"
|
||||||
|
/usr/src/openssl/Configure \
|
||||||
|
--prefix=/system
|
||||||
|
make \
|
||||||
|
"-j$(nproc)" \
|
||||||
|
HARNESS_JOBS=256 \
|
||||||
|
test
|
||||||
|
make DESTDIR=/work install
|
||||||
|
|
||||||
|
mv \
|
||||||
|
/work/system/lib64 \
|
||||||
|
/work/system/lib
|
||||||
|
`, pkg.Path(AbsUsrSrc.Append("openssl"), false, pkg.NewHTTPGetTar(
|
||||||
|
nil, "https://github.com/openssl/openssl/releases/download/"+
|
||||||
|
"openssl-"+version+"/openssl-"+version+".tar.gz",
|
||||||
|
mustDecode(checksum),
|
||||||
|
pkg.TarGzip,
|
||||||
|
)))
|
||||||
|
}
|
||||||
|
func init() { artifactsF[OpenSSL] = Toolchain.newOpenSSL }
|
||||||
Reference in New Issue
Block a user