MINGWRT_DIR="mingwrt-${MINGWRT_VERSION}-mingw32"
SAVETEMPS=0
+SKIPGDB=0
red='\e[0;31m'
RED='\e[1;31m'
myhelp()
{
- printf "Usage: $0 [-V] [-c] [-p <platform>] [-d <target directory>] [-D <dest dir>]\n"
+ printf "Usage: $0 [-V] [-c] [-p <platform>] [-d <target directory>] [-D <dest dir>] [-G]\n"
printf " $0 [-V|--version]\n"
printf " $0 [-h|--help]\n\n"
printf " (defaults to $TARGETDIR)\n\n"
printf " [-D|--destdir <dest dir>] destination directory to install cross compiler to\n"
printf " (for RPM builds, default unset)\n\n"
+ printf " [-G|--skip-gdb] don't build GNU debugger\n"
}
myversion()
getoptbrand="`getopt -V`"
if [ "${getoptbrand:0:6}" == "getopt" ]; then
# Detected GNU getopt that supports long options.
- args=`getopt -l version,help,clean,directory:,platform:,jobs:,destdir:,savetemps Vhcd:p:j:D:t -- "$@"`
+ args=`getopt -l version,help,clean,directory:,platform:,jobs:,destdir:,savetemps,skip-gdb Vhcd:p:j:D:tG -- "$@"`
eval set "$args"
else
# Detected non-GNU getopt
- args=`getopt Vhcd:p:j:D:t $*`
+ args=`getopt Vhcd:p:j:D:tG $*`
set -- $args
fi
-p|--platform) shift; TARGETARCH="$1"; shift;;
-D|--destdir) shift; DESTDIR="$1"; shift;;
-j|--jobs) shift; JOBS="-j $1"; shift;;
+ -G|--skip-gdb) shift; SKIPGDB=1;;
--) shift; break;;
-*) printf "Invalid option\n\n"; myhelp; exit 1;;
*) break;;
esac
done
+GDB_PACKAGE="GDB"
+if [ $SKIPGDB -eq 1 ]; then
+ printf "Will skip GDB ... ${green}ok${NC}\n"
+ GDB_PACKAGE=""
+fi
+
MINGW_ARCHIVES=""
if [ "$TARGETARCH" = "i386-mingw32" ]; then
MINGW_ARCHIVES="$W32API_ARCHIVE $MINGWRT_ARCHIVE"
fi
printf "Unpacking and patching ... \n"
-for PACKAGE in GMP MPFR MPC LIBELF GCC BINUTILS GDB $MINGW_PACKAGES; do
+for PACKAGE in GMP MPFR MPC LIBELF GCC BINUTILS $GDB_PACKAGE $MINGW_PACKAGES; do
archive=$PACKAGE"_ARCHIVE"
archive=${!archive}
dir=$PACKAGE"_DIR"
#rm .architecture_check.c .architecture_check.o
fi
-mkdir -p build-gmp build-mpfr build-mpc build-libelf build-binutils build-gcc build-gdb
+mkdir -p build-gmp build-mpfr build-mpc build-libelf build-binutils build-gcc
+if [ $SKIPGDB -eq 0 ]; then
+ mkdir -p build-gdb
+fi
if [ -f build-gmp/.success ]; then
printf "Skipping GMP as it is already built\n"
else
if [ -f build-gdb/.success ]; then
printf "Skipping GDB as it is already built\n"
+elif [ $SKIPGDB -eq 1 ]; then
+ printf "Skipping GDB as requested by command line\n"
else
printf "Building GDB ${GDB_VERSION} ... "
(