66 строки
1.9 KiB
CMake
66 строки
1.9 KiB
CMake
#
|
|
# Find libgmock
|
|
#
|
|
# LIBGMOCK_DEFINES - List of defines when using libgmock.
|
|
# LIBGMOCK_INCLUDE_DIR - where to find gmock/gmock.h, etc.
|
|
# LIBGMOCK_LIBRARIES - List of libraries when using libgmock.
|
|
# LIBGMOCK_FOUND - True if libgmock found.
|
|
|
|
IF (LIBGMOCK_INCLUDE_DIR)
|
|
# Already in cache, be silent
|
|
SET(LIBGMOCK_FIND_QUIETLY TRUE)
|
|
ENDIF ()
|
|
|
|
FIND_PATH(LIBGMOCK_INCLUDE_DIR gmock/gmock.h)
|
|
|
|
FIND_LIBRARY(LIBGMOCK_MAIN_LIBRARY_DEBUG NAMES gmock_maind)
|
|
FIND_LIBRARY(LIBGMOCK_MAIN_LIBRARY_RELEASE NAMES gmock_main)
|
|
FIND_LIBRARY(LIBGMOCK_LIBRARY_DEBUG NAMES gmockd)
|
|
FIND_LIBRARY(LIBGMOCK_LIBRARY_RELEASE NAMES gmock)
|
|
FIND_LIBRARY(LIBGTEST_LIBRARY_DEBUG NAMES gtestd)
|
|
FIND_LIBRARY(LIBGTEST_LIBRARY_RELEASE NAMES gtest)
|
|
|
|
find_package(Threads REQUIRED)
|
|
INCLUDE(SelectLibraryConfigurations)
|
|
SELECT_LIBRARY_CONFIGURATIONS(LIBGMOCK_MAIN)
|
|
SELECT_LIBRARY_CONFIGURATIONS(LIBGMOCK)
|
|
SELECT_LIBRARY_CONFIGURATIONS(LIBGTEST)
|
|
|
|
set(LIBGMOCK_LIBRARIES
|
|
${LIBGMOCK_MAIN_LIBRARY}
|
|
${LIBGMOCK_LIBRARY}
|
|
${LIBGTEST_LIBRARY}
|
|
Threads::Threads
|
|
)
|
|
|
|
if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
|
|
# The GTEST_LINKED_AS_SHARED_LIBRARY macro must be set properly on Windows.
|
|
#
|
|
# There isn't currently an easy way to determine if a library was compiled as
|
|
# a shared library on Windows, so just assume we've been built against a
|
|
# shared build of gmock for now.
|
|
SET(LIBGMOCK_DEFINES "GTEST_LINKED_AS_SHARED_LIBRARY=1" CACHE STRING "")
|
|
endif()
|
|
|
|
# handle the QUIETLY and REQUIRED arguments and set LIBGMOCK_FOUND to TRUE if
|
|
# all listed variables are TRUE
|
|
INCLUDE(FindPackageHandleStandardArgs)
|
|
FIND_PACKAGE_HANDLE_STANDARD_ARGS(
|
|
GMock
|
|
DEFAULT_MSG
|
|
LIBGMOCK_MAIN_LIBRARY
|
|
LIBGMOCK_LIBRARY
|
|
LIBGTEST_LIBRARY
|
|
LIBGMOCK_LIBRARIES
|
|
LIBGMOCK_INCLUDE_DIR
|
|
)
|
|
|
|
MARK_AS_ADVANCED(
|
|
LIBGMOCK_DEFINES
|
|
LIBGMOCK_MAIN_LIBRARY
|
|
LIBGMOCK_LIBRARY
|
|
LIBGTEST_LIBRARY
|
|
LIBGMOCK_LIBRARIES
|
|
LIBGMOCK_INCLUDE_DIR
|
|
)
|