diff options
Diffstat (limited to 'Tests/SubDirSpaces/CMakeLists.txt')
-rw-r--r-- | Tests/SubDirSpaces/CMakeLists.txt | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/Tests/SubDirSpaces/CMakeLists.txt b/Tests/SubDirSpaces/CMakeLists.txt new file mode 100644 index 000000000..879530b56 --- /dev/null +++ b/Tests/SubDirSpaces/CMakeLists.txt @@ -0,0 +1,77 @@ +cmake_minimum_required (VERSION 2.6) +PROJECT(SUBDIR) + +# Some systems do not seem to support rpath with spaces. +IF("${CMAKE_SYSTEM}" MATCHES "IRIX|QNX") + SET(CMAKE_SKIP_BUILD_RPATH 1) +ENDIF("${CMAKE_SYSTEM}" MATCHES "IRIX|QNX") + +# be able to see output from make on dashboards +SET(CMAKE_VERBOSE_MAKEFILE 1) +message("${CMAKE_MAKE_PROGRAM}") +set(CMAKE_PAREN TRUE) +IF("${CMAKE_MAKE_PROGRAM}" MATCHES "wmake") + message("wmake does not support () in path") + set(CMAKE_PAREN FALSE) +elseif("${CMAKE_MAKE_PROGRAM}" MATCHES "make") + execute_process(COMMAND ${CMAKE_MAKE_PROGRAM} no_such_target --version + RESULT_VARIABLE res OUTPUT_VARIABLE out ERROR_VARIABLE out) + if("${out}" MATCHES "GNU Make 3.82") + # GNU Make 3.82 fails on parens: http://savannah.gnu.org/bugs/?30612 + message(STATUS "GNU Make 3.82 sometimes fails on () in path") + set(CMAKE_PAREN FALSE) + endif() +endif() + +IF(CMAKE_PAREN) + ADD_DEFINITIONS(-DCMAKE_PAREN=1) + SUBDIRS("Executable Sources" "Some(x86) Sources" EXCLUDE_FROM_ALL "Some Examples") +ELSE(CMAKE_PAREN) + SUBDIRS("Executable Sources" EXCLUDE_FROM_ALL "Some Examples") +ENDIF(CMAKE_PAREN) + +WRITE_FILE(${SUBDIR_BINARY_DIR}/ShouldBeHere "This file should exist.") +#WATCOM WMAKE does not support + in the name of a file! +IF(WATCOM) + SET(PLUS_NAME_FILES + "Another Subdir/pair_int.int.c" + vcl_algorithm_vcl_pair_double.foo.c) +ELSE(WATCOM) + SET(PLUS_NAME_FILES + "Another Subdir/pair+int.int.c" + vcl_algorithm+vcl_pair+double.foo.c) +ENDIF(WATCOM) + +ADD_EXECUTABLE(TestFromSubdir + "Another Subdir/testfromsubdir.c" + "Another Subdir/secondone" + ${PLUS_NAME_FILES} + ) + +AUX_SOURCE_DIRECTORY(ThirdSubDir SOURCES) +IF(WATCOM) + FOREACH(f ${SOURCES}) + IF("${f}" STREQUAL "ThirdSubDir/pair+int.int1.c") + ELSE("${f}" STREQUAL "ThirdSubDir/pair+int.int1.c") + SET(SOURCES2 ${f} ${SOURCES2}) + ENDIF("${f}" STREQUAL "ThirdSubDir/pair+int.int1.c") + ENDFOREACH(f) + SET(SOURCES ${SOURCES2}) + SET(SOURCES ${SOURCES} + vcl_algorithm_vcl_pair_double.foo.c) +ELSE(WATCOM) + FOREACH(f ${SOURCES}) + IF("${f}" STREQUAL "ThirdSubDir/pair_int.int1.c") + ELSE("${f}" STREQUAL "ThirdSubDir/pair_int.int1.c") + SET(SOURCES2 ${f} ${SOURCES2}) + ENDIF("${f}" STREQUAL "ThirdSubDir/pair_int.int1.c") + ENDFOREACH(f) + SET(SOURCES ${SOURCES2}) + SET(SOURCES ${SOURCES} + vcl_algorithm+vcl_pair+double.foo.c) +ENDIF(WATCOM) +ADD_EXECUTABLE(TestWithAuxSourceDir ${SOURCES}) +IF(CMAKE_PAREN) + target_link_libraries(TestWithAuxSourceDir testOddPath) +ENDIF(CMAKE_PAREN) + |