357f2be14e
Allow toolchain builder to add a suffix to toolchain name. It is useful for rebuilding the same toolchain in different environment. (cherry picked from commit 83148fc5bb4e8bcc5afcf119df53ec1bc854be17)
53 lines
1.1 KiB
Bash
53 lines
1.1 KiB
Bash
#!/bin/bash
|
|
|
|
set -eou pipefail
|
|
|
|
TARGET=$1
|
|
VERSION=$2
|
|
TOOLCHAIN_VERSION_SUFFIX=$3
|
|
HOME=/home/ct
|
|
ZLIB_VERSION=1.2.11
|
|
|
|
build_toolchain() {
|
|
mkdir $HOME/build-"$TARGET"
|
|
cd $HOME/build-"$TARGET"
|
|
cp $HOME/toolchains/"$TARGET"/"$VERSION".config .config
|
|
ct-ng build
|
|
cd ..
|
|
}
|
|
|
|
build_zlib() {
|
|
TOOLCHAINS_PATH=$HOME/x-tools
|
|
INSTALL_PATH=$TOOLCHAINS_PATH/$TARGET/$TARGET/sysroot/usr
|
|
TOOLCHAIN_BIN_PREFIX=$TOOLCHAINS_PATH/$TARGET/bin/$TARGET
|
|
cd $HOME/zlib-$ZLIB_VERSION
|
|
|
|
CHOST=$TARGET \
|
|
CC=$TOOLCHAIN_BIN_PREFIX-gcc \
|
|
AR=$TOOLCHAIN_BIN_PREFIX-ar \
|
|
RANLIB=$TOOLCHAIN_BIN_PREFIX-ranlib \
|
|
./configure \
|
|
--prefix="$INSTALL_PATH"
|
|
|
|
make && make install
|
|
}
|
|
|
|
build_archive() {
|
|
cd $HOME/x-tools
|
|
if [ -z "$TOOLCHAIN_VERSION_SUFFIX" ]
|
|
then
|
|
FULL_NAME="$TARGET-$VERSION"
|
|
else
|
|
FULL_NAME="$TARGET-$VERSION-$TOOLCHAIN_VERSION_SUFFIX"
|
|
fi
|
|
mv "$TARGET" "$FULL_NAME"
|
|
ARCHIVE_NAME="$FULL_NAME.tar.gz"
|
|
tar -czvf "$ARCHIVE_NAME" "$FULL_NAME"
|
|
cp "$ARCHIVE_NAME" /artifacts/"$ARCHIVE_NAME"
|
|
}
|
|
|
|
echo "building toolchain for $TARGET"
|
|
|
|
build_toolchain
|
|
build_zlib
|
|
build_archive |