summaryrefslogtreecommitdiffstats
path: root/Tests/Testing/CMakeLists.txt
blob: ece06d64e52119823315c4dce4bdbc185e8e8bbb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#
# Testing
#
PROJECT (Testing)

#
# Lib and exe path
#
SET (LIBRARY_OUTPUT_PATH 
     ${Testing_BINARY_DIR}/bin/ CACHE PATH 
     "Single output directory for building all libraries.")

SET (EXECUTABLE_OUTPUT_PATH 
     ${Testing_BINARY_DIR}/bin/ CACHE PATH 
     "Single output directory for building all executables.")

#
# Where will executable tests be written ?
#
IF (EXECUTABLE_OUTPUT_PATH)
  SET (CXX_TEST_PATH ${EXECUTABLE_OUTPUT_PATH})
ELSE (EXECUTABLE_OUTPUT_PATH)
  SET (CXX_TEST_PATH .)
ENDIF (EXECUTABLE_OUTPUT_PATH)

#
# Link to CMake lib
#
FIND_LIBRARY(CMAKE_LIB
             CMakeLib 
             ${Testing_BINARY_DIR}/../../Source
             ${Testing_BINARY_DIR}/../../Source/Debug
             ${Testing_BINARY_DIR}/../../Source/Release
             ${Testing_BINARY_DIR}/../../Source/MinSizeRel
             ${Testing_BINARY_DIR}/../../Source/RelWithDebInfo)

# Specify the same one for debug/optimized to increase coverage
LINK_LIBRARIES(${CMAKE_LIB}
               debug ${CMAKE_LIB}
               optimized ${CMAKE_LIB})

#
# Include Dart
# (will also set NSLOOKUP, HOSTNAME, etc.)
#
INCLUDE (${CMAKE_ROOT}/Modules/Dart.cmake)

#
# Extra coverage
#
BUILD_COMMAND(BUILD_COMMAND_VAR ${CMAKE_MAKE_PROGRAM})
BUILD_NAME(BUILD_NAME_VAR)
SITE_NAME(SITE_NAME_VAR)

#
# Enable testing
#
ENABLE_TESTING()

#
# Add test
#
ADD_EXECUTABLE(testing testing.cxx)
ADD_TEST(testing ${Testing_BINARY_DIR}/bin/testing)

#
# Force subdirs
# (coverage)
#
SUBDIRS(Sub)