diff options
author | Sven Göthel <[email protected]> | 2024-08-08 17:19:44 +0200 |
---|---|---|
committer | Sven Göthel <[email protected]> | 2024-08-08 17:19:44 +0200 |
commit | b302ef0b1b78812e717eb45164221bbf4d05abd7 (patch) | |
tree | b7cb50f1b70697c13af633ddc7413068d96754be /scripts/build-preset.sh | |
parent | dbd631b893650fff4bade772d4c6b5f77d9236c5 (diff) |
Update CMake Presets incl. build scripts using it now
Diffstat (limited to 'scripts/build-preset.sh')
-rwxr-xr-x | scripts/build-preset.sh | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/scripts/build-preset.sh b/scripts/build-preset.sh new file mode 100755 index 0000000..c2f3fd7 --- /dev/null +++ b/scripts/build-preset.sh @@ -0,0 +1,81 @@ +#! /bin/sh + +sdir=`dirname $(readlink -f $0)` +rootdir=`dirname $sdir` +bname=`basename $0 .sh` + +. $sdir/setup-machine-arch.sh + +tripleid="$os_name-$archabi-gcc" + +if [ ! -z "$1" ] ; then + preset_name=$1 + shift 1 +else + echo "ERROR: No preset passed as 1st argument, use one of:" + cmake --list-presets + return 1 +fi + +logfile=$rootdir/${bname}-${preset_name}-${tripleid}.log +rm -f $logfile + +CPU_COUNT=`getconf _NPROCESSORS_ONLN` + +# run as root 'dpkg-reconfigure locales' enable 'en_US.UTF-8' +# perhaps run as root 'update-locale LC_MEASUREMENT=en_US.UTF-8 LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8' +export LC_MEASUREMENT=en_US.UTF-8 +export LC_ALL=en_US.UTF-8 +export LANG=en_US.UTF-8 + +buildit() { + if [ -z "$JAVA_HOME" -o ! -e "$JAVA_HOME" ] ; then + echo "WARNING: JAVA_HOME $JAVA_HOME does not exist" + else + echo JAVA_HOME $JAVA_HOME + fi + echo rootdir $rootdir + echo logfile $logfile + echo CPU_COUNT $CPU_COUNT + + dist_dir="dist/preset-${preset_name}" + build_dir="build/preset-${preset_name}" + echo dist_dir $dist_dir + echo build_dir $build_dir + + if [ -x /usr/bin/time ] ; then + time_cmd="time" + echo "time command available: ${time_cmd}" + else + time_cmd="" + echo "time command not available" + fi + + cd $rootdir + rm -rf $dist_dir + mkdir -p $dist_dir + rm -rf $build_dir + mkdir -p $build_dir + + cmake --preset ${preset_name} + + # ${time_cmd} cmake --build --preset ${preset_name} --parallel $CPU_COUNT --target test install doc_jau + # ${time_cmd} cmake --build --preset ${preset_name} --parallel $CPU_COUNT + ${time_cmd} cmake --build --preset ${preset_name} --parallel $CPU_COUNT --target install + if [ $? -eq 0 ] ; then + echo "BUILD SUCCESS $bname $tripleid" + ${time_cmd} cmake --build --preset ${preset_name} --target test + if [ $? -eq 0 ] ; then + echo "TEST SUCCESS $bname $tripleid" + return 0 + else + echo "TEST FAILURE $bname $tripleid" + return 1 + fi + else + echo "BUILD FAILURE $bname $tripleid" + return 1 + fi +} + +buildit 2>&1 | tee $logfile |