Mercurial > hg > orthanc-stone
annotate CMakeLists.txt @ 20:946377d1c992
skeleton for unit tests
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Thu, 17 Nov 2016 14:19:00 +0100 |
parents | b8100f56d513 |
children | 20f623762e8e |
rev | line source |
---|---|
0 | 1 cmake_minimum_required(VERSION 2.8) |
2 project(OrthancStone) | |
3 | |
6 | 4 |
5 ##################################################################### | |
6 ## Build a static library containing the Orthanc Stone framework | |
7 ##################################################################### | |
0 | 8 |
6 | 9 include(Resources/CMake/OrthancStone.cmake) |
2 | 10 add_library(OrthancStone STATIC ${ORTHANC_STONE_SOURCES}) |
0 | 11 |
6 | 12 |
13 ##################################################################### | |
20
946377d1c992
skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
6
diff
changeset
|
14 ## CMake parameters for Google Test |
946377d1c992
skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
6
diff
changeset
|
15 ##################################################################### |
946377d1c992
skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
6
diff
changeset
|
16 |
946377d1c992
skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
6
diff
changeset
|
17 SET(USE_SYSTEM_GOOGLE_TEST ON CACHE BOOL "Use the system version of Google Test") |
946377d1c992
skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
6
diff
changeset
|
18 SET(USE_GTEST_DEBIAN_SOURCE_PACKAGE OFF CACHE BOOL "Use the sources of Google Test shipped with libgtest-dev (Debian only)") |
946377d1c992
skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
6
diff
changeset
|
19 |
946377d1c992
skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
6
diff
changeset
|
20 include(${ORTHANC_ROOT}/Resources/CMake/GoogleTestConfiguration.cmake) |
946377d1c992
skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
6
diff
changeset
|
21 |
946377d1c992
skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
6
diff
changeset
|
22 |
946377d1c992
skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
6
diff
changeset
|
23 ##################################################################### |
6 | 24 ## Build all the sample applications |
25 ##################################################################### | |
26 | |
0 | 27 macro(BuildSample Target Sample) |
28 add_executable(${Target} Samples/SampleMainSdl.cpp) | |
29 set_target_properties(${Target} PROPERTIES COMPILE_DEFINITIONS ORTHANC_STONE_SAMPLE=${Sample}) | |
30 target_link_libraries(${Target} OrthancStone) | |
31 endmacro() | |
32 | |
33 BuildSample(OrthancStoneEmpty 1) | |
34 BuildSample(OrthancStoneTestPattern 2) | |
35 BuildSample(OrthancStoneSingleFrame 3) | |
36 BuildSample(OrthancStoneSingleVolume 4) | |
37 BuildSample(OrthancStoneBasicPetCtFusion 5) | |
38 BuildSample(OrthancStoneSynchronizedSeries 6) | |
39 BuildSample(OrthancStoneLayoutPetCtFusion 7) | |
6 | 40 |
41 | |
42 ##################################################################### | |
20
946377d1c992
skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
6
diff
changeset
|
43 ## Build the unit tests |
946377d1c992
skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
6
diff
changeset
|
44 ##################################################################### |
946377d1c992
skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
6
diff
changeset
|
45 |
946377d1c992
skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
6
diff
changeset
|
46 add_executable(UnitTests |
946377d1c992
skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
6
diff
changeset
|
47 ${GTEST_SOURCES} |
946377d1c992
skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
6
diff
changeset
|
48 UnitTestsSources/UnitTestsMain.cpp |
946377d1c992
skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
6
diff
changeset
|
49 ) |
946377d1c992
skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
6
diff
changeset
|
50 |
946377d1c992
skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
6
diff
changeset
|
51 target_link_libraries(UnitTests OrthancStone) |
946377d1c992
skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
6
diff
changeset
|
52 |
946377d1c992
skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
6
diff
changeset
|
53 |
946377d1c992
skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
6
diff
changeset
|
54 ##################################################################### |
6 | 55 ## Generate the documentation if Doxygen is present |
56 ##################################################################### | |
57 | |
58 find_package(Doxygen) | |
59 if (DOXYGEN_FOUND) | |
60 configure_file( | |
61 ${ORTHANC_STONE_DIR}/Resources/OrthancStone.doxygen | |
62 ${CMAKE_CURRENT_BINARY_DIR}/OrthancStone.doxygen | |
63 @ONLY) | |
64 | |
65 add_custom_target(doc | |
66 ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/OrthancStone.doxygen | |
67 COMMENT "Generating documentation with Doxygen" VERBATIM | |
68 ) | |
69 else() | |
70 message("Doxygen not found. The documentation will not be built.") | |
71 endif() |