source: mainline/contrib/toolchain/toolchain.ia64.sh@ 7919cd5

lfn serial ticket/834-toolchain-update topic/msim-upgrade topic/simplify-dev-export
Last change on this file since 7919cd5 was d4668392, checked in by Martin Decky <martin@…>, 17 years ago

unify binutils and GCC versions in toolchain scripts

  • Property mode set to 100755
File size: 2.9 KB
RevLine 
[f7a13b9]1#!/bin/bash
2
3# Cross-Compiler Toolchain for ${PLATFORM}
4# by Martin Decky <martin@decky.cz>
5#
6# GPL'ed, copyleft
7#
8
9
10check_error() {
11 if [ "$1" -ne "0" ]; then
12 echo
13 echo "Script failed: $2"
14 exit
15 fi
16}
17
[ddb0df5]18if [ -z "${CROSS_PREFIX}" ] ; then
19 CROSS_PREFIX="/usr/local"
20fi
21
[d4668392]22BINUTILS_VERSION="2.19"
[a1696d8]23GCC_VERSION="4.3.2"
[f7a13b9]24
25BINUTILS="binutils-${BINUTILS_VERSION}.tar.gz"
[718d600]26GCC_CORE="gcc-core-${GCC_VERSION}.tar.bz2"
27GCC_OBJC="gcc-objc-${GCC_VERSION}.tar.bz2"
28GCC_CPP="gcc-g++-${GCC_VERSION}.tar.bz2"
[f7a13b9]29
30BINUTILS_SOURCE="ftp://ftp.gnu.org/gnu/binutils/"
31GCC_SOURCE="ftp://ftp.gnu.org/gnu/gcc/gcc-${GCC_VERSION}/"
32
33PLATFORM="ia64"
34WORKDIR=`pwd`
35TARGET="${PLATFORM}-pc-linux-gnu"
[ddb0df5]36PREFIX="${CROSS_PREFIX}/${PLATFORM}"
[726e1043]37INCLUDESDIR="${WORKDIR}/include"
[f7a13b9]38BINUTILSDIR="${WORKDIR}/binutils-${BINUTILS_VERSION}"
39GCCDIR="${WORKDIR}/gcc-${GCC_VERSION}"
40OBJDIR="${WORKDIR}/gcc-obj"
41
42echo ">>> Downloading tarballs"
43
44if [ ! -f "${BINUTILS}" ]; then
45 wget -c "${BINUTILS_SOURCE}${BINUTILS}"
46 check_error $? "Error downloading binutils."
47fi
[718d600]48if [ ! -f "${GCC_CORE}" ]; then
49 wget -c "${GCC_SOURCE}${GCC_CORE}"
50 check_error $? "Error downloading GCC Core."
51fi
52if [ ! -f "${GCC_OBJC}" ]; then
53 wget -c "${GCC_SOURCE}${GCC_OBJC}"
54 check_error $? "Error downloading GCC Objective C."
55fi
56if [ ! -f "${GCC_CPP}" ]; then
57 wget -c "${GCC_SOURCE}${GCC_CPP}"
58 check_error $? "Error downloading GCC C++."
[f7a13b9]59fi
60
61echo ">>> Creating destionation directory"
62if [ ! -d "${PREFIX}" ]; then
63 mkdir -p "${PREFIX}"
64 test -d "${PREFIX}"
65 check_error $? "Unable to create ${PREFIX}."
66fi
67
68echo ">>> Creating GCC work directory"
69if [ ! -d "${OBJDIR}" ]; then
70 mkdir -p "${OBJDIR}"
71 test -d "${OBJDIR}"
72 check_error $? "Unable to create ${OBJDIR}."
73fi
74
75echo ">>> Unpacking tarballs"
76tar -xvzf "${BINUTILS}"
77check_error $? "Error unpacking binutils."
[718d600]78tar -xvjf "${GCC_CORE}"
79check_error $? "Error unpacking GCC Core."
80tar -xvjf "${GCC_OBJC}"
81check_error $? "Error unpacking GCC Objective C."
82tar -xvjf "${GCC_CPP}"
83check_error $? "Error unpacking GCC C++."
[f7a13b9]84
85echo ">>> Compiling and installing binutils"
86cd "${BINUTILSDIR}"
87check_error $? "Change directory failed."
[8d37a06]88./configure "--target=${TARGET}" "--prefix=${PREFIX}" "--program-prefix=${TARGET}-" "--disable-nls"
[f7a13b9]89check_error $? "Error configuring binutils."
90make all install
91check_error $? "Error compiling/installing binutils."
92
93echo ">>> Compiling and installing GCC"
94cd "${OBJDIR}"
95check_error $? "Change directory failed."
[6660074]96"${GCCDIR}/configure" "--target=${TARGET}" "--prefix=${PREFIX}" "--program-prefix=${TARGET}-" --with-gnu-as --with-gnu-ld --disable-nls --disable-threads --enable-languages=c,objc,c++,obj-c++ --disable-multilib --disable-libgcj --disable-shared
[f7a13b9]97check_error $? "Error configuring GCC."
98PATH="${PATH}:${PREFIX}/bin" make all-gcc install-gcc
99check_error $? "Error compiling/installing GCC."
100
101echo
102echo ">>> Cross-compiler for ${TARGET} installed."
Note: See TracBrowser for help on using the repository browser.