Changes in tools/toolchain.sh [f6c8fca:8f6c7785] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
tools/toolchain.sh
rf6c8fca r8f6c7785 53 53 EOF 54 54 55 BINUTILS_VERSION="2.2 3.1"55 BINUTILS_VERSION="2.22" 56 56 BINUTILS_RELEASE="" 57 GCC_VERSION="4.8.0" 58 GDB_VERSION="7.5.1" 57 #GCC_VERSION="4.7.2" 58 GCC_VERSION="4.7.3" 59 #GCC_VERSION="4.8.0" 60 GDB_VERSION="7.5" 59 61 60 62 BASEDIR="`pwd`" … … 71 73 HEADER="$2" 72 74 BODY="$3" 73 75 74 76 FNAME="/tmp/conftest-$$" 75 77 76 78 echo "#include ${HEADER}" > "${FNAME}.c" 77 79 echo >> "${FNAME}.c" … … 81 83 echo " return 0;" >> "${FNAME}.c" 82 84 echo "}" >> "${FNAME}.c" 83 85 84 86 cc -c -o "${FNAME}.o" "${FNAME}.c" 2> "${FNAME}.log" 85 87 RC="$?" 86 88 87 89 if [ "$RC" -ne "0" ] ; then 88 90 echo " ${DEPENDENCY} not found, too old or compiler error." … … 113 115 echo 114 116 echo "Script failed: $2" 115 117 116 118 exit 1 117 119 fi … … 121 123 FILE="$1" 122 124 SUM="$2" 123 125 124 126 COMPUTED="`md5sum "${FILE}" | cut -d' ' -f1`" 125 127 if [ "${SUM}" != "${COMPUTED}" ] ; then 126 128 echo 127 129 echo "Checksum of ${FILE} does not match." 128 130 129 131 exit 2 130 132 fi … … 156 158 echo "defined, /usr/local/cross will be used by default." 157 159 echo 158 160 159 161 exit 3 160 162 } … … 166 168 show_countdown() { 167 169 TM="$1" 168 170 169 171 if [ "${TM}" -eq 0 ] ; then 170 172 echo 171 173 return 0 172 174 fi 173 175 174 176 echo -n "${TM} " 175 177 change_title "${TM}" 176 178 sleep 1 177 179 178 180 TM="`expr "${TM}" - 1`" 179 181 show_countdown "${TM}" … … 211 213 FILE="$2" 212 214 CHECKSUM="$3" 213 215 214 216 if [ ! -f "${FILE}" ]; then 215 217 change_title "Downloading ${FILE}" … … 217 219 check_error $? "Error downloading ${FILE}." 218 220 fi 219 221 220 222 check_md5 "${FILE}" "${CHECKSUM}" 221 223 } … … 223 225 source_check() { 224 226 FILE="$1" 225 227 226 228 if [ ! -f "${FILE}" ]; then 227 229 echo 228 230 echo "File ${FILE} not found." 229 231 230 232 exit 4 231 233 fi … … 234 236 cleanup_dir() { 235 237 DIR="$1" 236 238 237 239 if [ -d "${DIR}" ]; then 238 240 change_title "Removing ${DIR}" … … 245 247 DIR="$1" 246 248 DESC="$2" 247 249 248 250 change_title "Creating ${DESC}" 249 251 echo ">>> Creating ${DESC}" 250 252 251 253 mkdir -p "${DIR}" 252 254 test -d "${DIR}" … … 257 259 FILE="$1" 258 260 DESC="$2" 259 261 260 262 change_title "Unpacking ${DESC}" 261 263 echo " >>> Unpacking ${DESC}" 262 264 263 265 tar -xjf "${FILE}" 264 266 check_error $? "Error unpacking ${DESC}." … … 269 271 check_dependecies 270 272 show_countdown 10 271 273 272 274 BINUTILS_SOURCE="ftp://ftp.gnu.org/gnu/binutils/" 273 275 GCC_SOURCE="ftp://ftp.gnu.org/gnu/gcc/gcc-${GCC_VERSION}/" 274 276 GDB_SOURCE="ftp://ftp.gnu.org/gnu/gdb/" 275 276 download_fetch "${BINUTILS_SOURCE}" "${BINUTILS}" " 33adb18c3048d057ac58d07a3f1adb38"277 download_fetch "${GCC_SOURCE}" "${GCC}" " e6040024eb9e761c3bea348d1fa5abb0"278 download_fetch "${GDB_SOURCE}" "${GDB}" " 3f48f468b24447cf24820054ff6e85b1"277 278 download_fetch "${BINUTILS_SOURCE}" "${BINUTILS}" "ee0f10756c84979622b992a4a61ea3f5" 279 download_fetch "${GCC_SOURCE}" "${GCC}" "cc308a0891e778cfda7a151ab8a6e762" 280 download_fetch "${GDB_SOURCE}" "${GDB}" "24a6779a9fe0260667710de1b082ef61" 279 281 } 280 282 … … 282 284 PLATFORM="$1" 283 285 TARGET="$2" 284 286 285 287 WORKDIR="${BASEDIR}/${PLATFORM}" 286 288 BINUTILSDIR="${WORKDIR}/binutils-${BINUTILS_VERSION}" … … 288 290 OBJDIR="${WORKDIR}/gcc-obj" 289 291 GDBDIR="${WORKDIR}/gdb-${GDB_VERSION}" 290 292 291 293 if [ -z "${CROSS_PREFIX}" ] ; then 292 294 CROSS_PREFIX="/usr/local/cross" 293 295 fi 294 296 295 297 PREFIX="${CROSS_PREFIX}/${PLATFORM}" 296 298 297 299 echo ">>> Downloading tarballs" 298 source_check "${BASEDIR}/${BINUTILS}"300 #source_check "${BASEDIR}/${BINUTILS}" 299 301 source_check "${BASEDIR}/${GCC}" 300 source_check "${BASEDIR}/${GDB}"301 302 #source_check "${BASEDIR}/${GDB}" 303 302 304 echo ">>> Removing previous content" 303 cleanup_dir "${PREFIX}"304 cleanup_dir "${WORKDIR}"305 305 #cleanup_dir "${PREFIX}" 306 #cleanup_dir "${WORKDIR}" 307 306 308 create_dir "${PREFIX}" "destination directory" 307 309 create_dir "${OBJDIR}" "GCC object directory" 308 310 309 311 echo ">>> Unpacking tarballs" 310 312 cd "${WORKDIR}" 311 313 check_error $? "Change directory failed." 312 313 unpack_tarball "${BASEDIR}/${BINUTILS}" "binutils"314 315 #unpack_tarball "${BASEDIR}/${BINUTILS}" "binutils" 314 316 unpack_tarball "${BASEDIR}/${GCC}" "GCC" 315 unpack_tarball "${BASEDIR}/${GDB}" "GDB"316 317 echo ">>> Processing binutils (${PLATFORM})"318 cd "${BINUTILSDIR}"319 check_error $? "Change directory failed."320 321 change_title "binutils: configure (${PLATFORM})"322 CFLAGS=-Wno-error ./configure "--target=${TARGET}" "--prefix=${PREFIX}" "--program-prefix=${TARGET}-" --disable-nls --disable-werror323 check_error $? "Error configuring binutils."324 325 change_title "binutils: make (${PLATFORM})"326 make all install327 check_error $? "Error compiling/installing binutils."328 317 #unpack_tarball "${BASEDIR}/${GDB}" "GDB" 318 319 #echo ">>> Processing binutils (${PLATFORM})" 320 #cd "${BINUTILSDIR}" 321 #check_error $? "Change directory failed." 322 323 #change_title "binutils: configure (${PLATFORM})" 324 #CFLAGS=-Wno-error ./configure "--target=${TARGET}" "--prefix=${PREFIX}" "--program-prefix=${TARGET}-" --disable-nls --disable-werror 325 #check_error $? "Error configuring binutils." 326 327 #change_title "binutils: make (${PLATFORM})" 328 #make all install 329 #check_error $? "Error compiling/installing binutils." 330 329 331 echo ">>> Processing GCC (${PLATFORM})" 330 332 cd "${OBJDIR}" 331 333 check_error $? "Change directory failed." 332 334 333 335 change_title "GCC: configure (${PLATFORM})" 334 336 "${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 --without-headers --disable-shared --enable-lto --disable-werror 335 337 check_error $? "Error configuring GCC." 336 338 337 339 change_title "GCC: make (${PLATFORM})" 338 340 PATH="${PATH}:${PREFIX}/bin" make all-gcc install-gcc 339 341 check_error $? "Error compiling/installing GCC." 340 341 echo ">>> Processing GDB (${PLATFORM})"342 cd "${GDBDIR}"343 check_error $? "Change directory failed."344 345 change_title "GDB: configure (${PLATFORM})"346 ./configure "--target=${TARGET}" "--prefix=${PREFIX}" "--program-prefix=${TARGET}-"347 check_error $? "Error configuring GDB."348 349 change_title "GDB: make (${PLATFORM})"350 make all install351 check_error $? "Error compiling/installing GDB."352 342 343 #echo ">>> Processing GDB (${PLATFORM})" 344 #cd "${GDBDIR}" 345 #check_error $? "Change directory failed." 346 347 #change_title "GDB: configure (${PLATFORM})" 348 #./configure "--target=${TARGET}" "--prefix=${PREFIX}" "--program-prefix=${TARGET}-" 349 #check_error $? "Error configuring GDB." 350 351 #change_title "GDB: make (${PLATFORM})" 352 #make all install 353 #check_error $? "Error compiling/installing GDB." 354 353 355 cd "${BASEDIR}" 354 356 check_error $? "Change directory failed." 355 357 356 358 echo ">>> Cleaning up" 357 359 cleanup_dir "${WORKDIR}" 358 360 359 361 echo 360 362 echo ">>> Cross-compiler for ${TARGET} installed." … … 367 369 case "$1" in 368 370 "amd64") 369 prepare371 #prepare 370 372 build_target "amd64" "amd64-linux-gnu" 371 373 ;; … … 375 377 ;; 376 378 "ia32") 377 prepare379 #prepare 378 380 build_target "ia32" "i686-pc-linux-gnu" 379 381 ;; … … 438 440 build_target "arm32" "arm-linux-gnueabi" & 439 441 wait 440 442 441 443 build_target "ia32" "i686-pc-linux-gnu" & 442 444 build_target "ia64" "ia64-pc-linux-gnu" & 443 445 wait 444 446 445 447 build_target "mips32" "mipsel-linux-gnu" & 446 448 build_target "mips32eb" "mips-linux-gnu" & 447 449 wait 448 450 449 451 build_target "mips64" "mips64el-linux-gnu" & 450 452 build_target "ppc32" "ppc-linux-gnu" & 451 453 wait 452 454 453 455 build_target "ppc64" "ppc64-linux-gnu" & 454 456 build_target "sparc64" "sparc64-linux-gnu" &
Note:
See TracChangeset
for help on using the changeset viewer.