4 # Get, build and install the latest cross-development tools and libraries
8 # Specify the architectures for which the tools are to be built
9 # To build for single target: ARCHS="m68k"
11 ARCHS
="${ARCHS:-i386}"
16 # If any thing goes wrong, we'll bail out.
20 # Specify the versions
23 # BINUTILS=binutils-2.16.1
24 BINUTILS
=binutils-2.16
.91-20060119-1
25 CYGWIN_SNAP
=20060403 # You may need to find a more recent one.
30 PREFIX
="${PREFIX:-/opt/tiano/}"
33 # Where to get the GNU tools
35 BINUTILS_URL
=http
://superb.dl.sourceforge.net
/sourceforge
/mingw
/${BINUTILS}-src.
tar.gz
36 GCC_URL
=http
://mirrors.ibiblio.org
/pub
/mirrors
/gnu
/ftp
/gnu
/gcc
/gcc-
${GCC}/${GCC}.
tar.bz2
37 CYG_LOC
=http
://cygwin.com
/snapshots
/cygwin-src-
${CYGWIN_SNAP}.
tar.bz2
38 # export http_proxy=http://proxy.dp.intel.com:911
39 # export ftp_proxy=http://proxy.dp.intel.com:911
42 # Uncomment one of the following depending upon which your system provides
44 GET_COMMAND
="curl --remote-name"
45 #GET_COMMAND="wget -nc --no-directories --retr-symlinks "
48 # Allow environment to override some programs
52 SHELL
="${SHELL:-/bin/sh}"
57 # If you don't have curl on your machine, try using
58 # wget --passive-ftp --no-directories --retr-symlinks <<url>>
59 # If that doesn't work, try without the --passive-ftp option.
62 ${GET_COMMAND} "${BINUTILS_URL}" &
63 ${GET_COMMAND} "${GCC_URL}" &
64 ${GET_COMMAND} "${CYG_LOC}" &
73 tar zxf
"${BINUTILS}-src.tar.gz"
77 tar jxf
"${GCC}.tar.bz2"
80 (rm -rf cygwin-snapshot-
${CYGWIN_SNAP}-1/
81 tar jxf cygwin-src-
${CYGWIN_SNAP}.
tar.bz2
87 CONF_SHELL
="${CONF_SHELL:-/bin/bash}"
88 # CONF_SHELL="${CONF_SHELL:-echo}"
96 export targ
=${arch}-tiano-pe
97 export pref
=${PREFIX}${targ}
98 export PATH
="${pref}/bin:$PATH"
100 ( mkdir
-p build-binutils-
$targ
101 cd build-binutils-
$targ
102 "${CONF_SHELL}" "../${BINUTILS}/configure" \
103 --disable-nls "--target=${targ}" "--prefix=${pref}"
106 ) >> ${targ}.log
2>&1
109 mkdir
-p $pref/$targ/sys-include
;
110 cp -fr cygwin-snapshot-
${CYGWIN_SNAP}-1/newlib
/libc
/include
/* $pref/$targ/sys-include
111 cp -fr cygwin-snapshot-
${CYGWIN_SNAP}-1/winsup
/cygwin
/include
/* $pref/$targ/sys-include
114 ( mkdir
-p build-gcc-
$targ
116 "${CONF_SHELL}" "../${GCC}/configure" "--target=${targ}" "--prefix=${pref}" \
117 --with-gnu-as --with-gnu-ld --with-newlib --verbose \
119 --disable-nls --enable-languages=c
122 ) >> ${targ}.log
2>&1
134 # Comment out any activities you wish to omit