diff options
Diffstat (limited to 'cmake/configure')
-rwxr-xr-x[-rw-r--r--] | cmake/configure | 35 |
1 files changed, 32 insertions, 3 deletions
diff --git a/cmake/configure b/cmake/configure index f79d4c45..922568de 100644..100755 --- a/cmake/configure +++ b/cmake/configure @@ -1,3 +1,4 @@ +#!/bin/sh # On 2013-05-14 Arnold wrote in an e-mail: # <QUOTE) @@ -13,7 +14,35 @@ # but I do want the ones I've added in configure.ac. # </QUOTE) + # Anyone using this script still needs an out-of-source build directory. -# This script should first check if it was invoked from outside the source directory. -# Then it shall evaluate all the options and translate the options into CMake variables. -# Finally the script shall invoke CMake. +if [ -f CMakeLists.txt ] ; then + echo "Your current working directory contains a file CMakeLists.txt, indicating" + echo "that this is a source directory. Create a new directory elsewhere, change into" + echo "this empty directory and try again." + echo " mkdir build" + echo " cd build" + echo " ../$0" + exit 1 +fi + +if ! [ -f ../CMakeLists.txt ] ; then + echo "The directory above your current working directory does not contain a file CMakeLists.txt." + echo "This script will run only if you are one level below the source directory." + exit 1 +fi + +# TODO: Evaluate all the options and translate the options into CMake variables. +CC=$( which cc ) +rm -f Toolchain.cmake +( + echo "set(CMAKE_C_COMPILER $CC)" + echo "set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)" + echo "set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)" + echo "set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)" +) > Toolchain.cmake + +# TODO: Allow the build directory to be in other places. +# A parameter is needed to pass the value. +cmake -DCMAKE_TOOLCHAIN_FILE=Toolchain.cmake .. + |