mrrl

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

busybox (1667B)


      1 #!/usr/bin/env pthbs-build
      2 #+musl-cross-make.e4735d8572f9b6654a7381ebdfbd62e665d1d1da5e06a56923e89274cc6a510f
      3 #+gnu-make.0a6fbda1db6316eb5ed666a1697e7bf0e4604d371ac4cf5d24a5151e76280074
      4 #+busybox.e294f16fc3e0dacc71cec3a98899c8fd5a2512a998966c5c64a6950d051e7d44
      5 #@sha256:31b8f61d2173fa36d4409e8e91f52088691d6ba4db13efe19ea7ae7512e64275:busybox/.config
      6 #@git:3621595939e43a831d66f6b757d4f410029bff95:busybox
      7 
      8 
      9 # - build script start -
     10 
     11 prefix=/home/ccx/versions/$pthbs_package
     12 dest=${pthbs_destdir%/}${prefix}
     13 cd 'busybox'
     14 
     15 export CC="$pthbs_build_environment/command/x86_64-linux-musl-gcc"
     16 export CFLAGS="-D_GNU_SOURCE"
     17 export LDFLAGS="-static"
     18 
     19 cat >>.config <<EOF
     20 CONFIG_BUSYBOX_EXEC_PATH="${prefix}/command/busybox"
     21 EOF
     22 make oldconfig
     23 cat .config
     24 
     25 
     26 make V=1 CROSS_COMPILE=x86_64-linux-musl- LDFLAGS=-static HOSTLDFLAGS=-static \
     27       HOSTCC="$CC -static" CC="$CC -static" HOSTCFLAGS=-D_GNU_SOURCE -j${JOBS:-1}
     28 
     29 mkdir -p "${dest}/command"
     30 cp -a busybox "${dest}/command/"
     31 
     32 
     33 
     34 
     35 cd "${dest}"
     36 echo false | ./command/busybox --list >/dev/null # test if it works
     37 ./command/busybox --list | awk '
     38 /^(awk)$/ {next}
     39 /^(cmp|diff)$/ {next}  # provided by diffutils
     40 /^(find|xargs)$/ {next}  # provided by findutils
     41 /^(login)$/ {next}  # provided by logincaps
     42 /^(reset|clear)$/ {next}  # provided by netbsd-curses
     43 /^(chvt|deallocvt|fgconsole|kbd_mode|openvt|setfont|setkeycodes|showkey)$/ {next}  # provided by kbd
     44 /^(modinfo|modprobe|(dep|ins|ls|rm)mod)$/ {next}  # modutils
     45 /^(getfattr|setfattr|attr)$/ {next}  # attr
     46 { print "./command/busybox\t./command/" $0 }
     47 END { print "./command/busybox\t./command/busybox" }
     48 ' >.install-links.new
     49 mv .install-links.new .install-links
     50