annotate Resources/Orthanc/Resources/CMake/GoogleTestConfiguration.cmake @ 28:a75bb9af7384

sync
author Sebastien Jodogne <s.jodogne@gmail.com>
date Tue, 29 Nov 2016 13:28:06 +0100
parents b01d46e5a2b3
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
20
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1 if (USE_GTEST_DEBIAN_SOURCE_PACKAGE)
22
b01d46e5a2b3 support for sandboxed environments
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 20
diff changeset
2 find_path(GTEST_DEBIAN_SOURCES_DIR
b01d46e5a2b3 support for sandboxed environments
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 20
diff changeset
3 NAMES src/gtest-all.cc
b01d46e5a2b3 support for sandboxed environments
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 20
diff changeset
4 PATHS
b01d46e5a2b3 support for sandboxed environments
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 20
diff changeset
5 /usr/src/gtest
b01d46e5a2b3 support for sandboxed environments
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 20
diff changeset
6 /usr/src/googletest/googletest
b01d46e5a2b3 support for sandboxed environments
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 20
diff changeset
7 PATH_SUFFIXES src
b01d46e5a2b3 support for sandboxed environments
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 20
diff changeset
8 )
20
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
9
22
b01d46e5a2b3 support for sandboxed environments
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 20
diff changeset
10 find_path(GTEST_DEBIAN_INCLUDE_DIR
b01d46e5a2b3 support for sandboxed environments
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 20
diff changeset
11 NAMES gtest.h
b01d46e5a2b3 support for sandboxed environments
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 20
diff changeset
12 PATHS
b01d46e5a2b3 support for sandboxed environments
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 20
diff changeset
13 /usr/include/gtest
b01d46e5a2b3 support for sandboxed environments
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 20
diff changeset
14 )
b01d46e5a2b3 support for sandboxed environments
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 20
diff changeset
15
b01d46e5a2b3 support for sandboxed environments
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 20
diff changeset
16 message("Path to the Debian Google Test sources: ${GTEST_DEBIAN_SOURCES_DIR}")
b01d46e5a2b3 support for sandboxed environments
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 20
diff changeset
17 message("Path to the Debian Google Test includes: ${GTEST_DEBIAN_INCLUDE_DIR}")
b01d46e5a2b3 support for sandboxed environments
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 20
diff changeset
18
b01d46e5a2b3 support for sandboxed environments
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 20
diff changeset
19 set(GTEST_SOURCES ${GTEST_DEBIAN_SOURCES_DIR}/src/gtest-all.cc)
b01d46e5a2b3 support for sandboxed environments
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 20
diff changeset
20 include_directories(${GTEST_DEBIAN_SOURCES_DIR})
b01d46e5a2b3 support for sandboxed environments
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 20
diff changeset
21
b01d46e5a2b3 support for sandboxed environments
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 20
diff changeset
22 if (NOT EXISTS ${GTEST_SOURCES} OR
b01d46e5a2b3 support for sandboxed environments
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 20
diff changeset
23 NOT EXISTS ${GTEST_DEBIAN_INCLUDE_DIR}/gtest.h)
20
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
24 message(FATAL_ERROR "Please install the libgtest-dev package")
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
25 endif()
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
26
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
27 elseif (STATIC_BUILD OR NOT USE_SYSTEM_GOOGLE_TEST)
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
28 set(GTEST_SOURCES_DIR ${CMAKE_BINARY_DIR}/gtest-1.7.0)
28
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 22
diff changeset
29 set(GTEST_URL "http://www.orthanc-server.com/downloads/third-party/gtest-1.7.0.zip")
20
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
30 set(GTEST_MD5 "2d6ec8ccdf5c46b05ba54a9fd1d130d7")
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
31
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
32 DownloadPackage(${GTEST_MD5} ${GTEST_URL} "${GTEST_SOURCES_DIR}")
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
33
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
34 include_directories(
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
35 ${GTEST_SOURCES_DIR}/include
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
36 ${GTEST_SOURCES_DIR}
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
37 )
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
38
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
39 set(GTEST_SOURCES
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
40 ${GTEST_SOURCES_DIR}/src/gtest-all.cc
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
41 )
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
42
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
43 # https://code.google.com/p/googletest/issues/detail?id=412
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
44 if (MSVC) # VS2012 does not support tuples correctly yet
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
45 add_definitions(/D _VARIADIC_MAX=10)
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
46 endif()
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
47
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
48 source_group(ThirdParty\\GoogleTest REGULAR_EXPRESSION ${GTEST_SOURCES_DIR}/.*)
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
49
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
50 else()
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
51 include(FindGTest)
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
52 if (NOT GTEST_FOUND)
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
53 message(FATAL_ERROR "Unable to find GoogleTest")
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
54 endif()
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
55
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
56 include_directories(${GTEST_INCLUDE_DIRS})
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
57 link_libraries(${GTEST_LIBRARIES})
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
58 endif()