1- # Locate UNITTEST
1+ # Locate UnitTest++
22# This module defines
3- # UNITTEST++_LIBRARY
4- # UNITTEST++_FOUND, if false, do not try to link to gdal
5- # UNITTEST++_INCLUDE_DIR, where to find the headers
6-
7- FIND_PATH (UNITTEST++_INCLUDE_DIR UnitTest++.h
8- ${UNITTEST_DIR} /include /unittest++
9- $ENV{UNITTEST_DIR} /include /unittest++
10- $ENV{UNITTEST_DIR} /src
3+ # UnitTest++_FOUND, if successful
4+ # UnitTest++_LIBRARIES, the library path
5+ # UnitTest++_INCLUDE_DIRS, where to find the headers
6+
7+ find_package (PkgConfig QUIET )
8+ if (PKG_CONFIG_FOUND)
9+ pkg_check_modules(PC_UnitTest QUIET UnitTest++)
10+ set (UnitTest++_VERSION ${PC_UnitTest_VERSION} )
11+ endif ()
12+
13+
14+ FIND_PATH (UnitTest++_INCLUDE_DIRS UnitTest++.h
15+ DOC
16+ "Location of UnitTest++ header files"
17+ PATH_SUFFIXES
18+ unittest++
19+ UnitTest++ # Fedora, Arch
20+ unittest-cpp # openSUSE
21+ HINTS
22+ ${PC_UnitTest++_INCLUDEDIR}
23+ ${PC_UnitTest++_INCLUDE_DIRS}
24+ PATHS
25+ ${UnitTest++_ROOT}
26+ ${UNITTEST_DIR}
27+ $ENV{UNITTEST_DIR} /src
1128 $ENV{UNITTEST_DIR}
1229 ~/Library/Frameworks
1330 /Library/Frameworks
14- /usr/local/include
15- /usr/include
16- /usr/include /unittest++
17- /usr/include /UnitTest++ # Fedora
18- /usr/include /unittest-cpp # openSUSE
19- /usr/local/include /UnitTest++/ # Arch
20- /sw/include # Fink
21- /opt/local/include # DarwinPorts
22- /opt/local/include /UnitTest++
23- /opt/csw/include # Blastwave
24- /opt/include
31+ /usr/local
32+ /sw # Fink
33+ /opt
34+ /opt/local # DarwinPorts
35+ /opt/csw # Blastwave
2536 [HKEY_LOCAL_MACHINE\\SYSTEM \\CurrentControlSet\\Control\\Session\ Manager\\Environment ]/include
26- /usr/freeware/ include
37+ /usr/freeware
2738)
2839
29- FIND_LIBRARY (UNITTEST++_LIBRARY
30- NAMES unittest++ UnitTest++
31- PATHS
32- ${UNITTEST_DIR} /lib
33- $ENV{UNITTEST_DIR} /lib
34- $ENV{UNITTEST_DIR} /build
40+ FIND_LIBRARY (UnitTest++_LIBRARIES
41+ NAMES unittest++ UnitTest++
42+ DOC
43+ "Location of UnitTest++ shared library"
44+ HINTS
45+ ${PC_UnitTest++_LIBDIR}
46+ ${PC_UnitTest++_LIBRARY_DIRS}
47+ PATHS
48+ ${UnitTest++_ROOT}
49+ ${UnitTest++_ROOT}/lib
50+ ${UNITTEST_DIR}
3551 $ENV{UNITTEST_DIR}
52+ $ENV{UNITTEST_DIR} /lib
53+ $ENV{UNITTEST_DIR} /build
3654 ~/Library/Frameworks
3755 /Library/Frameworks
3856 /usr/local/lib
39- /usr/lib
40- /usr/lib64/ # Fedora
4157 /sw/lib
4258 /opt/local/lib
4359 /opt/csw/lib
@@ -46,13 +62,24 @@ FIND_LIBRARY(UNITTEST++_LIBRARY
4662 /usr/freeware/lib64
4763)
4864
49- SET (UNITTEST++_FOUND "NO" )
50- IF (UNITTEST++_LIBRARY AND UNITTEST++_INCLUDE_DIR)
51- SET (UNITTEST++_FOUND "YES" )
52- ENDIF (UNITTEST++_LIBRARY AND UNITTEST++_INCLUDE_DIR)
65+ if (UnitTest++_LIBRARIES AND UnitTest++_INCLUDE_DIRS)
66+ set (UnitTest++_FOUND TRUE )
67+ endif ()
5368
5469include (FindPackageHandleStandardArgs)
55- # handle the QUIETLY and REQUIRED arguments and set UNITTEST++_FOUND to TRUE
56- # if all listed variables are TRUE
57- find_package_handle_standard_args(UNITTEST++ DEFAULT_MSG
58- UNITTEST++_LIBRARY UNITTEST++_INCLUDE_DIR)
70+ find_package_handle_standard_args(UnitTest++
71+ REQUIRED_VARS
72+ UnitTest++_LIBRARIES
73+ UnitTest++_INCLUDE_DIRS
74+ VERSION_VAR
75+ UnitTest++_VERSION
76+ )
77+
78+ # Excessive backwards-compatibility paranoia
79+ set (UnitTest++_LIBRARY "${UnitTest++_LIBRARIES}" PARENT_SCOPE)
80+ set (UnitTest++_INCLUDE_DIR "${UnitTest++_INCLUDE_DIRS}" PARENT_SCOPE)
81+ # Even more excessive backwards-compatibility paranoia
82+ set (UNITTEST++_FOUND "${UnitTest++_FOUND}" PARENT_SCOPE)
83+ set (UNITTEST++_LIBRARY "${UnitTest++_LIBRARIES}" PARENT_SCOPE)
84+ set (UNITTEST++_INCLUDE_DIR "${UnitTest++_INCLUDE_DIRS}" PARENT_SCOPE)
85+
0 commit comments