{ "toolchain": { "type": "export" , "flexible_config": ["ARCH", "TARGET_ARCH", "TOOLCHAIN_CONFIG", "ENV"] , "target": "busybox" } , "original sources": {"type": "install", "dirs": [[["TREE", null, "."], "src"]]} , "sources": { "type": ["@", "rules", "CC/foreign/shell", "data"] , "project": ["original sources"] , "localbase": [["@", "patch-cbq", "", "remove-cbq.patch"]] , "cmds": [ "cp -r src/. ${DESTDIR}" , "chmod 644 ${DESTDIR}/networking/tc.c" , "(cd ${DESTDIR} && patch -p1 < ${LOCALBASE}/remove-cbq.patch)" ] , "out_dirs": ["."] } , "busybox": { "type": ["@", "rules", "CC/foreign/shell", "data"] , "project": ["sources"] , "cmds": [ "NJOBS=$(nproc --all 2>/dev/null || echo 1)" , "GCC_TOOLCHAIN=$(dirname ${CC})/.." , "export PATH=$(dirname ${CC}):${PATH}" , "unset CFLAGS CXXFLAGS" , "export LDFLAGS=\"-static\"" , "export SOURCE_DATE_EPOCH=0" , "${MAKE} HOSTCC=\"${CC} -static\" HOSTCXX=\"${CXX} -static\" defconfig >configure.log 2>&1 || (cat configure.log && exit 1)" , "${MAKE} -j${NJOBS} HOSTCC=\"${CC} -static\" HOSTCXX=\"${CXX} -static\" >build.log 2>&1 || (cat configure.log build.log && exit 1)" , "${MAKE} -j${NJOBS} HOSTCC=\"${CC} -static\" HOSTCXX=\"${CXX} -static\" CONFIG_PREFIX=${DESTDIR} install >>build.log 2>&1 || (cat configure.log build.log && exit 1)" , "cd ${DESTDIR}" , "for d in sbin usr/bin usr/sbin; do cp -l bin/busybox $d; done" , "for l in $(find sbin usr/bin usr/sbin -type l); do ln -sf busybox $l; done" ] , "out_dirs": ["."] } }