aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--internal/rosa/perl.go52
1 files changed, 29 insertions, 23 deletions
diff --git a/internal/rosa/perl.go b/internal/rosa/perl.go
index e5b4a468..63b512dd 100644
--- a/internal/rosa/perl.go
+++ b/internal/rosa/perl.go
@@ -11,34 +11,40 @@ func (t Toolchain) newPerl() pkg.Artifact {
version = "5.42.0"
checksum = "2KR7Jbpk-ZVn1a30LQRwbgUvg2AXlPQZfzrqCr31qD5-yEsTwVQ_W76eZH-EdxM9"
)
- return t.New("perl-"+version, TEarly, []pkg.Artifact{
- t.Load(Make),
- }, nil, nil, `
-cd /usr/src/perl
-
-echo 'print STDOUT "1..0 # Skip broken test\n";' > ext/Pod-Html/t/htmldir3.t
-rm -f /system/bin/ps # perl does not like toybox ps
-
-./Configure \
- -des \
- -Dprefix=/system \
- -Dcc="clang" \
- -Dcflags='--std=gnu99' \
- -Dldflags="${LDFLAGS}" \
- -Doptimize='-O2 -fno-strict-aliasing' \
- -Duseithreads
-make \
- "-j$(nproc)" \
- TEST_JOBS=256 \
- test_harness
-./perl -Ilib -I. installperl --destdir=/work
-`, pkg.Path(AbsUsrSrc.Append("perl"), true, t.NewPatchedSource(
+ return t.NewViaMake("perl", version, t.NewPatchedSource(
"perl", version, pkg.NewHTTPGetTar(
nil, "https://www.cpan.org/src/5.0/perl-"+version+".tar.gz",
mustDecode(checksum),
pkg.TarGzip,
), false,
- )))
+ ), &MakeAttr{
+ Writable: true,
+ OmitDefaults: true,
+ InPlace: true,
+
+ ScriptEarly: `
+cd /usr/src/perl
+
+echo 'print STDOUT "1..0 # Skip broken test\n";' > ext/Pod-Html/t/htmldir3.t
+rm -f /system/bin/ps # perl does not like toybox ps
+`,
+ ConfigureName: "./Configure",
+ Host: `""`,
+ Build: `""`,
+ Configure: [][2]string{
+ {"-des"},
+ {"Dprefix", "/system"},
+ {"Dcc", "clang"},
+ {"Dcflags", "--std=gnu99"},
+ {"Dldflags", `"${LDFLAGS:-''}"`},
+ {"Doptimize", "'-O2 -fno-strict-aliasing'"},
+ {"Duseithreads"},
+ },
+ CheckName: "TEST_JOBS=256 test_harness",
+ ScriptInstall: "./perl -Ilib -I. installperl --destdir=/work",
+
+ Flag: TEarly,
+ })
}
func init() { artifactsF[Perl] = Toolchain.newPerl }