diff --git a/build.sh b/build.sh index 4bf5418..b389e2b 100755 --- a/build.sh +++ b/build.sh @@ -62,6 +62,19 @@ if [ ! -f ".config" ]; then make defconfig fi +# Force BusyBox shared library build profile. +if [ -x "./scripts/config" ]; then + ./scripts/config \ + -e BUILD_LIBBUSYBOX \ + -e FEATURE_SHARED_BUSYBOX \ + -e FEATURE_INDIVIDUAL \ + -d STATIC \ + -d PIE \ + -d FEATURE_LIBBUSYBOX_STATIC +else + echo "WARNING: scripts/config not found; shared library profile not enforced." >&2 +fi + make oldconfig make -j"${JOBS}" \ CROSS_COMPILE="${TOOLCHAIN_PREFIX}-" \ @@ -71,8 +84,14 @@ make -j"${JOBS}" \ EXTRA_LDFLAGS="--sysroot=${SYSROOT}" make CONFIG_PREFIX="${INSTALL_DIR}" install -"${STRIP_BIN}" busybox +if [ -f "busybox" ]; then + "${STRIP_BIN}" busybox +fi +if [ -f "libbusybox.so" ]; then + "${STRIP_BIN}" libbusybox.so +fi echo "Build completed successfully." echo "Binary: ${BUSYBOX_DIR}/busybox" +echo "Shared library: ${BUSYBOX_DIR}/libbusybox.so" echo "Installed to: ${INSTALL_DIR}"