aboutsummaryrefslogtreecommitdiffhomepage
path: root/internal/rosa/fuse.go
blob: c80e6e4d890f734a5e1e7a11825a45d9c71694f2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
package rosa

import "hakurei.app/internal/pkg"

func (t Toolchain) newFuse() pkg.Artifact {
	const (
		version  = "3.18.1"
		checksum = "COb-BgJRWXLbt9XUkNeuiroQizpMifXqxgieE1SlkMXhs_WGSyJStrmyewAw2hd6"
	)
	return t.New("fuse-"+version, 0, []pkg.Artifact{
		t.Load(Python),
		t.Load(Meson),
		t.Load(Ninja),

		t.Load(IniConfig),
		t.Load(Packaging),
		t.Load(Pluggy),
		t.Load(Pygments),
		t.Load(PyTest),

		t.Load(KernelHeaders),
	}, nil, nil, `
cd "$(mktemp -d)"
meson setup \
	--reconfigure \
	--buildtype=release \
	--prefix=/system \
	--prefer-static \
	-Dtests=true \
	-Duseroot=false \
	-Dinitscriptdir=/system/init.d \
	-Ddefault_library=both \
	. /usr/src/fuse
meson compile
python3 -m pytest test/
meson install \
	--destdir=/work
`, pkg.Path(AbsUsrSrc.Append("fuse"), false, pkg.NewHTTPGetTar(
		nil, "https://github.com/libfuse/libfuse/releases/download/"+
			"fuse-"+version+"/fuse-"+version+".tar.gz",
		mustDecode(checksum),
		pkg.TarGzip,
	)))
}
func init() { artifactsF[Fuse] = Toolchain.newFuse }