{
"inputs": {
"rootfs": "catalog:warpsys.org/bootstrap/debian:bullseye-1646092800:amd64",
"glibc": "catalog:warpsys.org/bootstrap/glibc:v2.35:amd64",
"ldshim": "catalog:warpsys.org/bootstrap/ldshim:v1.0:amd64",
"busybox": "catalog:warpsys.org/bootstrap/busybox:v1.35.0:amd64",
"src": "catalog:warpsys.org/binutils:v2.38:src"
},
"steps": {
"build": {
"protoformula": {
"inputs": {
"/": "pipe::rootfs",
"/src": "pipe::src"
},
"action": {
"script": {
"interpreter": "/bin/sh",
"contents": [
"cd /src/*",
"mkdir -pv /prefix/build",
"cd /prefix/build",
"export SOURCE_DATE_EPOCH=1262304000",
"/src/*/configure --prefix=/warpsys-placeholder-prefix --enable-deterministic-archives LDFLAGS=-Wl,-rpath=XORIGIN/../lib",
"make",
"make DESTDIR=/out install",
"sed -i '0,/XORIGIN/{s/XORIGIN/$ORIGIN/}' /out/warpsys-placeholder-prefix/bin/*"
]
}
},
"outputs": {
"out": {
"from": "/out/warpsys-placeholder-prefix",
"packtype": "tar"
}
}
}
},
"pack": {
"protoformula": {
"inputs": {
"/": "pipe::rootfs",
"/pkg/glibc": "pipe::glibc",
"/pkg/ldshim": "pipe::ldshim",
"/pack": "pipe:build:out"
},
"action": {
"script": {
"interpreter": "/bin/sh",
"contents": [
"mkdir -vp /pack/lib",
"mkdir -vp /pack/dynbin",
"cp /pkg/glibc/lib/libc.so.6 /pack/lib",
"cp /pkg/glibc/lib/libdl.so.2 /pack/lib",
"cp /pkg/glibc/lib/libc_nonshared.a /pack/lib",
"cp /pkg/glibc/lib/ld-linux-x86-64.so.2 /pack/lib",
"mv /pack/bin/* /pack/dynbin",
"for FILE in /pack/dynbin/*; do cp /pkg/ldshim/ldshim /pack/bin/`basename $FILE`; done"
]
}
},
"outputs": {
"out": {
"from": "/pack",
"packtype": "tar"
}
}
}
},
"test-run": {
"protoformula": {
"inputs": {
"/pkg/busybox": "pipe::busybox",
"/pkg/binutils": "pipe:pack:out"
},
"action": {
"script": {
"interpreter": "/pkg/busybox/bin/sh",
"contents": [
"for FILE in /pkg/binutils/bin/*; do $FILE --version; done"
]
}
},
"outputs": {}
}
}
},
"outputs": {
"amd64": "pipe:pack:out"
}
}