diff --git a/scripts/build b/scripts/build index a145f9d431..bb6f2822ee 100755 --- a/scripts/build +++ b/scripts/build @@ -66,6 +66,10 @@ if [ -f $STAMP ] ; then rm -f $STAMP fi + if [ ! "$BUILD_WITH_DEBUG" = "$STAMP_BUILD_WITH_DEBUG" ]; then + rm -f $STAMP + fi + if [ "$1" = "u-boot" -a ! "$UBOOT_SYSTEM" = "$STAMP_UBOOT_SYSTEM" ]; then rm -f $STAMP fi @@ -125,6 +129,15 @@ unset -f pre_makeinstall_bootstrap unset -f makeinstall_bootstrap unset -f post_makeinstall_bootstrap +# configure debug build defaults +if [ "${BUILD_WITH_DEBUG}" = "yes" ]; then + CMAKE_BUILD_TYPE="Debug" + MESON_BUILD_TYPE="debug" +else + CMAKE_BUILD_TYPE="MinSizeRel" + MESON_BUILD_TYPE="plain" +fi + # configure TARGET build defaults TARGET_CONFIGURE_OPTS="--host=$TARGET_NAME \ --build=$HOST_NAME \ @@ -138,13 +151,6 @@ TARGET_CONFIGURE_OPTS="--host=$TARGET_NAME \ --disable-static \ --enable-shared" -# cmake build defaults -if [ "$DEBUG" = "yes" ]; then - CMAKE_BUILD_TYPE="Debug" -else - CMAKE_BUILD_TYPE="MinSizeRel" -fi - CMAKE_GENERATOR_NINJA="-GNinja \ -DCMAKE_EXPORT_COMPILE_COMMANDS=ON" @@ -152,13 +158,6 @@ TARGET_CMAKE_OPTS="-DCMAKE_TOOLCHAIN_FILE=$CMAKE_CONF \ -DCMAKE_INSTALL_PREFIX=/usr \ -DCMAKE_BUILD_TYPE=$CMAKE_BUILD_TYPE" -# meson build defaults -if [ "$DEBUG" = "yes" ]; then - MESON_BUILD_TYPE="debug" -else - MESON_BUILD_TYPE="plain" -fi - TARGET_MESON_OPTS="--prefix=/usr \ --bindir=/usr/bin \ --sbindir=/usr/sbin \ @@ -232,13 +231,17 @@ for p in $_pkg_depends; do $SCRIPTS/build $p done -printf "%${BUILD_INDENT}c $(print_color CLR_BUILD "BUILD") $PACKAGE_NAME $(print_color CLR_TARGET "($TARGET)")\n" ' '>&$SILENT_OUT +if [ "${BUILD_WITH_DEBUG}" = "yes" ]; then + printf "%${BUILD_INDENT}c $(print_color CLR_BUILD "BUILD") $PACKAGE_NAME $(print_color CLR_TARGET "($TARGET)") [DEBUG]\n" ' '>&$SILENT_OUT +else + printf "%${BUILD_INDENT}c $(print_color CLR_BUILD "BUILD") $PACKAGE_NAME $(print_color CLR_TARGET "($TARGET)")\n" ' '>&$SILENT_OUT +fi export BUILD_INDENT=$((${BUILD_INDENT:-1}+$BUILD_INDENT_SIZE)) # virtual packages dont must be build, they only contains dependencies, so dont go further here if [ "$PKG_SECTION" = "virtual" ]; then PKG_DEEPMD5=$(find $STAMP_DEPENDS -exec md5sum {} \; 2>/dev/null | sort | md5sum | cut -d" " -f1) - for i in PKG_NAME PKG_DEEPMD5; do + for i in PKG_NAME PKG_DEEPMD5 BUILD_WITH_DEBUG; do echo "STAMP_$i=\"${!i}\"" >> $STAMP done @@ -538,7 +541,7 @@ if [ "$TARGET" = "target" -o "$TARGET" = "init" ]; then -exec rm -f {} \; 2>/dev/null || : find $INSTALL -type d -exec rmdir -p {} \; 2>/dev/null || : - if [ ! "$DEBUG" = yes ]; then + if [ ! "${BUILD_WITH_DEBUG}" = "yes" ]; then $STRIP `find $INSTALL \ -type f -name "*.so*" \ ! -name "ld-*.so" \ @@ -562,7 +565,7 @@ for i in `find $SYSROOT_PREFIX/usr/lib/ -name "*.la" 2>/dev/null`; do \ done PKG_DEEPMD5=$(find $STAMP_DEPENDS -exec md5sum {} \; 2>/dev/null | sort | md5sum | cut -d" " -f1) -for i in PKG_NAME PKG_DEEPMD5; do +for i in PKG_NAME PKG_DEEPMD5 BUILD_WITH_DEBUG; do echo "STAMP_$i=\"${!i}\"" >> $STAMP done