sandbox_rootfs (1648B)
1 #!/usr/bin/env pthbs-build 2 #@pragma:nosandbox 3 #+musl-cross-make.9be7a57aa0035ff26870115e69056e25445f3a96768a7d81251e7073630aadf9 4 #+gnu-make.05bfcd168c0d3714ecba9e27d84e02bfd2ef8f754c26c162be357882390451fc 5 #+busybox.23105cf3c52263661c44f7d855ae5dfc7287f5f8b60d6a026dedee24f4cf7a2e 6 #+nawk.abe3790fd5e321ccd4e1ab7dab56339222e2eee686bc4b2241e7853104a4a500 7 #+skalibs.e0039352bf67eec5491806301102ee2164a3cf89f62e795221ba7c44e441beae 8 #@sha256:8d716caa5ea940bbbb8f68ac0907cea36773c183bd4c1eebad030f6cc7deaec9:argv0exec.c 9 10 # - build script start - 11 12 build_env_static() { 13 export CFLAGS="-ffile-prefix-map=${pthbs_workdir}=builddir $CFLAGS" 14 export CXXFLAGS="-ffile-prefix-map=${pthbs_workdir}=builddir $CXXFLAGS" 15 export LDFLAGS="-static -L$pthbs_build_environment/library $LDFLAGS" 16 } 17 18 prefix=/home/ccx/versions/$pthbs_package 19 dest=${pthbs_destdir%/}${prefix} 20 cd '.' 21 22 export CC="$pthbs_build_environment/command/x86_64-linux-musl-gcc" 23 export CPATH="$pthbs_build_environment/include" 24 export LIBRARY_PATH="$pthbs_build_environment/library" 25 export LDFLAGS="-L$pthbs_build_environment/library" 26 27 28 mkdir -p root/bin root/usr root/sbin root/mnt/oldroot 29 ln -v -s ../bin root/usr/ 30 31 build_env_static 32 gcc ${CFLAGS} -o "root/bin/argv0exec" "argv0exec.c" $LDFLAGS -lskarnet 33 34 ln -v -s argv0exec root/bin/sh 35 ln -v -s argv0exec root/bin/env 36 ln -v -s ../bin/argv0exec root/sbin/sh 37 ln -v -s ../bin/argv0exec root/sbin/env 38 mkdir -p "$dest/pthbs/sandbox" 39 tar -cvf "$dest/pthbs/sandbox/root.tar" -C root . 40 41 42 43 44 cd "$dest" 45 ls -lh ./pthbs/sandbox/root.tar 46 printf '%s\t%s\n' >.install-links.new ./pthbs/sandbox/root.tar ./pthbs/sandbox/root.tar 47 mv .install-links.new .install-links 48