source: mainline/contrib/toolchain/toolchain.ia64.sh@ 726e1043

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

get the extra headers back

  • Property mode set to 100755
File size: 3.1 KB
Line 
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
18BINUTILS_VERSION="2.17"
19GCC_VERSION="4.1.1"
20
21INCLUDES="ia64-pc-gnu-linux_includes.tar.bz2"
22BINUTILS="binutils-${BINUTILS_VERSION}.tar.gz"
23GCC_CORE="gcc-core-${GCC_VERSION}.tar.bz2"
24GCC_OBJC="gcc-objc-${GCC_VERSION}.tar.bz2"
25GCC_CPP="gcc-g++-${GCC_VERSION}.tar.bz2"
26
27INCLUDES_SOURCE="http://download.decky.cz/"
28BINUTILS_SOURCE="ftp://ftp.gnu.org/gnu/binutils/"
29GCC_SOURCE="ftp://ftp.gnu.org/gnu/gcc/gcc-${GCC_VERSION}/"
30
31PLATFORM="ia64"
32WORKDIR=`pwd`
33TARGET="${PLATFORM}-pc-linux-gnu"
34HOST="i686-pc-linux-gnu"
35PREFIX="/usr/local/${PLATFORM}"
36INCLUDESDIR="${WORKDIR}/include"
37BINUTILSDIR="${WORKDIR}/binutils-${BINUTILS_VERSION}"
38GCCDIR="${WORKDIR}/gcc-${GCC_VERSION}"
39OBJDIR="${WORKDIR}/gcc-obj"
40
41echo ">>> Downloading tarballs"
42
43if [ ! -f "${INCLUDES}" ]; then
44 wget -c "${INCLUDES_SOURCE}${INCLUDES}"
45 check_error $? "Error downloading includes."
46fi
47if [ ! -f "${BINUTILS}" ]; then
48 wget -c "${BINUTILS_SOURCE}${BINUTILS}"
49 check_error $? "Error downloading binutils."
50fi
51if [ ! -f "${GCC_CORE}" ]; then
52 wget -c "${GCC_SOURCE}${GCC_CORE}"
53 check_error $? "Error downloading GCC Core."
54fi
55if [ ! -f "${GCC_OBJC}" ]; then
56 wget -c "${GCC_SOURCE}${GCC_OBJC}"
57 check_error $? "Error downloading GCC Objective C."
58fi
59if [ ! -f "${GCC_CPP}" ]; then
60 wget -c "${GCC_SOURCE}${GCC_CPP}"
61 check_error $? "Error downloading GCC C++."
62fi
63
64echo ">>> Creating destionation directory"
65if [ ! -d "${PREFIX}" ]; then
66 mkdir -p "${PREFIX}"
67 test -d "${PREFIX}"
68 check_error $? "Unable to create ${PREFIX}."
69fi
70
71echo ">>> Creating GCC work directory"
72if [ ! -d "${OBJDIR}" ]; then
73 mkdir -p "${OBJDIR}"
74 test -d "${OBJDIR}"
75 check_error $? "Unable to create ${OBJDIR}."
76fi
77
78echo ">>> Unpacking tarballs"
79tar -xvjf "${INCLUDES}"
80check_error $? "Error unpacking includes."
81tar -xvzf "${BINUTILS}"
82check_error $? "Error unpacking binutils."
83tar -xvjf "${GCC_CORE}"
84check_error $? "Error unpacking GCC Core."
85tar -xvjf "${GCC_OBJC}"
86check_error $? "Error unpacking GCC Objective C."
87tar -xvjf "${GCC_CPP}"
88check_error $? "Error unpacking GCC C++."
89
90echo ">>> Compiling and installing binutils"
91cd "${BINUTILSDIR}"
92check_error $? "Change directory failed."
93./configure "--host=${HOST}" "--target=${TARGET}" "--prefix=${PREFIX}" "--program-prefix=${TARGET}-" "--disable-nls"
94check_error $? "Error configuring binutils."
95make all install
96check_error $? "Error compiling/installing binutils."
97
98echo ">>> Compiling and installing GCC"
99cd "${OBJDIR}"
100check_error $? "Change directory failed."
101"${GCCDIR}/configure" "--host=${HOST}" "--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 "--with-headers=${INCLUDESDIR}" --disable-shared
102check_error $? "Error configuring GCC."
103PATH="${PATH}:${PREFIX}/bin" make all-gcc install-gcc
104check_error $? "Error compiling/installing GCC."
105
106echo
107echo ">>> Cross-compiler for ${TARGET} installed."
Note: See TracBrowser for help on using the repository browser.