mirror of
https://github.com/google/googletest.git
synced 2025-01-14 08:27:56 +08:00
Merge pull request #1042 from danilcha/patch-1
Added description of how to silence clang pedantic warnings in Google Mock includes
This commit is contained in:
commit
28bb854cef
@ -125,13 +125,46 @@ build Google Mock and its tests, which has further requirements:
|
||||
|
||||
### Building Google Mock ###
|
||||
|
||||
#### Using CMake ####
|
||||
|
||||
If you have CMake available, it is recommended that you follow the
|
||||
[build instructions][gtest_cmakebuild]
|
||||
as described for Google Test. If are using Google Mock with an
|
||||
as described for Google Test.
|
||||
|
||||
If are using Google Mock with an
|
||||
existing CMake project, the section
|
||||
[Incorporating Into An Existing CMake Project][gtest_incorpcmake]
|
||||
may be of particular interest. Otherwise, the following sections
|
||||
detail how to build Google Mock without CMake.
|
||||
may be of particular interest.
|
||||
To make it work for Google Mock you will need to change
|
||||
|
||||
target_link_libraries(example gtest_main)
|
||||
|
||||
to
|
||||
|
||||
target_link_libraries(example gmock_main)
|
||||
|
||||
This works because `gmock_main` library is compiled with Google Test.
|
||||
However, it does not automatically add Google Test includes.
|
||||
Therefore you will also have to change
|
||||
|
||||
if (CMAKE_VERSION VERSION_LESS 2.8.11)
|
||||
include_directories("${gtest_SOURCE_DIR}/include")
|
||||
endif()
|
||||
|
||||
to
|
||||
|
||||
if (CMAKE_VERSION VERSION_LESS 2.8.11)
|
||||
include_directories(BEFORE SYSTEM
|
||||
"${gtest_SOURCE_DIR}/include" "${gmock_SOURCE_DIR}/include")
|
||||
else()
|
||||
target_include_directories(gmock_main SYSTEM BEFORE INTERFACE
|
||||
"${gtest_SOURCE_DIR}/include" "${gmock_SOURCE_DIR}/include")
|
||||
endif()
|
||||
|
||||
This will addtionally mark Google Mock includes as system, which will
|
||||
silence compiler warnings when compiling your tests using clang with
|
||||
`-Wpedantic -Wall -Wextra -Wconversion`.
|
||||
|
||||
|
||||
#### Preparing to Build (Unix only) ####
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user