"platforms/cuda/src/CudaForceInfo.h" did not exist on "099b8e55d6548b4199d7ab82b08325317dfb7e5b"
CMakeLists.txt 3.29 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
# Generate and install examples.
#
# This is boilerplate code for generating a set of executables, one per
# .cpp file in an "examples" subdirectory. 
#
# For IDEs that can deal with PROJECT_LABEL properties (at least
# Visual Studio) the projects for building each of these adhoc
# executables will be labeled "Example - TheExampleName" if a file
# TheExampleName.cpp is found in this directory.
#
# We check the BUILD_TESTING_{SHARED,STATIC} variables to determine
# whether to build dynamically linked, statically linked, or both
# versions of the executable.

Michael Sherman's avatar
Michael Sherman committed
15

16
17
SET(OpenMM_CWRAPPER "OpenMM_CWrapper")
SET(OpenMM_FMODULE  "OpenMM_Module")
Michael Sherman's avatar
Michael Sherman committed
18

19
20
21
SET(CPP_EXAMPLES HelloArgon HelloSodiumChloride HelloEthane HelloWaterBox)
SET(C_EXAMPLES HelloArgonInC HelloSodiumChlorideInC)
SET(F_EXAMPLES HelloArgonInFortran HelloSodiumChlorideInFortran)
Michael Sherman's avatar
Michael Sherman committed
22

23
24
25
SET(BUILD_TESTING_SHARED 1)
SET(BUILD_TESTING_STATIC 1)

26
FOREACH(EX_ROOT ${CPP_EXAMPLES})
27
28
    IF (BUILD_TESTING_SHARED)
        # Link with shared library
29
        ADD_EXECUTABLE(${EX_ROOT} ${EX_ROOT}.cpp)
30
31
32
33
34
35
36
37
38
        SET_TARGET_PROPERTIES(${EX_ROOT}
		PROPERTIES
	      PROJECT_LABEL "Example - ${EX_ROOT}")
        TARGET_LINK_LIBRARIES(${EX_ROOT} ${SHARED_TARGET})
    ENDIF (BUILD_TESTING_SHARED)

    IF (BUILD_TESTING_STATIC)
        # Link with static library
        SET(EX_STATIC ${EX_ROOT}Static)
39
        ADD_EXECUTABLE(${EX_STATIC} ${EX_ROOT}.cpp)
40
41
42
43
44
45
46
        SET_TARGET_PROPERTIES(${EX_STATIC}
		PROPERTIES
		COMPILE_FLAGS "-DOPENMM_USE_STATIC_LIBRARIES"
		PROJECT_LABEL "Example - ${EX_STATIC}")
        TARGET_LINK_LIBRARIES(${EX_STATIC} ${STATIC_TARGET})
    ENDIF (BUILD_TESTING_STATIC)

47
    INSTALL(FILES ${EX_ROOT}.cpp DESTINATION examples)
48

49
ENDFOREACH(EX_ROOT ${CPP_EXAMPLES})
Michael Sherman's avatar
Michael Sherman committed
50

51
FOREACH(EX_ROOT ${C_EXAMPLES})
Michael Sherman's avatar
Michael Sherman committed
52
53
    IF (BUILD_TESTING_SHARED)
        # Link with shared library
54
        ADD_EXECUTABLE(${EX_ROOT} ${EX_ROOT}.c ${OpenMM_CWRAPPER}.cpp)
Michael Sherman's avatar
Michael Sherman committed
55
56
57
        SET_TARGET_PROPERTIES(${EX_ROOT}
		PROPERTIES
	      PROJECT_LABEL "Example C - ${EX_ROOT}")
58
        TARGET_LINK_LIBRARIES(${EX_ROOT} ${SHARED_TARGET})
Michael Sherman's avatar
Michael Sherman committed
59
60
    ENDIF (BUILD_TESTING_SHARED)

61
62
63
64
65
66
67
68
69
70
71
72
73
    IF (BUILD_TESTING_STATIC)
        # Link with static library
        SET(EX_STATIC ${EX_ROOT}Static)
        ADD_EXECUTABLE(${EX_STATIC} ${EX_ROOT}.c ${OpenMM_CWRAPPER}.cpp)
        SET_TARGET_PROPERTIES(${EX_STATIC}
		PROPERTIES
		COMPILE_FLAGS "-DOPENMM_USE_STATIC_LIBRARIES"
		PROJECT_LABEL "Example C - ${EX_STATIC}")
        TARGET_LINK_LIBRARIES(${EX_STATIC} ${STATIC_TARGET})
    ENDIF (BUILD_TESTING_STATIC)

    INSTALL(FILES ${EX_ROOT}.c DESTINATION examples)

74
ENDFOREACH(EX_ROOT ${C_EXAMPLES})
Michael Sherman's avatar
Michael Sherman committed
75

76
77
FOREACH(EX_ROOT ${F_EXAMPLES})
    INSTALL(FILES ${EX_ROOT}.f90 DESTINATION examples)
78
ENDFOREACH(EX_ROOT ${F_EXAMPLES})
Michael Sherman's avatar
Michael Sherman committed
79

80
81
INSTALL(FILES ${OpenMM_CWRAPPER}.h ${OpenMM_CWRAPPER}.cpp DESTINATION examples)
INSTALL(FILES ${OpenMM_FMODULE}.f90 DESTINATION examples)
Michael Sherman's avatar
Michael Sherman committed
82

83
84
INSTALL(FILES README.txt DESTINATION examples)
INSTALL(FILES Makefile DESTINATION examples)
85
86
87
88
89
90
91

INSTALL(FILES HelloArgonVS8/HelloArgon.vcproj 
		      HelloArgonVS8/HelloArgon.sln 
	    DESTINATION examples/VisualStudio2005)
INSTALL(FILES HelloArgonInCVS8/HelloArgonInC.vcproj 
		      HelloArgonInCVS8/HelloArgonInC.sln 
	    DESTINATION examples/VisualStudio2005)
92
93
INSTALL(FILES HelloOpenMM.ppt 
        DESTINATION examples)