busybox:bootstrap (1682B)
1 #!/usr/bin/env pthbs-build 2 #@pragma:nosandbox 3 #@pragma:nopath 4 #+musl-cross-make.de554c172179c402cf921f506a2369385ea83330a5bb4ab6bb6a253db9aac258 5 #+gnu-make.6236d2c236f658167aece4d10bc59fa913f7fac60938f31bb5ef4a34bad42a94 6 #+nawk.596c1948e96cbcabfe3954a70deb947de0c73be1ddde41fafe8291bfec04bdd4 7 #@git:3621595939e43a831d66f6b757d4f410029bff95:busybox 8 #@sha256:18cd9ac8b9c738eaa9b33657dd52ffea6e1707c75ad40983ac477a5a5684c548:busybox/.config 9 10 PATH="$pthbs_build_environment/command:$PATH" 11 mcm=/versions/musl-cross-make.de554c172179c402cf921f506a2369385ea83330a5bb4ab6bb6a253db9aac258 12 make=/versions/gnu-make.6236d2c236f658167aece4d10bc59fa913f7fac60938f31bb5ef4a34bad42a94 13 14 export CC="$pthbs_build_environment/command/x86_64-linux-musl-gcc" 15 export CFLAGS="-D_GNU_SOURCE" 16 export LDFLAGS="-static" 17 $CC --version 18 19 with_make_args() { 20 "$@" V=1 CROSS_COMPILE=x86_64-linux-musl- LDFLAGS="$LDFLAGS" HOSTLDFLAGS="$LDFLAGS" \ 21 HOSTCC="$CC -static" CC="$CC -static" HOSTCFLAGS="$CFLAGS" \ 22 KBUILD_VERBOSE=1 23 } 24 25 cd busybox 26 grep -R '#!/.*/bash' . || true 27 wc ./.config 28 cat >>.config <<EOF 29 CONFIG_BUSYBOX_EXEC_PATH="${prefix}/command/busybox" 30 EOF 31 32 with_make_args make oldconfig 33 cat ./.config 34 35 with_make_args make -j${JOBS:-1} -l$((1+${JOBS:-1})) 36 37 mkdir -p "$pthbs_destdir/versions/$pthbs_package/command" 38 cp -a busybox "$pthbs_destdir/versions/$pthbs_package/command/" 39 cd "$pthbs_destdir/versions/$pthbs_package" 40 41 echo false | ./command/busybox --list >/dev/null # test if it works 42 ./command/busybox --list | awk ' 43 $0 == "awk" { next } # seems buggy, use nawk instead 44 $0 == "bbconfig" { next } 45 { print "./command/busybox\t./command/" $0 } 46 ' >.install-links.new 47 mv .install-links.new .install-links