mrrl

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

busybox (1295B)


      1 {%- set pkg_source="git" -%}
      2 {%- import "package_sets" as ps -%}
      3 {% extends "generic" %}
      4 {%- block package_deps -%}
      5 {{ ps.toolchain() }}
      6 #+{{pkg_install_name("gnu-make:bootstrap")}}
      7 #+{{pkg_install_name("busybox:bootstrap")}}
      8 {% endblock package_deps %}
      9 {%- block source_deps -%}
     10 {{- super() -}}
     11 #@sha256:{{files["busybox.config"]}}:busybox/.config
     12 {% endblock source_deps %}
     13 {% block configure -%}
     14 CC="gcc"
     15 export CFLAGS="-D_GNU_SOURCE -L$pthbs_build_environment/{{libdir}}"
     16 export LDFLAGS="-L$pthbs_build_environment/{{libdir}} -static"
     17 
     18 $CC --version
     19 ld --version
     20 
     21 with_make_args() {
     22 	"$@" V=1 CROSS_COMPILE={{triplet}}- LDFLAGS="$LDFLAGS" HOSTLDFLAGS="$LDFLAGS" \
     23 		HOSTCC="$CC -static" CC="$CC -static" HOSTCFLAGS="$CFLAGS" \
     24 		KBUILD_VERBOSE=1
     25 }
     26 
     27 cat >>.config <<EOF
     28 CONFIG_BUSYBOX_EXEC_PATH="${prefix}/{{bindir}}/busybox"
     29 EOF
     30 with_make_args make oldconfig
     31 cat .config
     32 
     33 {% endblock %}
     34 {% block build -%}
     35 with_make_args {{make}}
     36 
     37 {% endblock %}
     38 {% block install -%}
     39 mkdir -p "${dest}/{{bindir}}"
     40 cp -a busybox "${dest}/{{bindir}}/"
     41 
     42 {% endblock %}
     43 {% block finish -%}
     44 cd "${dest}"
     45 echo false | ./{{bindir}}/busybox --list >/dev/null # test if it works
     46 printf "./{{bindir}}/busybox\t./{{bindir}}/%s\n" busybox bbconfig >.install-links.new
     47 mv .install-links.new .install-links
     48 {% endblock %}