CMakeLists.txt 2.56 KB
Newer Older
Mark Friedrichs's avatar
Mods  
Mark Friedrichs committed
1
2
#
# Testing
Mark Friedrichs's avatar
Mark Friedrichs committed
3
4
5
6
#

ENABLE_TESTING()

Mark Friedrichs's avatar
Update  
Mark Friedrichs committed
7
# ----------------------------------------------------------------------------
Mark Friedrichs's avatar
Mods  
Mark Friedrichs committed
8
   
Mark Friedrichs's avatar
Update  
Mark Friedrichs committed
9
# logging
Mark Friedrichs's avatar
Mark Friedrichs committed
10

Mark Friedrichs's avatar
Update  
Mark Friedrichs committed
11
SET(LOG TRUE)
Mark Friedrichs's avatar
Mods  
Mark Friedrichs committed
12
   
Mark Friedrichs's avatar
Update  
Mark Friedrichs committed
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
IF(LOG)
   SET(LOG_FILE "CMakeLog.txt" )
   FILE( WRITE ${LOG_FILE} "In Brook Test Cmake\n")
#  FILE( APPEND ${LOG_FILE} "BROOK_LIB_PATH=${BROOK_LIB_PATH}\n")
ENDIF(LOG)

# ----------------------------------------------------------------------------

INCLUDE(${CMAKE_CURRENT_SOURCE_DIR}/../brook-cmake/FindBrook.cmake)

SET(BROOK_LIB brook)
  
SET(OpenMM_BROOK_LIBRARY_NAME OpenMM_Brook)
  
SET(SHARED_BROOK_TARGET ${OpenMM_BROOK_LIBRARY_NAME})
SET(STATIC_BROOK_TARGET ${OpenMM_BROOK_LIBRARY_NAME}_static)

Mark Friedrichs's avatar
Mark Friedrichs committed
30
31
# Automatically create tests using files named "Test*.cpp"
FILE(GLOB TEST_PROGS "*Test*.cpp")
Mark Friedrichs's avatar
Mods  
Mark Friedrichs committed
32

Mark Friedrichs's avatar
Mark Friedrichs committed
33
FOREACH(TEST_PROG ${TEST_PROGS})
Mark Friedrichs's avatar
Mods  
Mark Friedrichs committed
34

Mark Friedrichs's avatar
Mods  
Mark Friedrichs committed
35
    GET_FILENAME_COMPONENT(TEST_ROOT ${TEST_PROG} NAME_WE)
Mark Friedrichs's avatar
Mark Friedrichs committed
36

Mark Friedrichs's avatar
Mods  
Mark Friedrichs committed
37
38
39
40
41
42
43
44
45
46
47
   # Link with shared library

   ADD_EXECUTABLE(${TEST_ROOT} ${TEST_PROG})
   TARGET_LINK_LIBRARIES(${TEST_ROOT} ${SHARED_TARGET})
   #ADD_TEST(${TEST_ROOT} ${EXECUTABLE_OUTPUT_PATH}/${TEST_ROOT})

   # ----------------------------------------------------------------------------
   IF(LOG)
      FILE( APPEND ${LOG_FILE} "TARGET_LINK_LIBRARIES: ${TEST_PROG} TARGET=${SHARED_TARGET} BROOK_TARGET=${ROOK_TARGET} BROOK_LIB=${BROOK_LIB}\n")
   ENDIF(LOG)
   # ----------------------------------------------------------------------------
Mark Friedrichs's avatar
Update  
Mark Friedrichs committed
48

Mark Friedrichs's avatar
Mods  
Mark Friedrichs committed
49
   SET( CMAKE_EXE_LINKER_FLAGS            "/NODEFAULTLIB:\"LIBCMT.lib\"")
Mark Friedrichs's avatar
Mods  
Mark Friedrichs committed
50
   SET( CMAKE_EXE_LINKER_FLAGS_DEBUG      "/NODEFAULTLIB:\"LIBCMTD.lib\"")
Mark Friedrichs's avatar
Update  
Mark Friedrichs committed
51

Mark Friedrichs's avatar
Mods  
Mark Friedrichs committed
52
   ADD_DEFINITIONS( -D_WIN32 )
Mark Friedrichs's avatar
Mark Friedrichs committed
53

Mark Friedrichs's avatar
Mods  
Mark Friedrichs committed
54
    # Link with static library
Mark Friedrichs's avatar
Mods  
Mark Friedrichs committed
55

Mark Friedrichs's avatar
Mods  
Mark Friedrichs committed
56
57
58
59
60
61
    SET(TEST_STATIC ${TEST_ROOT}Static)
    ADD_EXECUTABLE(${TEST_STATIC} ${TEST_PROG})
#   SET_TARGET_PROPERTIES(${TEST_STATIC}
#                PROPERTIES
#                COMPILE_FLAGS "-DOPENMM_USE_STATIC_LIBRARIES"
#                )
Mark Friedrichs's avatar
Mods  
Mark Friedrichs committed
62

Mark Friedrichs's avatar
Mods  
Mark Friedrichs committed
63
64
   TARGET_LINK_LIBRARIES(${TEST_STATIC} ${STATIC_TARGET} ${STATIC_BROOK_TARGET} ${BROOK_LIB})
   # ADD_TEST(${TEST_STATIC} ${EXECUTABLE_OUTPUT_PATH}/${TEST_STATIC})
Mark Friedrichs's avatar
Update  
Mark Friedrichs committed
65
66
67
68
69
70

   # ----------------------------------------------------------------------------
   IF(LOG)
      FILE( APPEND ${LOG_FILE} "TARGET_LINK_LIBRARIES: ${TEST_STATIC} STATIC_TARGET=${STATIC_TARGET} STATIC_BROOK_TARGET=${STATIC_BROOK_TARGET} BROOK_LIB=${BROOK_LIB}\n")
   ENDIF(LOG)
   # ----------------------------------------------------------------------------
Mark Friedrichs's avatar
Mark Friedrichs committed
71

Mark Friedrichs's avatar
Mods  
Mark Friedrichs committed
72
#  ADD_TEST(${TEST_STATIC} ${EXECUTABLE_OUTPUT_PATH}/${TEST_STATIC})
Mark Friedrichs's avatar
Mark Friedrichs committed
73
74
75

ENDFOREACH(TEST_PROG ${TEST_PROGS})

Mark Friedrichs's avatar
Update  
Mark Friedrichs committed
76
77
78
79
80
81
# ----------------------------------------------------------------------------

IF(LOG)
   FILE( APPEND ${LOG_FILE} "Leaving Brook Test Cmake\n")
ENDIF(LOG)