mrrl

Minimal Reliable Reproducible Linux
git clone https://ccx.te2000.cz/git/mrrl
Log | Files | Refs | Submodules | README

busybox:bootstrap (1513B)


      1 {% extends "base" %}
      2 {%- block body -%}
      3 #@pragma:nosandbox
      4 #@pragma:nopath
      5 #+{{pkg_install_name("musl-cross-make:bootstrap-1")}}
      6 #+{{pkg_install_name("gnu-make:bootstrap")}}
      7 #+{{pkg_install_name("nawk:bootstrap")}}
      8 #@git:3621595939e43a831d66f6b757d4f410029bff95:busybox
      9 #@sha256:{{files["busybox_bootstrap.config-3621595"]}}:busybox/.config
     10 
     11 PATH="$pthbs_build_environment/{{bindir}}:$PATH"
     12 mcm={{pkg_install_dir("musl-cross-make:bootstrap-1")}}
     13 make={{pkg_install_dir("gnu-make:bootstrap")}}
     14 
     15 export CC="$pthbs_build_environment/{{bindir}}/{{triplet}}-gcc"
     16 export CFLAGS="-D_GNU_SOURCE"
     17 export LDFLAGS="-static"
     18 $CC --version
     19 
     20 with_make_args() {
     21 	"$@" V=1 CROSS_COMPILE={{triplet}}- LDFLAGS="$LDFLAGS" HOSTLDFLAGS="$LDFLAGS" \
     22 		HOSTCC="$CC -static" CC="$CC -static" HOSTCFLAGS="$CFLAGS" \
     23 		KBUILD_VERBOSE=1
     24 }
     25 
     26 cd busybox
     27 grep -R '#!/.*/bash' . || true
     28 wc ./.config
     29 cat >>.config <<EOF
     30 CONFIG_BUSYBOX_EXEC_PATH="${prefix}/{{bindir}}/busybox"
     31 EOF
     32 
     33 with_make_args make oldconfig
     34 cat ./.config
     35 
     36 with_make_args {{make}}
     37 
     38 mkdir -p "$pthbs_destdir{{versions}}/$pthbs_package/{{bindir}}"
     39 cp -a busybox "$pthbs_destdir{{versions}}/$pthbs_package/{{bindir}}/"
     40 cd "$pthbs_destdir{{versions}}/$pthbs_package"
     41 
     42 echo false | ./{{bindir}}/busybox --list >/dev/null # test if it works
     43 ./{{bindir}}/busybox --list | awk '
     44 $0 == "awk" { next }  # seems buggy, use nawk instead
     45 $0 == "bbconfig" { next }
     46 { print "./{{bindir}}/busybox\t./{{bindir}}/" $0 }
     47 ' >.install-links.new
     48 mv .install-links.new .install-links
     49 {% endblock %}