buildgcc: Reorder main program
This groups all tasks happening in the main program, orders them according to their dependencies and adds comments on the various tasks. Change-Id: Ib62bd213977cbc3307ef62e9a7e64515563968c1 Signed-off-by: Stefan Reinauer <stefan.reinauer@coreboot.org> Reviewed-on: http://review.coreboot.org/10490 Reviewed-by: Alexander Couzens <lynxis@fe80.eu> Tested-by: build bot (Jenkins)
This commit is contained in:
parent
05bbc9208a
commit
5dd2635af9
|
@ -530,17 +530,15 @@ case "$TARGETARCH" in
|
|||
*) printf "${red}WARNING: Unsupported architecture $TARGETARCH.${NC}\n\n"; ;;
|
||||
esac
|
||||
|
||||
if [ "$BUILDCLANG" -eq 0 ]; then
|
||||
echo "Target architecture is now $TARGETARCH"
|
||||
NAME="${TARGETARCH} cross"
|
||||
PACKAGES="GMP MPFR MPC LIBELF BINUTILS GCC IASL"
|
||||
else
|
||||
NAME=clang
|
||||
PACKAGES="LLVM CFE CRT CTE"
|
||||
fi
|
||||
# Figure out which packages to build
|
||||
|
||||
if [ "$clean" = "1" ]; then
|
||||
cleanup
|
||||
if [ "$BUILDCLANG" -eq 0 ]; then
|
||||
echo "Target architecture is now $TARGETARCH"
|
||||
NAME="${TARGETARCH} cross"
|
||||
PACKAGES="GMP MPFR MPC LIBELF BINUTILS GCC IASL"
|
||||
else
|
||||
NAME=clang
|
||||
PACKAGES="LLVM CFE CRT CTE"
|
||||
fi
|
||||
|
||||
if [ $SKIPGDB -eq 1 ]; then
|
||||
|
@ -556,23 +554,13 @@ else
|
|||
PACKAGES="$PACKAGES GDB"
|
||||
fi
|
||||
|
||||
# coreboot does not like the GOLD linker
|
||||
# USE_GOLD="--enable-gold"
|
||||
USE_GOLD=""
|
||||
GCC_OPTIONS="--enable-lto"
|
||||
# This initial cleanup is useful when updating the toolchain script.
|
||||
|
||||
printf "Downloading tar balls ... \n"
|
||||
mkdir -p tarballs
|
||||
for P in $PACKAGES; do
|
||||
download $P
|
||||
done
|
||||
printf "Downloaded tar balls ... ${green}ok${NC}\n"
|
||||
if [ "$clean" = "1" ]; then
|
||||
cleanup
|
||||
fi
|
||||
|
||||
printf "Unpacking and patching ... \n"
|
||||
for P in $PACKAGES; do
|
||||
unpack_and_patch $P || exit 1
|
||||
done
|
||||
printf "Unpacked and patched ... ${green}ok${NC}\n"
|
||||
# Set up host compiler and flags needed for various OSes
|
||||
|
||||
if [[ "$PACKAGES" == *GCC* ]]; then
|
||||
CC=cc
|
||||
|
@ -603,12 +591,36 @@ if [ "$USECCACHE" = 1 ]; then
|
|||
CC="ccache $CC"
|
||||
fi
|
||||
|
||||
# coreboot does not like the GOLD linker
|
||||
# USE_GOLD="--enable-gold"
|
||||
USE_GOLD=""
|
||||
GCC_OPTIONS="--enable-lto"
|
||||
|
||||
# Prepare target directory for building GCC
|
||||
# (dependencies must be in the PATH)
|
||||
mkdir -p $DESTDIR$TARGETDIR/bin
|
||||
export PATH=$DESTDIR$TARGETDIR/bin:$PATH
|
||||
|
||||
# Download, unpack, patch and build all packages
|
||||
|
||||
printf "Downloading tar balls ... \n"
|
||||
mkdir -p tarballs
|
||||
for P in $PACKAGES; do
|
||||
download $P
|
||||
done
|
||||
printf "Downloaded tar balls ... ${green}ok${NC}\n"
|
||||
|
||||
printf "Unpacking and patching ... \n"
|
||||
for P in $PACKAGES; do
|
||||
unpack_and_patch $P || exit 1
|
||||
done
|
||||
printf "Unpacked and patched ... ${green}ok${NC}\n"
|
||||
|
||||
printf "Building packages ... \n"
|
||||
for package in $PACKAGES; do
|
||||
build $package
|
||||
done
|
||||
printf "Packages built ... ${green}ok${NC}\n"
|
||||
|
||||
# Adding git information of current tree to target directory
|
||||
# for reproducibility
|
||||
|
|
Loading…
Reference in New Issue