From ca5ae7c4756ea82b13ec571d33c8da59cd391b92 Mon Sep 17 00:00:00 2001 From: Stefan Boberg Date: Mon, 6 Oct 2025 13:37:39 +0200 Subject: added default Linux UE toolchain directory (#558) Instead of forcing user to specify a suitable directory for the UE toolchain, we offer a default which matches what the Github runners use and which is also covered by the root `.gitignore` file --- scripts/ue_build_linux/get_ue_toolchain.sh | 16 +++++++++------- scripts/ue_build_linux/ue_build.sh | 20 +++++++++++++------- 2 files changed, 22 insertions(+), 14 deletions(-) (limited to 'scripts') diff --git a/scripts/ue_build_linux/get_ue_toolchain.sh b/scripts/ue_build_linux/get_ue_toolchain.sh index dab87cf88..c2538b09a 100755 --- a/scripts/ue_build_linux/get_ue_toolchain.sh +++ b/scripts/ue_build_linux/get_ue_toolchain.sh @@ -5,21 +5,23 @@ ZEN_ROOT=$(realpath $SCRIPT_DIR/../..) die() { echo "ERROR: $1"; exit; } -if [ -z $1 ]; then +toolchain_dir="${1:-${ZEN_ROOT}/.tmp-ue-toolchain}" + +if [[ $toolchain_dir == "--help" ]]; then echo "usage: $(basename ${BASH_SOURCE[0]}) " exit fi -if [ -e $1 ]; then - rmdir $1 +if [ -e $toolchain_dir ]; then + rmdir $toolchain_dir if [ $? -gt 0 ]; then - die "$1 is not empty" + die "$toolchain_dir is not empty" exit fi fi -mkdir -p $1 -cd $1 +mkdir -p $toolchain_dir +cd $toolchain_dir mkdir -p tmp cd tmp @@ -27,7 +29,7 @@ cd tmp CLANG_VERSION=v25_clang-18.1.0-rockylinux8 TOOLCHAIN_PLATFORM=x86_64-unknown-linux-gnu -echo "Fetching UE toolchain $CLANG_VERSION..." +echo "Fetching UE toolchain $CLANG_VERSION into '$toolchain_dir'..." wget -q --show-progress http://cdn.unrealengine.com/Toolchain_Linux/native-linux-$CLANG_VERSION.tar.gz echo "Extracting toolchain $TOOLCHAIN_PLATFORM..." diff --git a/scripts/ue_build_linux/ue_build.sh b/scripts/ue_build_linux/ue_build.sh index 4613dd5ec..690f9f661 100755 --- a/scripts/ue_build_linux/ue_build.sh +++ b/scripts/ue_build_linux/ue_build.sh @@ -1,22 +1,28 @@ #!/bin/bash +SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) +ZEN_ROOT=$(realpath $SCRIPT_DIR/../..) + die() { echo ERROR: $1; exit 1; } -# Validate input -if [ -z $1 ]; then - echo "usage: $0 " - exit 1 +if [[ $1 == "--help" ]]; then + echo "usage: $0 (defaults to ${ZEN_ROOT}/.tmp-ue-toolchain)" + exit fi -if ! [ -d $1 ]; then +toolchain_dir="${1:-${ZEN_ROOT}/.tmp-ue-toolchain}" + +# Validate input + +if ! [ -d $toolchain_dir ]; then die "$1 is not a directory" fi -if ! [ -e $1/bin/clang++ ]; then +if ! [ -e $toolchain_dir/bin/clang++ ]; then die "$1/bin/clang++ does not exist" fi -export UE_TOOLCHAIN_DIR=$(realpath $1) +export UE_TOOLCHAIN_DIR=$(realpath $toolchain_dir) export CC="clang" export CXX="clang++" export LD="clang++" -- cgit v1.2.3