projects
/
coreboot.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
crossgcc: update w32api
[coreboot.git]
/
util
/
crossgcc
/
buildgcc
diff --git
a/util/crossgcc/buildgcc
b/util/crossgcc/buildgcc
index 3d8818a80563db4880f4aaf1315bc7ba6ff00d0e..83b7cdff4ec8ecd5cd1d5f0731246657e0ca9f52 100755
(executable)
--- a/
util/crossgcc/buildgcc
+++ b/
util/crossgcc/buildgcc
@@
-18,8
+18,8
@@
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
#
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
#
-CROSSGCC_DATE="
Nov
ember 16th, 2010"
-CROSSGCC_VERSION="1.0
2
"
+CROSSGCC_DATE="
Dec
ember 16th, 2010"
+CROSSGCC_VERSION="1.0
3
"
# default settings
TARGETDIR=`pwd`/xgcc
# default settings
TARGETDIR=`pwd`/xgcc
@@
-31,10
+31,11
@@
GMP_VERSION=5.0.1
MPFR_VERSION=3.0.0
MPC_VERSION=0.8.2
LIBELF_VERSION=0.8.13
MPFR_VERSION=3.0.0
MPC_VERSION=0.8.2
LIBELF_VERSION=0.8.13
-GCC_VERSION=4.5.
1
+GCC_VERSION=4.5.
2
BINUTILS_VERSION=2.20.1
GDB_VERSION=7.2
BINUTILS_VERSION=2.20.1
GDB_VERSION=7.2
-W32API_VERSION=3.15
+W32API_VERSION=3.17-2
+W32API_VERSION_SHORT=3.17
MINGWRT_VERSION=3.18
# archive locations
MINGWRT_VERSION=3.18
# archive locations
@@
-42,10
+43,10
@@
GMP_ARCHIVE="ftp://ftp.gmplib.org/pub/gmp-${GMP_VERSION}/gmp-${GMP_VERSION}.tar.
MPFR_ARCHIVE="http://www.mpfr.org/mpfr-${MPFR_VERSION}/mpfr-${MPFR_VERSION}.tar.bz2"
MPC_ARCHIVE="http://www.multiprecision.org/mpc/download/mpc-${MPC_VERSION}.tar.gz"
LIBELF_ARCHIVE="http://www.mr511.de/software/libelf-${LIBELF_VERSION}.tar.gz"
MPFR_ARCHIVE="http://www.mpfr.org/mpfr-${MPFR_VERSION}/mpfr-${MPFR_VERSION}.tar.bz2"
MPC_ARCHIVE="http://www.multiprecision.org/mpc/download/mpc-${MPC_VERSION}.tar.gz"
LIBELF_ARCHIVE="http://www.mr511.de/software/libelf-${LIBELF_VERSION}.tar.gz"
-GCC_ARCHIVE="ftp://ftp.
gwdg.de/pub/gnu/ftp/gnu/gcc
/gcc-${GCC_VERSION}/gcc-core-${GCC_VERSION}.tar.bz2"
+GCC_ARCHIVE="ftp://ftp.
fu-berlin.de/unix/languages/gcc/releases
/gcc-${GCC_VERSION}/gcc-core-${GCC_VERSION}.tar.bz2"
BINUTILS_ARCHIVE="http://ftp.gnu.org/gnu/binutils/binutils-${BINUTILS_VERSION}.tar.bz2"
GDB_ARCHIVE="http://ftp.gnu.org/gnu/gdb/gdb-${GDB_VERSION}.tar.bz2"
BINUTILS_ARCHIVE="http://ftp.gnu.org/gnu/binutils/binutils-${BINUTILS_VERSION}.tar.bz2"
GDB_ARCHIVE="http://ftp.gnu.org/gnu/gdb/gdb-${GDB_VERSION}.tar.bz2"
-W32API_ARCHIVE="http://downloads.sourceforge.net/project/mingw/MinGW/BaseSystem/RuntimeLibrary/Win32-API/w32api-${W32API_VERSION
}/w32api-${W32API_VERSION}-mingw32-src.tar.gz
"
+W32API_ARCHIVE="http://downloads.sourceforge.net/project/mingw/MinGW/BaseSystem/RuntimeLibrary/Win32-API/w32api-${W32API_VERSION
_SHORT}/w32api-${W32API_VERSION}-mingw32-src.tar.lzma
"
MINGWRT_ARCHIVE="http://downloads.sourceforge.net/project/mingw/MinGW/BaseSystem/RuntimeLibrary/MinGW-RT/mingwrt-${MINGWRT_VERSION}/mingwrt-${MINGWRT_VERSION}-mingw32-src.tar.gz"
GMP_DIR="gmp-${GMP_VERSION}"
MINGWRT_ARCHIVE="http://downloads.sourceforge.net/project/mingw/MinGW/BaseSystem/RuntimeLibrary/MinGW-RT/mingwrt-${MINGWRT_VERSION}/mingwrt-${MINGWRT_VERSION}-mingw32-src.tar.gz"
GMP_DIR="gmp-${GMP_VERSION}"
@@
-59,6
+60,7
@@
W32API_DIR="w32api-${W32API_VERSION}-mingw32"
MINGWRT_DIR="mingwrt-${MINGWRT_VERSION}-mingw32"
SAVETEMPS=0
MINGWRT_DIR="mingwrt-${MINGWRT_VERSION}-mingw32"
SAVETEMPS=0
+SKIPGDB=0
red='\e[0;31m'
RED='\e[1;31m'
red='\e[0;31m'
RED='\e[1;31m'
@@
-87,9
+89,9
@@
searchgnu()
exit 1
}
exit 1
}
-TAR=`searchgnu tar`
-PATCH=`searchgnu patch`
-MAKE=`searchgnu make`
+TAR=`searchgnu tar`
|| exit $?
+PATCH=`searchgnu patch`
|| exit $?
+MAKE=`searchgnu make`
|| exit $?
cleanup()
{
cleanup()
{
@@
-100,7
+102,7
@@
cleanup()
myhelp()
{
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 " $0 [-V|--version]\n"
printf " $0 [-h|--help]\n\n"
@@
-116,6
+118,7
@@
myhelp()
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 " (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()
}
myversion()
@@
-147,11
+150,11
@@
getopt - > /dev/null 2>/dev/null || gcc -o getopt getopt.c
getoptbrand="`getopt -V`"
if [ "${getoptbrand:0:6}" == "getopt" ]; then
# Detected GNU getopt that supports long options.
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
eval set "$args"
else
# Detected non-GNU getopt
- args=`getopt Vhcd:p:j:D:t $*`
+ args=`getopt Vhcd:p:j:D:t
G
$*`
set -- $args
fi
set -- $args
fi
@@
-170,12
+173,19
@@
while true ; do
-p|--platform) shift; TARGETARCH="$1"; shift;;
-D|--destdir) shift; DESTDIR="$1"; shift;;
-j|--jobs) shift; JOBS="-j $1"; shift;;
-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
--) 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"
MINGW_ARCHIVES=""
if [ "$TARGETARCH" = "i386-mingw32" ]; then
MINGW_ARCHIVES="$W32API_ARCHIVE $MINGWRT_ARCHIVE"
@@
-228,7
+238,7
@@
if [ "$TARGETARCH" = "i386-mingw32" ]; then
fi
printf "Unpacking and patching ... \n"
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"
archive=$PACKAGE"_ARCHIVE"
archive=${!archive}
dir=$PACKAGE"_DIR"
@@
-237,6
+247,7
@@
for PACKAGE in GMP MPFR MPC LIBELF GCC BINUTILS GDB $MINGW_PACKAGES; do
FLAGS=zxf
test ${archive:${#archive}-2:2} = "gz" && FLAGS=zxf
test ${archive:${#archive}-3:3} = "bz2" && FLAGS=jxf
FLAGS=zxf
test ${archive:${#archive}-2:2} = "gz" && FLAGS=zxf
test ${archive:${#archive}-3:3} = "bz2" && FLAGS=jxf
+ test ${archive:${#archive}-4:4} = "lzma" && FLAGS="--lzma -xf"
$TAR $FLAGS tarballs/`basename $archive`
for patch in patches/${!dir}_*.patch; do
test -r $patch || continue
$TAR $FLAGS tarballs/`basename $archive`
for patch in patches/${!dir}_*.patch; do
test -r $patch || continue
@@
-275,7
+286,10
@@
if [ `uname` = "Darwin" ]; then
#rm .architecture_check.c .architecture_check.o
fi
#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-gmp/.success ]; then
printf "Skipping GMP as it is already built\n"
else
@@
-415,6
+429,8
@@
fi
if [ -f build-gdb/.success ]; then
printf "Skipping GDB as it is already built\n"
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} ... "
(
else
printf "Building GDB ${GDB_VERSION} ... "
(