aboutsummaryrefslogtreecommitdiffhomepage
path: root/internal/rosa/package
diff options
context:
space:
mode:
authorOphestra <cat@gensokyo.uk>2026-10-28 03:05:09 +0900
committerOphestra <cat@gensokyo.uk>2026-10-28 04:12:42 +0900
commit53e9dd6aa933c1a5b43da83a88d5e07bf27285bf (patch)
tree75d23f52901368c2e9764df631d37b8eb7484723 /internal/rosa/package
parent7e3ba55cdc4d4a7c19deb65879e8abbb12a8e458 (diff)
internal/rosa: do not hard code prefix
This allows the prefix to be changed, at runtime if needed. Signed-off-by: Ophestra <cat@gensokyo.uk>
Diffstat (limited to 'internal/rosa/package')
-rw-r--r--internal/rosa/package/argp-standalone.az4
-rw-r--r--internal/rosa/package/awk.az4
-rw-r--r--internal/rosa/package/bzip2.az2
-rw-r--r--internal/rosa/package/cmake/package.az2
-rw-r--r--internal/rosa/package/curl.az2
-rw-r--r--internal/rosa/package/db.az2
-rw-r--r--internal/rosa/package/firmware.az4
-rw-r--r--internal/rosa/package/fuse/package.az2
-rw-r--r--internal/rosa/package/gcc/package.az6
-rw-r--r--internal/rosa/package/git.az2
-rw-r--r--internal/rosa/package/glib/package.az2
-rw-r--r--internal/rosa/package/gnu.az2
-rw-r--r--internal/rosa/package/gnutls/package.az2
-rw-r--r--internal/rosa/package/go.az14
-rw-r--r--internal/rosa/package/hakurei.az38
-rw-r--r--internal/rosa/package/images/package.az2
-rw-r--r--internal/rosa/package/iproute2.az6
-rw-r--r--internal/rosa/package/kernel/depmod2
-rw-r--r--internal/rosa/package/kernel/package.az29
-rw-r--r--internal/rosa/package/kmod.az4
-rw-r--r--internal/rosa/package/libaio.az4
-rw-r--r--internal/rosa/package/libbpf.az2
-rw-r--r--internal/rosa/package/libcap.az2
-rw-r--r--internal/rosa/package/libucontext.az2
-rw-r--r--internal/rosa/package/llvm/package.az4
-rw-r--r--internal/rosa/package/lm_sensors.az4
-rw-r--r--internal/rosa/package/lua/conf-prefix.patch2
-rw-r--r--internal/rosa/package/lua/lua.pc2
-rw-r--r--internal/rosa/package/lua/package.az10
-rw-r--r--internal/rosa/package/make.az2
-rw-r--r--internal/rosa/package/mksh.az12
-rw-r--r--internal/rosa/package/muon/package.az2
-rw-r--r--internal/rosa/package/musl/package.az12
-rw-r--r--internal/rosa/package/ncurses.az2
-rw-r--r--internal/rosa/package/ninja.az4
-rw-r--r--internal/rosa/package/noto.az2
-rw-r--r--internal/rosa/package/nss.az12
-rw-r--r--internal/rosa/package/openssl.az2
-rw-r--r--internal/rosa/package/perl.az6
-rw-r--r--internal/rosa/package/pkgconf.az2
-rw-r--r--internal/rosa/package/python/package.az10
-rw-r--r--internal/rosa/package/spirv.az8
-rw-r--r--internal/rosa/package/squashfs-tools.az2
-rw-r--r--internal/rosa/package/tamago.az8
-rw-r--r--internal/rosa/package/toybox.az14
-rw-r--r--internal/rosa/package/unzip.az4
-rw-r--r--internal/rosa/package/util-linux.az6
47 files changed, 135 insertions, 138 deletions
diff --git a/internal/rosa/package/argp-standalone.az b/internal/rosa/package/argp-standalone.az
index c8a2943e..a3a2fd62 100644
--- a/internal/rosa/package/argp-standalone.az
+++ b/internal/rosa/package/argp-standalone.az
@@ -16,8 +16,8 @@ package argp-standalone {
exec = make {
install = `
-install -D -m644 /usr/src/argp-standalone/argp.h /work/system/include/argp.h
-install -D -m755 libargp.a /work/system/lib/libargp.a
+install -D -m644 /usr/src/argp-standalone/argp.h /work`+prefix+`/include/argp.h
+install -D -m755 libargp.a /work`+prefix+`/lib/libargp.a
`;
};
diff --git a/internal/rosa/package/awk.az b/internal/rosa/package/awk.az
index b572f7a4..770d82ae 100644
--- a/internal/rosa/package/awk.az
+++ b/internal/rosa/package/awk.az
@@ -19,8 +19,8 @@ package awk {
chdir = false;
configure = nil;
make = [ "YACC='yacc -d -b awkgram'" ];
- preCheck = "install -vD a.out /system/bin/awk\n";
- install = "install -vD a.out /work/system/bin/awk";
+ preCheck = "install -vD a.out "+prefix+"/bin/awk\n";
+ install = "install -vD a.out /work"+prefix+"/bin/awk";
};
tools = [
diff --git a/internal/rosa/package/bzip2.az b/internal/rosa/package/bzip2.az
index 2b8e3362..ce5e5bd2 100644
--- a/internal/rosa/package/bzip2.az
+++ b/internal/rosa/package/bzip2.az
@@ -19,6 +19,6 @@ package bzip2 {
configure = nil;
make = [ "CC=cc" ];
check = nil;
- install = "make PREFIX=/work/system install";
+ install = "make PREFIX=/work"+prefix+" install";
};
}
diff --git a/internal/rosa/package/cmake/package.az b/internal/rosa/package/cmake/package.az
index 38d2c286..c2666ecb 100644
--- a/internal/rosa/package/cmake/package.az
+++ b/internal/rosa/package/cmake/package.az
@@ -30,7 +30,7 @@ package cmake-early {
configureName = "/usr/src/cmake-early/bootstrap";
configure = {
- "prefix": "/system";
+ "prefix": prefix;
"parallel": jobsE;
"--";
"-DCMAKE_USE_OPENSSL": "OFF";
diff --git a/internal/rosa/package/curl.az b/internal/rosa/package/curl.az
index 0f10763d..17632548 100644
--- a/internal/rosa/package/curl.az
+++ b/internal/rosa/package/curl.az
@@ -17,7 +17,7 @@ package curl {
exec = make {
configure = {
"with-openssl";
- "with-ca-bundle": "/system/etc/ssl/certs/ca-bundle.crt";
+ "with-ca-bundle": prefix+"/etc/ssl/certs/ca-bundle.crt";
"disable-smb";
};
diff --git a/internal/rosa/package/db.az b/internal/rosa/package/db.az
index d4f9fe4d..3ba533a7 100644
--- a/internal/rosa/package/db.az
+++ b/internal/rosa/package/db.az
@@ -30,6 +30,6 @@ touch \
"with-repmgr-ssl": "no";
};
check = [ "examples_c" ];
- postInstall = "rm -r /work/system/docs";
+ postInstall = "rm -r /work"+prefix+"/docs";
};
}
diff --git a/internal/rosa/package/firmware.az b/internal/rosa/package/firmware.az
index f003e370..b225b42c 100644
--- a/internal/rosa/package/firmware.az
+++ b/internal/rosa/package/firmware.az
@@ -27,14 +27,14 @@ package firmware {
configure = nil;
make = [
- "DESTDIR=/work/system",
+ "DESTDIR=/work"+prefix,
"install-zst",
];
// requires pre-commit
check = nil;
- install = "make " + jobsFlagE + " " + loadFlagE + " DESTDIR=/work/system dedup";
+ install = "make " + jobsFlagE + " " + loadFlagE + " DESTDIR=/work"+prefix+" dedup";
};
tools = [
diff --git a/internal/rosa/package/fuse/package.az b/internal/rosa/package/fuse/package.az
index 3e43c3c6..b73432a3 100644
--- a/internal/rosa/package/fuse/package.az
+++ b/internal/rosa/package/fuse/package.az
@@ -18,7 +18,7 @@ package fuse {
"default_library": "both";
"tests": "true";
"useroot": "false";
- "initscriptdir": "/system/etc";
+ "initscriptdir": prefix+"/etc";
};
};
diff --git a/internal/rosa/package/gcc/package.az b/internal/rosa/package/gcc/package.az
index 5f618ba7..da669713 100644
--- a/internal/rosa/package/gcc/package.az
+++ b/internal/rosa/package/gcc/package.az
@@ -41,8 +41,8 @@ package gcc {
exclusive = true;
early = `
-ln -s system/lib /
-ln -s system/lib /work/
+ln -s `+prefixR+`/lib /
+ln -s `+prefixR+`/lib /work/
`;
exec = make {
@@ -54,7 +54,7 @@ ln -s system/lib /work/
"with-gnu-ld";
"with-system-zlib";
"enable-languages": "c,c++,go";
- "with-native-system-header-dir": "/system/include";
+ "with-native-system-header-dir": prefix+"/include";
"with-multilib-list": arch {
amd64, arm64 = "''";
diff --git a/internal/rosa/package/git.az b/internal/rosa/package/git.az
index b6e1558f..22c2cf09 100644
--- a/internal/rosa/package/git.az
+++ b/internal/rosa/package/git.az
@@ -13,7 +13,7 @@ package git {
early = `
# test suite assumes apache
-rm -f /system/bin/httpd
+rm -f `+prefix+`/bin/httpd
`;
// uses source tree as scratch space
diff --git a/internal/rosa/package/glib/package.az b/internal/rosa/package/glib/package.az
index 7f3040e0..9c531283 100644
--- a/internal/rosa/package/glib/package.az
+++ b/internal/rosa/package/glib/package.az
@@ -13,7 +13,7 @@ package glib {
files = {
"/etc/machine-id": "stub-machine-id-fhs";
- "/system/var/lib/dbus/machine-id": "stub-machine-id";
+ prefix+"/var/lib/dbus/machine-id": "stub-machine-id";
};
exec = meson {
diff --git a/internal/rosa/package/gnu.az b/internal/rosa/package/gnu.az
index 5481e1f0..57705cef 100644
--- a/internal/rosa/package/gnu.az
+++ b/internal/rosa/package/gnu.az
@@ -313,7 +313,7 @@ package bash {
configure = {
"without-bash-malloc";
};
- postInstall = "ln -s bash /work/system/bin/sh\n";
+ postInstall = "ln -s bash /work"+prefix+"/bin/sh\n";
};
}
diff --git a/internal/rosa/package/gnutls/package.az b/internal/rosa/package/gnutls/package.az
index 9ab17176..05080d7f 100644
--- a/internal/rosa/package/gnutls/package.az
+++ b/internal/rosa/package/gnutls/package.az
@@ -27,7 +27,7 @@ echo 'int main(){return 0;}' > tests/mini-dtls-fragments.c
"disable-doc";
"disable-openssl-compatibility";
- "with-default-trust-store-file": "/system/etc/ssl/certs/ca-bundle.crt";
+ "with-default-trust-store-file": prefix+"/etc/ssl/certs/ca-bundle.crt";
"with-default-trust-store-pkcs11": "pkcs11:";
"with-zlib": "link";
diff --git a/internal/rosa/package/go.az b/internal/rosa/package/go.az
index 8b5abed4..4f284341 100644
--- a/internal/rosa/package/go.az
+++ b/internal/rosa/package/go.az
@@ -13,7 +13,7 @@ package go {
env = [
"CC=cc",
"GOCACHE=/tmp/gocache",
- "GOROOT_BOOTSTRAP=/system/go",
+ "GOROOT_BOOTSTRAP="+prefix+"/go",
"TMPDIR=/dev/shm/go",
];
@@ -22,13 +22,13 @@ package go {
exec = generic {
chdir = false;
build = `
-mkdir /work/system/ "${TMPDIR}"
-cp -r . /work/system/go
-cd /work/system/go/src/
+mkdir /work`+prefix+`/ "${TMPDIR}"
+cp -r . /work`+prefix+`/go
+cd /work`+prefix+`/go/src/
chmod -R +w ..
sed -i \
- 's,/lib/ld-musl-`+llvmArch+`.so.1,/system/bin/linker,' \
+ 's,/lib/ld-musl-`+llvmArch+`.so.1,`+prefix+`/bin/linker,' \
cmd/link/internal/`+arch+`/obj.go
rm \
@@ -45,11 +45,11 @@ set -u
install = `
../bin/go tool dist banner # print build info
-mkdir /work/system/bin
+mkdir /work`+prefix+`/bin
ln -s \
../go/bin/go \
../go/bin/gofmt \
- /work/system/bin
+ /work`+prefix+`/bin
`;
};
diff --git a/internal/rosa/package/hakurei.az b/internal/rosa/package/hakurei.az
index acb356f4..a9283d96 100644
--- a/internal/rosa/package/hakurei.az
+++ b/internal/rosa/package/hakurei.az
@@ -29,29 +29,29 @@ package hakurei {
exec = generic {
chdir = false;
cross = `
-export CC='clang --target=`+triple+` --sysroot=/system/`+arch+`'
-export CXX='clang++ --target=`+triple+` --sysroot=/system/`+arch+`'
-export PKG_CONFIG_SYSROOT_DIR='/system/`+arch+`'
-export PKG_CONFIG_LIBDIR='/system/`+arch+`/system/lib/pkgconfig:/system/`+arch+`/system/share/pkgconfig'
+export CC='clang --target=`+triple+` --sysroot=`+prefix+`/`+arch+`'
+export CXX='clang++ --target=`+triple+` --sysroot=`+prefix+`/`+arch+`'
+export PKG_CONFIG_SYSROOT_DIR='`+prefix+`/`+arch+`'
+export PKG_CONFIG_LIBDIR='`+prefix+`/`+arch+prefix+`/lib/pkgconfig:`+prefix+`/`+arch+prefix+`/share/pkgconfig'
`;
build = `
-mkdir -p /work/system/libexec/hakurei/
+mkdir -p /work`+prefix+`/libexec/hakurei/
echo "Building hakurei for $(go env GOOS)/`+arch+`."
go generate ./...
-GOARCH='`+arch+`' go build -trimpath -tags=rosa -o /work/system/libexec/hakurei -ldflags="-s -w
+GOARCH='`+arch+`' go build -trimpath -tags=rosa -o /work`+prefix+`/libexec/hakurei -ldflags="-s -w
-buildid=
-linkmode external
-extldflags=-static
-X hakurei.app/internal/info.buildVersion=$(cat cmd/dist/VERSION)
- -X hakurei.app/internal/info.hakureiPath=/system/bin/hakurei
- -X hakurei.app/internal/info.hsuPath=/system/bin/hsu
+ -X hakurei.app/internal/info.hakureiPath=`+prefix+`/bin/hakurei
+ -X hakurei.app/internal/info.hsuPath=`+prefix+`/bin/hsu
" ./cmd/hakurei ./cmd/sharefs
echo "Building hsu for $(go env GOOS)/$(go env GOARCH)."
-GOARCH='`+arch+`' CGO_ENABLED=0 go build -trimpath -tags=rosa -o /work/system/libexec/hakurei -ldflags="-s -w
+GOARCH='`+arch+`' CGO_ENABLED=0 go build -trimpath -tags=rosa -o /work`+prefix+`/libexec/hakurei -ldflags="-s -w
-buildid=
- -X main.hakureiPath=/system/bin/hakurei
+ -X main.hakureiPath=`+prefix+`/bin/hakurei
" ./cmd/hsu`;
check = `
echo
@@ -59,8 +59,8 @@ echo '##### Testing hakurei.'
go test -ldflags='-buildid= -linkmode external -extldflags=-static' ./...
echo`;
install = `
-mkdir -p /work/system/bin/
-(cd /work/system/libexec/hakurei && mv \
+mkdir -p /work`+prefix+`/bin/
+(cd /work`+prefix+`/libexec/hakurei && mv \
hakurei \
sharefs \
../../bin/)
@@ -109,10 +109,10 @@ package hakurei-dist {
chdir = false;
cross = `
export HAKUREI_ARCH='`+arch+`'
-export HAKUREI_SYSROOT='/system/`+arch+`'
+export HAKUREI_SYSROOT='`+prefix+`/`+arch+`'
-export PKG_CONFIG_SYSROOT_DIR='/system/`+arch+`'
-export PKG_CONFIG_LIBDIR='/system/`+arch+`/system/lib/pkgconfig:/system/`+arch+`/system/share/pkgconfig'
+export PKG_CONFIG_SYSROOT_DIR='`+prefix+`/`+arch+`'
+export PKG_CONFIG_LIBDIR='`+prefix+`/`+arch+``+prefix+`/lib/pkgconfig:`+prefix+`/`+arch+``+prefix+`/share/pkgconfig'
`;
build = `
NAME=make`;
@@ -213,10 +213,10 @@ package earlyinit {
chdir = false;
cross = `
export GOARCH='`+arch+`'
-export CC='clang --target=`+triple+` --sysroot=/system/`+arch+`'
-export CXX='clang++ --target=`+triple+` --sysroot=/system/`+arch+`'
-export PKG_CONFIG_SYSROOT_DIR='/system/`+arch+`'
-export PKG_CONFIG_LIBDIR='/system/`+arch+`/system/lib/pkgconfig:/system/`+arch+`/system/share/pkgconfig'
+export CC='clang --target=`+triple+` --sysroot=`+prefix+`/`+arch+`'
+export CXX='clang++ --target=`+triple+` --sysroot=`+prefix+`/`+arch+`'
+export PKG_CONFIG_SYSROOT_DIR='`+prefix+`/`+arch+`'
+export PKG_CONFIG_LIBDIR='`+prefix+`/`+arch+prefix+`/lib/pkgconfig:`+prefix+`/`+arch+prefix+`/share/pkgconfig'
`;
build = `
echo '# Building earlyinit.'
diff --git a/internal/rosa/package/images/package.az b/internal/rosa/package/images/package.az
index 631f5622..e3c2fb72 100644
--- a/internal/rosa/package/images/package.az
+++ b/internal/rosa/package/images/package.az
@@ -37,7 +37,7 @@ package system-image {
overlay = "/mnt";
exec = generic {
- build = "mksquashfs /mnt/system /work/system.img";
+ build = "mksquashfs /mnt"+prefix+" /work/system.img";
};
tools = [ squashfs-tools ];
diff --git a/internal/rosa/package/iproute2.az b/internal/rosa/package/iproute2.az
index 46265ed3..a29a6903 100644
--- a/internal/rosa/package/iproute2.az
+++ b/internal/rosa/package/iproute2.az
@@ -13,8 +13,8 @@ package iproute2 {
env = [
"CC=cc",
- "PREFIX=/system",
- "SBINDIR=/system/sbin",
+ "PREFIX="+prefix,
+ "SBINDIR="+prefix+"/sbin",
];
enterSource = true;
writable = true;
@@ -25,7 +25,7 @@ package iproute2 {
// drop default autoconf options
configureName = "./configure";
configure = {
- "prefix": "/system";
+ "prefix": prefix;
"color": "auto";
};
make = [ "CC=cc", "YACC=yacc" ];
diff --git a/internal/rosa/package/kernel/depmod b/internal/rosa/package/kernel/depmod
index d4a7663c..ec0ef6f9 100644
--- a/internal/rosa/package/kernel/depmod
+++ b/internal/rosa/package/kernel/depmod
@@ -1,2 +1,2 @@
#!/bin/sh
-exec /system/sbin/depmod -m /lib/modules "$@"
+exec depmod -m /lib/modules "$@"
diff --git a/internal/rosa/package/kernel/package.az b/internal/rosa/package/kernel/package.az
index aafb71db..10aeb63f 100644
--- a/internal/rosa/package/kernel/package.az
+++ b/internal/rosa/package/kernel/package.az
@@ -60,14 +60,14 @@ package kernel-headers {
}+"'",
"LLVM=1",
`HOSTLDFLAGS="${LDFLAGS:-''}"`,
- "INSTALL_HDR_PATH=/work/system",
+ "INSTALL_HDR_PATH=/work"+prefix,
"headers_install",
];
check = nil;
install = `
cat \
/usr/src/version.h > \
- /work/system/include/linux/version.h
+ /work`+prefix+`/include/linux/version.h
`;
};
@@ -98,23 +98,21 @@ package kernel {
riscv64 = "riscv64.config";
};
- ".installkernel": "installkernel";
- ".depmod": "depmod";
+ "/sbin/installkernel": "installkernel";
+ // kernel is not aware of kmod moduledir
+ "/sbin/depmod": "depmod";
- "/system/oldconfig": "oldconfig";
+ prefix+"/oldconfig": "oldconfig";
};
env = [
- "PATH=/system/sbin",
+ "PATH="+prefix+"/sbin",
];
early = `
install -Dm0400 \
/usr/src/.config \
/tmp/kbuild/.config
-install -Dm0500 \
- /usr/src/.installkernel \
- /sbin/installkernel
`;
exclusive = true;
@@ -154,11 +152,6 @@ if [ -n "${ROSA_MAKE_TARGET+x}" ]; then
exit 0
fi
-# kernel is not aware of kmod moduledir
-install -Dm0500 \
- /usr/src/.depmod \
- /sbin/depmod
-
make \
` + jobsFlagE + ` \
` + loadFlagE + ` \
@@ -168,10 +161,10 @@ make \
` + _kernelArch + ` \
INSTALL_PATH=/work \
install \
- INSTALL_MOD_PATH=/work/system \
+ INSTALL_MOD_PATH=/work`+prefix+` \
DEPMOD=/sbin/depmod \
modules_install
-rm -v "/work/system/lib/modules/$(make -f /usr/src/kernel/Makefile kernelversion)/build"
+rm -v "/work`+prefix+`/lib/modules/$(make -f /usr/src/kernel/Makefile kernelversion)/build"
`;
};
@@ -210,8 +203,8 @@ package gen_init_cpio {
exec = generic {
chdir = false;
build = `
-mkdir -p /work/system/bin/
-cc -o /work/system/bin/gen_init_cpio usr/gen_init_cpio.c
+mkdir -p /work`+prefix+`/bin/
+cc -o /work`+prefix+`/bin/gen_init_cpio usr/gen_init_cpio.c
`;
};
}
diff --git a/internal/rosa/package/kmod.az b/internal/rosa/package/kmod.az
index 732d3340..e7787d8f 100644
--- a/internal/rosa/package/kmod.az
+++ b/internal/rosa/package/kmod.az
@@ -13,8 +13,8 @@ package kmod {
exec = meson {
setup = {
- "moduledir": "/system/lib/modules";
- "sysconfdir": "/system/etc";
+ "moduledir": prefix+"/lib/modules";
+ "sysconfdir": prefix+"/etc";
"bashcompletiondir": "no";
"fishcompletiondir": "no";
"xz": "disabled";
diff --git a/internal/rosa/package/libaio.az b/internal/rosa/package/libaio.az
index ee408872..c61be33d 100644
--- a/internal/rosa/package/libaio.az
+++ b/internal/rosa/package/libaio.az
@@ -15,7 +15,7 @@ package libaio {
writable = true;
chmod = true;
- env = [ "PATH=/system/sbin" ];
+ env = [ "PATH="+prefix+"/sbin" ];
bin = [ "bash" ];
exec = make {
chdir = false;
@@ -26,7 +26,7 @@ package libaio {
"-Wno-gnu-designator "+
"-Wno-#warnings' ";
check = [ "partcheck" ];
- install = "make prefix=/work/system install";
+ install = "make prefix=/work"+prefix+" install";
};
tools = [
diff --git a/internal/rosa/package/libbpf.az b/internal/rosa/package/libbpf.az
index 8c21b7e9..b86c3631 100644
--- a/internal/rosa/package/libbpf.az
+++ b/internal/rosa/package/libbpf.az
@@ -10,7 +10,7 @@ package libbpf {
checksum = "vpacRQrLgXtttQw0fwv3fcJ-FRHbly38CcLPJyXd2MsKr8gsfp1K6bBVelxZZj52";
};
- env = [ "PREFIX=/system" ];
+ env = [ "PREFIX="+prefix ];
early = "cd src";
writable = true;
chmod = true;
diff --git a/internal/rosa/package/libcap.az b/internal/rosa/package/libcap.az
index 86bdc63a..e71eec28 100644
--- a/internal/rosa/package/libcap.az
+++ b/internal/rosa/package/libcap.az
@@ -17,7 +17,7 @@ package libcap {
chmod = true;
env = [
- "prefix=/system",
+ "prefix="+prefix,
"lib=lib",
];
diff --git a/internal/rosa/package/libucontext.az b/internal/rosa/package/libucontext.az
index 4af0a68f..58c03903 100644
--- a/internal/rosa/package/libucontext.az
+++ b/internal/rosa/package/libucontext.az
@@ -21,6 +21,6 @@ package libucontext {
configure = nil;
make = [ "ARCH=" + linuxArch ];
- install = "make prefix=/system DESTDIR=/work install";
+ install = "make prefix="+prefix+" DESTDIR=/work install";
};
}
diff --git a/internal/rosa/package/llvm/package.az b/internal/rosa/package/llvm/package.az
index 6b02d6e9..007b94c3 100644
--- a/internal/rosa/package/llvm/package.az
+++ b/internal/rosa/package/llvm/package.az
@@ -87,10 +87,10 @@ message(NOTICE "${LLVM_VERSION_MAJOR}")
};
test = nil;
postInstall = `
-mkdir -p "/work/system/lib/clang/$LLVM_VERSION_MAJOR/lib/"
+mkdir -p "/work`+prefix+`/lib/clang/$LLVM_VERSION_MAJOR/lib/"
ln -s \
'../../../`+triple+`' \
- "/work/system/lib/clang/$LLVM_VERSION_MAJOR/lib/"
+ "/work`+prefix+`/lib/clang/$LLVM_VERSION_MAJOR/lib/"
`;
};
diff --git a/internal/rosa/package/lm_sensors.az b/internal/rosa/package/lm_sensors.az
index 2b6b58dc..4d764cd6 100644
--- a/internal/rosa/package/lm_sensors.az
+++ b/internal/rosa/package/lm_sensors.az
@@ -19,9 +19,9 @@ package lm_sensors {
exec = make {
chdir = false;
configure = nil;
- make = [ "CC=cc", "ETCDIR=/system/etc", "PREFIX=/system" ];
+ make = [ "CC=cc", "ETCDIR="+prefix+"/etc", "PREFIX="+prefix ];
check = [ "CC=cc", "check" ];
- install = "make DESTDIR=/work PREFIX=/system install";
+ install = "make DESTDIR=/work PREFIX="+prefix+" install";
};
tools = [
diff --git a/internal/rosa/package/lua/conf-prefix.patch b/internal/rosa/package/lua/conf-prefix.patch
index cb7bbe5f..7dbc8050 100644
--- a/internal/rosa/package/lua/conf-prefix.patch
+++ b/internal/rosa/package/lua/conf-prefix.patch
@@ -7,7 +7,7 @@ index 96a7780..0bfa66c 100644
#else /* }{ */
-#define LUA_ROOT "/usr/local/"
-+#define LUA_ROOT "/system/"
++#define LUA_ROOT "@ROSA_PREFIX@/"
#define LUA_LDIR LUA_ROOT "share/lua/" LUA_VDIR "/"
#define LUA_CDIR LUA_ROOT "lib/lua/" LUA_VDIR "/"
diff --git a/internal/rosa/package/lua/lua.pc b/internal/rosa/package/lua/lua.pc
index 0bc54c70..58958743 100644
--- a/internal/rosa/package/lua/lua.pc
+++ b/internal/rosa/package/lua/lua.pc
@@ -1,6 +1,6 @@
# lua.pc -- pkg-config data for Lua
-prefix=/system
+prefix=@ROSA_PREFIX@
INSTALL_BIN=${prefix}/bin
INSTALL_INC=${prefix}/include
INSTALL_LIB=${prefix}/lib
diff --git a/internal/rosa/package/lua/package.az b/internal/rosa/package/lua/package.az
index 54d5abe6..033af0fe 100644
--- a/internal/rosa/package/lua/package.az
+++ b/internal/rosa/package/lua/package.az
@@ -22,15 +22,19 @@ package lua {
exec = make {
chdir = false;
configure = nil;
+ preMake = `
+sed -i 's|@ROSA_PREFIX@|`+prefix+`|g' src/luaconf.h
+`;
make = [ "CC='clang -fPIC'", "all" ];
check = [ "test" ];
install = `
-make INSTALL_TOP=/work/system install
-mkdir /work/system/lib/pkgconfig
+make INSTALL_TOP=/work`+prefix+` install
+mkdir /work`+prefix+`/lib/pkgconfig
sed \
-e "s|@MAJOR_VER@|$(cc -P -E -include src/lua.h - <<< LUA_VERSION_MAJOR_N | tail -n 1)|g" \
-e "s|@MINOR_VER@|$(cc -P -E -include src/lua.h - <<< LUA_VERSION_MINOR_N | tail -n 1)|g" \
- ../lua.pc > /work/system/lib/pkgconfig/lua.pc
+ -e "s|@ROSA_PREFIX@|`+prefix+`|g" \
+ ../lua.pc > /work`+prefix+`/lib/pkgconfig/lua.pc
`;
};
diff --git a/internal/rosa/package/make.az b/internal/rosa/package/make.az
index 5142b079..cf2d72c7 100644
--- a/internal/rosa/package/make.az
+++ b/internal/rosa/package/make.az
@@ -19,7 +19,7 @@ package make-early {
exec = generic {
build = `/usr/src/make-early/configure \
- --prefix=/system \
+ --prefix=`+prefix+` \
--host='`+triple+`' \
--target='`+triple+`' \
--build='`+hostTriple+`' \
diff --git a/internal/rosa/package/mksh.az b/internal/rosa/package/mksh.az
index 6bd3e9cc..600991cb 100644
--- a/internal/rosa/package/mksh.az
+++ b/internal/rosa/package/mksh.az
@@ -12,12 +12,12 @@ package mksh {
env = [
"LDSTATIC=-static",
- "CPPFLAGS=-DMKSH_DEFAULT_PROFILEDIR=\\\"/system/etc\\\"",
+ "CPPFLAGS=-DMKSH_DEFAULT_PROFILEDIR=\\\""+prefix+"/etc\\\"",
];
exec = generic {
cross = `
-export CC='clang --target=`+triple+` --sysroot=/system/`+arch+`'
+export CC='clang --target=`+triple+` --sysroot=`+prefix+`/`+arch+`'
`;
build = `sh /usr/src/mksh/Build.sh -r
CPPFLAGS="${CPPFLAGS} -DMKSH_BINSHPOSIX -DMKSH_BINSHREDUCED" \
@@ -25,12 +25,12 @@ sh /usr/src/mksh/Build.sh -r -L
`;
check = "./test.sh -C regress:no-ctty\n";
install = `
-mkdir -p /work/system/bin/
-cp -v mksh /work/system/bin/
-cp -v lksh /work/system/bin/sh
+mkdir -p /work`+prefix+`/bin/
+cp -v mksh /work`+prefix+`/bin/
+cp -v lksh /work`+prefix+`/bin/sh
mkdir -p /work/bin/
-ln -vs ../system/bin/sh /work/bin/
+ln -vs ..`+prefix+`/bin/sh /work/bin/
`;
};
diff --git a/internal/rosa/package/muon/package.az b/internal/rosa/package/muon/package.az
index 775a9a73..588a4c8d 100644
--- a/internal/rosa/package/muon/package.az
+++ b/internal/rosa/package/muon/package.az
@@ -47,7 +47,7 @@ chmod -R +w subprojects/meson-tests
build = `
(cd /usr/src/muon && CC=cc ./bootstrap.sh /boot)
/boot/muon-bootstrap setup \
- -Dprefix=/system \
+ -Dprefix=`+prefix+` \
-Dbuildtype=release \
-Dlibcurl=disabled \
-Dlibarchive=disabled \
diff --git a/internal/rosa/package/musl/package.az b/internal/rosa/package/musl/package.az
index fac7c781..d3192308 100644
--- a/internal/rosa/package/musl/package.az
+++ b/internal/rosa/package/musl/package.az
@@ -43,8 +43,8 @@ package musl {
"LDFLAGS=" + earlyLDFLAGS,
];
early = `
-[ -e '/system/`+arch+`' ] && \
- ln -s ../../../../`+arch+`/system/lib/`+triple+` /system/lib/clang/*/lib || true
+[ -e '`+prefix+`/`+arch+`' ] && \
+ ln -s ../../../../`+arch+prefix+`/lib/`+triple+` `+prefix+`/lib/clang/*/lib || true
`;
exec = make {
@@ -56,11 +56,11 @@ package musl {
};
check = nil;
postInstall = `
-mkdir -p /work/system/bin
+mkdir -p /work`+prefix+`/bin
COMPAT_LINKER_NAME="ld-musl-`+llvmArch+`.so.1"
-ln -vs ../lib/libc.so /work/system/bin/linker
-ln -vs ../lib/libc.so /work/system/bin/ldd
-ln -vs libc.so "/work/system/lib/${COMPAT_LINKER_NAME}"
+ln -vs ../lib/libc.so /work`+prefix+`/bin/linker
+ln -vs ../lib/libc.so /work`+prefix+`/bin/ldd
+ln -vs libc.so "/work`+prefix+`/lib/${COMPAT_LINKER_NAME}"
rm -v "/work/lib/${COMPAT_LINKER_NAME}"
rmdir -v /work/lib
`;
diff --git a/internal/rosa/package/ncurses.az b/internal/rosa/package/ncurses.az
index 9295f4b7..62149637 100644
--- a/internal/rosa/package/ncurses.az
+++ b/internal/rosa/package/ncurses.az
@@ -22,7 +22,7 @@ package ncurses {
check = nil;
postInstall = `
-find /work/system/lib \
+find /work`+prefix+`/lib \
-type f \
-name '*.a' \
-exec objcopy --enable-deterministic-archives {} \;
diff --git a/internal/rosa/package/ninja.az b/internal/rosa/package/ninja.az
index da5fa715..4c419ded 100644
--- a/internal/rosa/package/ninja.az
+++ b/internal/rosa/package/ninja.az
@@ -29,8 +29,8 @@ python3 /usr/src/ninja/configure.py \
check = "./ninja_test";
install = `
-mkdir -p /work/system/bin/
-cp ninja /work/system/bin/`;
+mkdir -p /work`+prefix+`/bin/
+cp ninja /work`+prefix+`/bin/`;
};
tools = [
diff --git a/internal/rosa/package/noto.az b/internal/rosa/package/noto.az
index 6fc8e125..838d222b 100644
--- a/internal/rosa/package/noto.az
+++ b/internal/rosa/package/noto.az
@@ -14,7 +14,7 @@ package noto {
exec = generic {
chdir = false;
install = `
-DEST=/work/system/share/fonts/noto
+DEST=/work`+prefix+`/share/fonts/noto
for font in $(ls -d fonts/*/); do
if [[ -d "$font"unhinted/variable-ttf ]]; then
install -m444 -vDt "$DEST" "$font"unhinted/variable-ttf/*.ttf
diff --git a/internal/rosa/package/nss.az b/internal/rosa/package/nss.az
index 4f4d4d9a..d7f99135 100644
--- a/internal/rosa/package/nss.az
+++ b/internal/rosa/package/nss.az
@@ -21,14 +21,14 @@ package nss-cacert {
exec = generic {
chdir = false;
build = `
-mkdir -p /work/system/etc/ssl/{certs/unbundled,certs/hashed,trust-source}
+mkdir -p /work`+prefix+`/etc/ssl/{certs/unbundled,certs/hashed,trust-source}
buildcatrust \
--certdata_input lib/ckfw/builtins/certdata.txt \
- --ca_bundle_output /work/system/etc/ssl/certs/ca-bundle.crt \
- --ca_standard_bundle_output /work/system/etc/ssl/certs/ca-no-trust-rules-bundle.crt \
- --ca_unpacked_output /work/system/etc/ssl/certs/unbundled \
- --ca_hashed_unpacked_output /work/system/etc/ssl/certs/hashed \
- --p11kit_output /work/system/etc/ssl/trust-source/ca-bundle.trust.p11-kit
+ --ca_bundle_output /work`+prefix+`/etc/ssl/certs/ca-bundle.crt \
+ --ca_standard_bundle_output /work`+prefix+`/etc/ssl/certs/ca-no-trust-rules-bundle.crt \
+ --ca_unpacked_output /work`+prefix+`/etc/ssl/certs/unbundled \
+ --ca_hashed_unpacked_output /work`+prefix+`/etc/ssl/certs/hashed \
+ --p11kit_output /work`+prefix+`/etc/ssl/trust-source/ca-bundle.trust.p11-kit
`;
};
diff --git a/internal/rosa/package/openssl.az b/internal/rosa/package/openssl.az
index da99b82c..03ae677b 100644
--- a/internal/rosa/package/openssl.az
+++ b/internal/rosa/package/openssl.az
@@ -23,7 +23,7 @@ package openssl {
configureName = "/usr/src/openssl/Configure";
configure = {
- "prefix": "/system";
+ "prefix": prefix;
"libdir": "lib";
"openssldir": "etc/ssl";
"": "no-docs";
diff --git a/internal/rosa/package/perl.az b/internal/rosa/package/perl.az
index 3009c75b..828fcab4 100644
--- a/internal/rosa/package/perl.az
+++ b/internal/rosa/package/perl.az
@@ -16,7 +16,7 @@ package perl {
writable = true;
chmod = true;
early = `
-chmod +w /system/bin && rm -f /system/bin/ps # perl does not like toybox ps
+chmod +w `+prefix+`/bin && rm -f `+prefix+`/bin/ps # perl does not like toybox ps
function disable_test {
echo 'print STDOUT "1..0 # Skip broken test\n";' > "$1"
@@ -35,7 +35,7 @@ disable_test ext/POSIX/t/time.t
configureName = "./Configure";
configure = {
"-des";
- "Dprefix": "/system";
+ "Dprefix": prefix;
"Dcc": "clang";
"Dcflags": "--std=gnu99";
"Dldflags": `"${LDFLAGS:-''}"`;
@@ -73,7 +73,7 @@ package perl-Module-Build {
exec = generic {
chdir = false;
build = `
-perl Build.PL --prefix=/system
+perl Build.PL --prefix=`+prefix+`
./Build build`;
check = `
./Build test`;
diff --git a/internal/rosa/package/pkgconf.az b/internal/rosa/package/pkgconf.az
index 35485b72..1b8bcbf7 100644
--- a/internal/rosa/package/pkgconf.az
+++ b/internal/rosa/package/pkgconf.az
@@ -11,6 +11,6 @@ package pkgconf {
};
exec = meson {
- postInstall = "ln -s pkgconf /work/system/bin/pkg-config";
+ postInstall = "ln -s pkgconf /work"+prefix+"/bin/pkg-config";
};
}
diff --git a/internal/rosa/package/python/package.az b/internal/rosa/package/python/package.az
index 40fabe25..4dc3d5ee 100644
--- a/internal/rosa/package/python/package.az
+++ b/internal/rosa/package/python/package.az
@@ -52,14 +52,14 @@ package python {
},
// _ctypes appears to infer something from the linker name
- "LDFLAGS=-Wl,--dynamic-linker=/system/lib/"+
+ "LDFLAGS=-Wl,--dynamic-linker="+prefix+"/lib/"+
"ld-musl-"+llvmArch+".so.1",
];
exec = make {
configure = { "enable-optimizations"; };
check = [ "test" ];
- postInstall = "ln -s python3 /work/system/bin/python";
+ postInstall = "ln -s python3 /work"+prefix+"/bin/python";
};
tools = [ pkg-config ];
@@ -122,13 +122,13 @@ package python-early {
},
// _ctypes appears to infer something from the linker name
- "LDFLAGS=-Wl,--dynamic-linker=/system/lib/" +
+ "LDFLAGS=-Wl,--dynamic-linker="+prefix+"/lib/" +
"ld-musl-"+llvmArch+".so.1",
];
exec = make {
check = [ "test" ];
- postInstall = "ln -s python3 /work/system/bin/python";
+ postInstall = "ln -s python3 /work"+prefix+"/bin/python";
};
inputs = [
@@ -586,7 +586,7 @@ package python-pycparser {
// test case hard codes gcc
early = `
-ln -s clang /system/bin/gcc
+ln -s clang `+prefix+`/bin/gcc
`;
exec = pip {};
diff --git a/internal/rosa/package/spirv.az b/internal/rosa/package/spirv.az
index 8cfb33f7..2b934933 100644
--- a/internal/rosa/package/spirv.az
+++ b/internal/rosa/package/spirv.az
@@ -32,7 +32,7 @@ package spirv-tools {
exec = cmake {
cache = {
- "SPIRV-Headers_SOURCE_DIR": "/system";
+ "SPIRV-Headers_SOURCE_DIR": prefix;
};
};
@@ -53,7 +53,7 @@ package spirv-llvm-translator {
};
// litArgs emits shell syntax
- early = "rm -f /system/bin/clang++.cfg\nexport LIT_OPTS=" + litArgs {
+ early = "rm -f "+prefix+"/bin/clang++.cfg\nexport LIT_OPTS=" + litArgs {
verbose = true;
skipChecks = arch {
@@ -146,8 +146,8 @@ package spirv-llvm-translator {
"CMAKE_SKIP_BUILD_RPATH": "ON";
"BUILD_SHARED_LIBS": "ON";
"LLVM_SPIRV_ENABLE_LIBSPIRV_DIS": "ON";
- "LLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR": "/system";
- "LLVM_EXTERNAL_LIT": "/system/bin/lit";
+ "LLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR": prefix;
+ "LLVM_EXTERNAL_LIT": prefix+"/bin/lit";
"LLVM_INCLUDE_TESTS": "ON";
};
};
diff --git a/internal/rosa/package/squashfs-tools.az b/internal/rosa/package/squashfs-tools.az
index 145c1cb9..27282c1c 100644
--- a/internal/rosa/package/squashfs-tools.az
+++ b/internal/rosa/package/squashfs-tools.az
@@ -31,7 +31,7 @@ package squashfs-tools {
chdir = false;
configure = nil;
check = nil;
- install = "make INSTALL_PREFIX=/work/system install";
+ install = "make INSTALL_PREFIX=/work"+prefix+" install";
};
tools = [ sed ];
diff --git a/internal/rosa/package/tamago.az b/internal/rosa/package/tamago.az
index 627823bd..bb0e14e1 100644
--- a/internal/rosa/package/tamago.az
+++ b/internal/rosa/package/tamago.az
@@ -21,13 +21,13 @@ package tamago {
exec = generic {
chdir = false;
build = `
-mkdir /work/system/
-cp -r . /work/system/tamago
-cd /work/system/tamago/src
+mkdir /work`+prefix+`/
+cp -r . /work`+prefix+`/tamago
+cd /work`+prefix+`/tamago/src
chmod -R +w ..
sed -i \
- 's,/lib/ld-musl-`+llvmArch+`.so.1,/system/bin/linker,' \
+ 's,/lib/ld-musl-`+llvmArch+`.so.1,`+prefix+`/bin/linker,' \
cmd/link/internal/` + arch + `/obj.go
rm \
diff --git a/internal/rosa/package/toybox.az b/internal/rosa/package/toybox.az
index 2c695ad0..43faceee 100644
--- a/internal/rosa/package/toybox.az
+++ b/internal/rosa/package/toybox.az
@@ -53,11 +53,11 @@ sed -i \
];
checkEarly = false;
- install = "PREFIX=/work/system/bin make install_flat";
+ install = "PREFIX=/work"+prefix+"/bin make install_flat";
postInstall = `
mkdir -p /work/usr/bin
-ln -s ../../system/bin/env /work/usr/bin
+ln -s ../..`+prefix+`/bin/env /work/usr/bin
`;
};
@@ -92,9 +92,9 @@ chmod +w /bin/
ln -rs "$(which bash)" /bin/ || true
if [ -n "${CC+x}" ]; then
- echo '#!/bin/sh' > '/system/bin/`+llvmArch+`-cc'
- echo "exec $CC "'"$@"' >> '/system/bin/`+llvmArch+`-cc'
- chmod +x '/system/bin/`+llvmArch+`-cc'
+ echo '#!/bin/sh' > '`+prefix+`/bin/`+llvmArch+`-cc'
+ echo "exec $CC "'"$@"' >> '`+prefix+`/bin/`+llvmArch+`-cc'
+ chmod +x '`+prefix+`/bin/`+llvmArch+`-cc'
unset CC
export CROSS_COMPILE=`+llvmArch+`-
fi
@@ -126,11 +126,11 @@ CONFIG_DIFF=y
];
checkEarly = false;
- install = "PREFIX=/work/system/bin make install_flat";
+ install = "PREFIX=/work"+prefix+"/bin make install_flat";
postInstall = `
mkdir -p /work/usr/bin
-ln -s ../../system/bin/env /work/usr/bin
+ln -s ../..`+prefix+`/bin/env /work/usr/bin
`;
};
diff --git a/internal/rosa/package/unzip.az b/internal/rosa/package/unzip.az
index 3bc8ae8b..9d4ea5b6 100644
--- a/internal/rosa/package/unzip.az
+++ b/internal/rosa/package/unzip.az
@@ -24,8 +24,8 @@ package unzip {
build = `unix/configure
make -f unix/Makefile generic1`;
install = `
-mkdir -p /work/system/bin/
-mv unzip /work/system/bin/
+mkdir -p /work`+prefix+`/bin/
+mv unzip /work`+prefix+`/bin/
`;
};
diff --git a/internal/rosa/package/util-linux.az b/internal/rosa/package/util-linux.az
index 8beff173..4d803226 100644
--- a/internal/rosa/package/util-linux.az
+++ b/internal/rosa/package/util-linux.az
@@ -32,9 +32,9 @@ package util-linux {
"enable-fs-paths-default": join {
elems = [
- "/system/sbin",
- "/system/sbin/fs.d",
- "/system/sbin/fs",
+ prefix+"/sbin",
+ prefix+"/sbin/fs.d",
+ prefix+"/sbin/fs",
];
sep = ":";
};