Mercurial > hg > orthanc-stone
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 |
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 | 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() |