forked from rosa/hakurei
Compare commits
38 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 9fad74b374 | |||
| 05cdf1135d | |||
| 217e83276f | |||
| fbf1dd4c6c | |||
| 5a552993e5 | |||
| 63b1f3fc4b | |||
| 42bed68072 | |||
| 0066556d19 | |||
| fa6e0f1ea0 | |||
| bdbdced477 | |||
| 8a80f6dbab | |||
| f5fdfcb271 | |||
| 87a19d7ec1 | |||
| f81527eb07 | |||
| 0e20a7d86e | |||
| d881c059b1 | |||
| c17b6ee190 | |||
| 65a0cf068d | |||
| 964e47fcec | |||
| 78bfc3acec | |||
| de580952af | |||
| dbb07b0631 | |||
| ed4692659e | |||
| f19b86fe94 | |||
| bc069cc83d | |||
| def2b8fab7 | |||
| 23c957b22c | |||
| dc13407386 | |||
| 42a2918644 | |||
| d8e720bcc9 | |||
| 459acd7dce | |||
| e7c64bcd41 | |||
| eee4e3be5e | |||
| 01ed763993 | |||
| 3930b2bf7f | |||
| 5158ecffd1 | |||
| d41dd227dd | |||
| 0d7be9c287 |
@@ -47,7 +47,7 @@ func main() {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
cache, err = pkg.Open(ctx, msg, 0, 0, 0, baseDir)
|
cache, err = pkg.Open(ctx, msg, 0, 0, baseDir)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|||||||
+16
-36
@@ -10,46 +10,26 @@ import (
|
|||||||
func (t Toolchain) newMeson() (pkg.Artifact, string) {
|
func (t Toolchain) newMeson() (pkg.Artifact, string) {
|
||||||
const (
|
const (
|
||||||
version = "1.11.0"
|
version = "1.11.0"
|
||||||
checksum = "QJolMPzypTiS65GReSNPPlkUjHI6b1EDpZ-avIk3n6b6TQ93KfUM57DVUpY97Hf7"
|
checksum = "b7oo3U_cklhzsTfsyYsjPGyeEufiS-Pm06JPLzodseS125Ach62ZBly7R6dSDiAc"
|
||||||
)
|
)
|
||||||
return t.NewPackage("meson", version, newFromGitHub(
|
return t.New("meson-"+version, 0, []pkg.Artifact{
|
||||||
|
t.Load(Zlib),
|
||||||
|
t.Load(Python),
|
||||||
|
t.Load(Setuptools),
|
||||||
|
}, nil, nil, `
|
||||||
|
cd /usr/src/meson
|
||||||
|
chmod -R +w meson.egg-info
|
||||||
|
python3 setup.py \
|
||||||
|
install \
|
||||||
|
--prefix=/system \
|
||||||
|
--root=/work
|
||||||
|
`, pkg.Path(AbsUsrSrc.Append("meson"), true, newFromGitHubRelease(
|
||||||
"mesonbuild/meson",
|
"mesonbuild/meson",
|
||||||
version,
|
version,
|
||||||
|
"meson-"+version+".tar.gz",
|
||||||
checksum,
|
checksum,
|
||||||
), &PackageAttr{
|
pkg.TarGzip,
|
||||||
Env: []string{
|
))), version
|
||||||
"CMAKE_MAKE_PROGRAM=ninja",
|
|
||||||
},
|
|
||||||
}, &PipHelper{
|
|
||||||
EnterSource: true,
|
|
||||||
Script: `
|
|
||||||
cd 'test cases'
|
|
||||||
rm -rf \
|
|
||||||
'common/32 has header' \
|
|
||||||
'common/66 vcstag' \
|
|
||||||
'common/153 wrap file should not failed' \
|
|
||||||
'common/184 openmp' \
|
|
||||||
'common/189 check header' \
|
|
||||||
'linuxlike/6 subdir include order' \
|
|
||||||
'linuxlike/9 compiler checks with dependencies' \
|
|
||||||
'linuxlike/13 cmake dependency' \
|
|
||||||
'frameworks/15 llvm' \
|
|
||||||
'frameworks/29 blocks'
|
|
||||||
cd ..
|
|
||||||
|
|
||||||
python3 ./run_project_tests.py \
|
|
||||||
-v \
|
|
||||||
` + jobsFlagE + ` \
|
|
||||||
--failfast \
|
|
||||||
--backend=ninja
|
|
||||||
`,
|
|
||||||
},
|
|
||||||
Setuptools,
|
|
||||||
PkgConfig,
|
|
||||||
CMake,
|
|
||||||
Ninja,
|
|
||||||
PythonPyTest,
|
|
||||||
), version
|
|
||||||
}
|
}
|
||||||
func init() {
|
func init() {
|
||||||
artifactsM[Meson] = Metadata{
|
artifactsM[Meson] = Metadata{
|
||||||
|
|||||||
+10
-60
@@ -81,62 +81,6 @@ func init() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// PipHelper is the [Python] pip packaging helper.
|
|
||||||
type PipHelper struct {
|
|
||||||
// Whether to omit --no-build-isolation.
|
|
||||||
BuildIsolation bool
|
|
||||||
// Whether to enter source after install.
|
|
||||||
EnterSource bool
|
|
||||||
// Runs after install.
|
|
||||||
Script string
|
|
||||||
}
|
|
||||||
|
|
||||||
var _ Helper = new(PipHelper)
|
|
||||||
|
|
||||||
// extra returns python.
|
|
||||||
func (*PipHelper) extra(int) P { return P{Python} }
|
|
||||||
|
|
||||||
// wantsChmod returns true.
|
|
||||||
func (*PipHelper) wantsChmod() bool { return true }
|
|
||||||
|
|
||||||
// wantsWrite is equivalent to wantsChmod.
|
|
||||||
func (attr *PipHelper) wantsWrite() bool { return attr.wantsChmod() }
|
|
||||||
|
|
||||||
// scriptEarly is a noop.
|
|
||||||
func (*PipHelper) scriptEarly() string { return "" }
|
|
||||||
|
|
||||||
// createDir returns false.
|
|
||||||
func (*PipHelper) createDir() bool { return false }
|
|
||||||
|
|
||||||
// wantsDir requests a new directory in TMPDIR.
|
|
||||||
func (*PipHelper) wantsDir() string { return `"$(mktemp -d)"` }
|
|
||||||
|
|
||||||
// script generates the pip3 install command.
|
|
||||||
func (attr *PipHelper) script(name string) string {
|
|
||||||
if attr == nil {
|
|
||||||
attr = new(PipHelper)
|
|
||||||
}
|
|
||||||
|
|
||||||
var extra string
|
|
||||||
if !attr.BuildIsolation {
|
|
||||||
extra += `
|
|
||||||
--no-build-isolation \`
|
|
||||||
}
|
|
||||||
|
|
||||||
script := attr.Script
|
|
||||||
if attr.EnterSource {
|
|
||||||
script = "cd '/usr/src/" + name + "'\n" + script
|
|
||||||
}
|
|
||||||
|
|
||||||
return `
|
|
||||||
pip3 install \
|
|
||||||
--no-index \
|
|
||||||
--prefix=/system \
|
|
||||||
--root=/work \` + extra + `
|
|
||||||
'/usr/src/` + name + `'
|
|
||||||
` + script
|
|
||||||
}
|
|
||||||
|
|
||||||
// newViaPip installs a pip wheel from a url.
|
// newViaPip installs a pip wheel from a url.
|
||||||
func (t Toolchain) newViaPip(
|
func (t Toolchain) newViaPip(
|
||||||
name, version, url, checksum string,
|
name, version, url, checksum string,
|
||||||
@@ -190,12 +134,18 @@ func (t Toolchain) newSetuptools() (pkg.Artifact, string) {
|
|||||||
version = "82.0.1"
|
version = "82.0.1"
|
||||||
checksum = "nznP46Tj539yqswtOrIM4nQgwLA1h-ApKX7z7ghazROCpyF5swtQGwsZoI93wkhc"
|
checksum = "nznP46Tj539yqswtOrIM4nQgwLA1h-ApKX7z7ghazROCpyF5swtQGwsZoI93wkhc"
|
||||||
)
|
)
|
||||||
return t.NewPackage("setuptools", version, newFromGitHub(
|
return t.New("setuptools-"+version, 0, t.AppendPresets(nil,
|
||||||
|
Python,
|
||||||
|
), nil, nil, `
|
||||||
|
pip3 install \
|
||||||
|
--no-index \
|
||||||
|
--prefix=/system \
|
||||||
|
--root=/work \
|
||||||
|
/usr/src/setuptools
|
||||||
|
`, pkg.Path(AbsUsrSrc.Append("setuptools"), true, newFromGitHub(
|
||||||
"pypa/setuptools",
|
"pypa/setuptools",
|
||||||
"v"+version, checksum,
|
"v"+version, checksum,
|
||||||
), nil, &PipHelper{
|
))), version
|
||||||
BuildIsolation: true,
|
|
||||||
}), version
|
|
||||||
}
|
}
|
||||||
func init() {
|
func init() {
|
||||||
artifactsM[Setuptools] = Metadata{
|
artifactsM[Setuptools] = Metadata{
|
||||||
|
|||||||
Reference in New Issue
Block a user