Initial commit based on GenericQtClient v0.3.0
This commit is contained in:
59
installer/compile-executable.sh
Executable file
59
installer/compile-executable.sh
Executable file
@ -0,0 +1,59 @@
|
||||
#!/bin/bash
|
||||
|
||||
echo amount of arguments: $#
|
||||
|
||||
if [[ $# -ne 4 ]]; then
|
||||
echo "Build script has to be called with exactly two arguments."
|
||||
echo "The version number (Major.Minor.Patch) as its first argument."
|
||||
echo "... and the OS (linux, windows or macos) as the second argument"
|
||||
echo "TODO: DOCUMENT ARGUMENTS 3 & 4!!!"
|
||||
echo "Aborting..."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
VERSION=$1
|
||||
regex='^([0-9]+\.){0,2}(\*|[0-9]+)$'
|
||||
if [[ $VERSION =~ $regex ]]; then
|
||||
echo "Version accepted: $VERSION"
|
||||
else
|
||||
echo "Version '$VERSION' is not acceptable. Aborting..."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
PLATFORM=$2
|
||||
# TODO refactor this to use something like PLATFORMS.contains(PLATFORM)
|
||||
if [[ $PLATFORM == linux ]]; then
|
||||
echo "OS: $PLATFORM"
|
||||
#QMAKE_EXE="qmake"
|
||||
COMPILER_EXE="make"
|
||||
elif [[ $PLATFORM == windows ]]; then
|
||||
echo "OS: $PLATFORM"
|
||||
#QMAKE_EXE="$QMAKE_LOCATION/qmake"
|
||||
#COMPILER_EXE="$MINGWROOT/bin/mingw32-make"
|
||||
elif [[ $PLATFORM == macos ]]; then
|
||||
echo "OS: $PLATFORM"
|
||||
#QMAKE_EXE="qmake"
|
||||
COMPILER_EXE="make"
|
||||
else
|
||||
echo "Platform '$PLATFORM' is not acceptable. Aborting..."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Starting build ..."
|
||||
OLD_PWD=$(pwd)
|
||||
BUILD_DIR="_build"
|
||||
echo "starting in: ${OLD_PWD}"
|
||||
|
||||
# if [[ -e $BUILD_DIR/$TARGET ]]; then
|
||||
# echo "old build dir has old content, cleaning the build directory..."
|
||||
# rm -r $BUILD_DIR/*
|
||||
# fi
|
||||
cd $BUILD_DIR
|
||||
echo "Building in $(pwd) ..."
|
||||
|
||||
echo "Building whole project..."
|
||||
echo "Running CMake..."
|
||||
cmake -DCMAKE_BUILD_TYPE=Release ../../
|
||||
|
||||
echo "Compiling..."
|
||||
$COMPILER_EXE
|
||||
Reference in New Issue
Block a user