busybox:modutils (1489B)
1 {%- set pkg_source="git" -%} 2 {% extends "generic" %} 3 {% if kernel is undefined %}{% do skip("kernel variable is undefined") %}{% endif -%} 4 {%- do import_functions.add("check_static") %} 5 {% block package_deps -%} 6 #+{{pkg_install_name(kernel)}} 7 #+{{pkg_install_name("musl-cross-make")}} 8 #+{{pkg_install_name("gnu-make")}} 9 #+{{pkg_install_name("busybox")}} 10 #+{{pkg_install_name("busybox-findutils")}} 11 #+{{pkg_install_name("busybox-diffutils")}} 12 #@sha256:{{files["busybox_modutils.config"]}}:busybox/.config 13 {% endblock %} 14 {% block configure -%} 15 export CC="$pthbs_build_environment/command/{{triplet}}-gcc" 16 export CFLAGS="-D_GNU_SOURCE" 17 export LDFLAGS="-static" 18 # TODO: indirection via deps directory/symlink 19 cat >>.config <<EOF 20 CONFIG_DEFAULT_MODULES_DIR="{{pkg_install_dir(kernel)}}" 21 EOF 22 make oldconfig 23 cat .config 24 25 {% endblock %} 26 {% block build -%} 27 make V=1 CROSS_COMPILE={{triplet}}- LDFLAGS=-static HOSTLDFLAGS=-static \ 28 HOSTCC="$CC -static" CC="$CC -static" HOSTCFLAGS=-D_GNU_SOURCE -j${JOBS:-1} 29 ./make_single_applets.sh 30 {% endblock %} 31 {% block install -%} 32 mkdir -p "${dest}/command" 33 34 for exe in depmod insmod lsmod modinfo modprobe rmmod; do 35 mv -v "busybox_$(printf '%s' $exe | tr '[a-z]' '[A-Z]')" "${dest}/command/${exe}" 36 check_static command/$exe 37 printf './command/%s\t./command/%s\n' "$exe" "$exe" \ 38 >>"${dest}/.install-links.new" 39 done 40 41 {% endblock %} 42 {% block finish -%} 43 cd "$pthbs_destdir{{versions}}/$pthbs_package" 44 mv .install-links.new .install-links 45 {% endblock %}