aboutsummaryrefslogtreecommitdiffstats
path: root/googlemock/README.md
diff options
context:
space:
mode:
authorGennadiy Civil <gennadiycivil@users.noreply.github.com>2017-08-21 13:11:58 -0400
committerGitHub <noreply@github.com>2017-08-21 13:11:58 -0400
commit96f7ba83cb225dd9152dcffe3104af093e66510a (patch)
tree0cf8937f69d91039df408576db9352d4f2c377d8 /googlemock/README.md
parentb74070cfd90c57b3ef2f80c8a50ca5f505a9e3aa (diff)
parent675686a139a731a2c796633e67e9421792363709 (diff)
downloadgoogletest-96f7ba83cb225dd9152dcffe3104af093e66510a.tar.gz
googletest-96f7ba83cb225dd9152dcffe3104af093e66510a.tar.bz2
googletest-96f7ba83cb225dd9152dcffe3104af093e66510a.zip
Merge branch 'master' into wrong-version-reported
Diffstat (limited to 'googlemock/README.md')
-rw-r--r--googlemock/README.md49
1 files changed, 41 insertions, 8 deletions
diff --git a/googlemock/README.md b/googlemock/README.md
index 3eb10cbb..f0ea6a0e 100644
--- a/googlemock/README.md
+++ b/googlemock/README.md
@@ -35,7 +35,7 @@ We hope you find it useful!
* Does automatic verification of expectations (no record-and-replay needed).
* Allows arbitrary (partial) ordering constraints on
function calls to be expressed,.
- * Lets a user extend it by defining new matchers and actions.
+ * Lets an user extend it by defining new matchers and actions.
* Does not use exceptions.
* Is easy to learn and use.
@@ -53,18 +53,18 @@ the Apache License, which is different from Google Mock's license.
If you are new to the project, we suggest that you read the user
documentation in the following order:
- * Learn the [basics](../../tree/master/googletest/docs/Primer.md) of
+ * Learn the [basics](../../master/googletest/docs/Primer.md) of
Google Test, if you choose to use Google Mock with it (recommended).
- * Read [Google Mock for Dummies](../../tree/master/googlemock/docs/ForDummies.md).
+ * Read [Google Mock for Dummies](../../master/googlemock/docs/ForDummies.md).
* Read the instructions below on how to build Google Mock.
You can also watch Zhanyong's [talk](http://www.youtube.com/watch?v=sYpCyLI47rM) on Google Mock's usage and implementation.
Once you understand the basics, check out the rest of the docs:
- * [CheatSheet](../../tree/master/googlemock/docs/CheatSheet.md) - all the commonly used stuff
+ * [CheatSheet](../../master/googlemock/docs/CheatSheet.md) - all the commonly used stuff
at a glance.
- * [CookBook](../../tree/master/googlemock/docs/CookBook.md) - recipes for getting things done,
+ * [CookBook](../../master/googlemock/docs/CookBook.md) - recipes for getting things done,
including advanced techniques.
If you need help, please check the
@@ -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) ####