42 Commits

Author SHA1 Message Date
misterg
7e9920053e Googletest export
Remove linked_ptr and use std::shared_ptr instead

PiperOrigin-RevId: 219129336
2018-10-29 13:46:16 -04:00
Abseil Team
63ad9ec911 Googletest export
Remove linked_ptr and use std::shared_ptr instead

PiperOrigin-RevId: 218618184
2018-10-26 14:19:59 -04:00
misterg
55c37984f7 Googletest export
Remove linked_ptr and use std::shared_ptr instead

PiperOrigin-RevId: 218571466
2018-10-26 14:19:51 -04:00
Abseil Team
dd4e36663c Unconditionally use std::tuple.
Remove all mention of TR1 tuple and our own implementation of tuple.

PiperOrigin-RevId: 216395043
2018-10-09 16:25:58 -04:00
Matthieu
962abd75d8 Merge c798e39a4f96f5a985126cc3fab4738b6412cfc1 into e93da23920e5b6887d6a6a291c3a59f83f5b579e
Closes #1836

PiperOrigin-RevId: 215461025
2018-10-02 17:41:16 -04:00
Arseny Aprelev
209346a223 Merge 2ce0685f76a4db403b7b2650433a584c150f2108 into 75e834700d19aa373b428c7c746f951737354c28
Closes #1544
With refinements and changes

PiperOrigin-RevId: 215273083
2018-10-02 13:03:28 -04:00
Dakota Hawkins
ddf15e952e Use $<INSTALL_PREFIX> in target_include_directories
To make sure packages are relocatable, use `$<INSTALL_PREFIX>` in
`$<INSTALL_INTERFACE:...>` `target_include_directories`.

`$<INSTALL_PREFIX>` was introduced in CMake 2.8.11, which is already
being checked for locally.

References:

- https://cmake.org/cmake/help/latest/manual/cmake-packages.7.html#id19
- https://github.com/robotology/how-to-export-cpp-library/blob/claudio/headeronly/src/LibTemplateCMake/CMakeLists.txt#L42

Signed-off-by: Dakota Hawkins <dakotahawkins@gmail.com>
2018-08-24 16:51:55 -04:00
Stefano Soffia
ec5d5478fe Install CMake export files
Rework of the closed pull request #768
2018-08-22 17:27:11 +02:00
Dakota Hawkins
70c7e06c00 Improve CMake exported targets.
I _think_ this represents some of the "best practices" for exporting
targets. They'll be available in a `googletest::` namespace (e.g.
`googletest::gmock`) with non-namespaced `ALIAS` targets.

- Added GOOGLETEST_VERSION variable
- Use `CMakePackageConfigHelpers`, bump minimum CMake version to 2.8.8

Signed-off-by: Dakota Hawkins <dakotahawkins@gmail.com>
2018-08-21 13:02:09 -04:00
Gennadiy Civil
0489d80590 Merge branch 'master' into cleanup-cmake 2018-08-15 13:02:54 -07:00
Elias Daler
5d4126e1c4 Change location of generated pkg-config files from CMAKE_BINARY_DIR to gmock/gtest_BINARY_DIR (#1717) 2018-08-13 23:01:09 +03:00
Gennadiy Civil
0bd8c5fab5 one more fix 2018-08-02 20:03:26 -07:00
Gennadiy Civil
1119f2f61d more fixes 2018-08-02 17:32:43 -04:00
Gennadiy Civil
3358c3e3ac add --no_stacktrace_support for json-output-unittest 2018-08-02 16:58:11 -04:00
Gennadiy Civil
b872114b29 cmake test fixes 2018-08-02 16:24:09 -04:00
Gennadiy Civil
9a8e1b1f34 cmake fixes 2018-08-02 16:01:00 -04:00
Gennadiy Civil
9f40fdb53e cmake tests changes 2018-08-02 15:45:23 -04:00
Gennadiy Civil
561597a454 cleaning up and adding test changes to CMake 2018-08-02 14:56:33 -04:00
Gennadiy Civil
43b887855f Corresponding CMake Changes 2018-08-01 17:25:56 -04:00
Derek Mauro
d7310cfa2c Pass the --no_stacktrace_support argument to the CMake tests
This does the same thing to the CMake tests that is done to the
Bazel tests, and now makes the CMake tests pass.
2018-07-10 15:39:23 -04:00
Henry Fredrick Schreiner
fd9d5d7b5b Clean up cache non-advanced variable for subproject 2018-04-05 13:40:26 +02:00
Gennadiy Civil
66a9a65a50 Merge branch 'master' into json 2018-02-28 14:39:17 -05:00
Petr Hosek
e95050f496 Support JSON output format in addition to XML
This change allows emitting output in JSON format in addition to the
already supported XML format. The implementation as well as the file
structure is intentionally modelled after the XML one.
2018-02-28 00:48:41 -08:00
David Neto
12243d083a Use DEBUG_POSTFIX instead of CMAKE_DEBUG_POSTFIX
CMAKE_DEBUG_POSTFIX is a global configuration parameter, and
changing it pollutes the configuration space for other projects
that enclose this project.

DEBUG_POSTFIX is better to use since it is a target-specific poperty.

Fixes #1334
Fixes #1268
2018-02-26 15:58:49 -05:00
Bryan Zimmerman
4136c40a6f remove implicit casts 2017-12-11 12:19:56 -05:00
bryanzim
0fb3f4c80b Merge branch 'master' into master 2017-12-11 09:37:55 -05:00
Gennadiy Civil
7b956df687 Merge branch 'master' into use-system-includes 2017-12-08 15:11:13 -05:00
bryanzim
5845063480 Merge branch 'master' into master 2017-12-08 11:31:31 -05:00
Wojciech Mamrak
e858bd6b7c Improved description of VS std::tuple support 2017-12-07 18:17:43 +01:00
Sam Lunt
332bd657f9 make includes system 2017-11-27 17:31:07 -06:00
Bryan Zimmerman
bb417ab41e fix for VS2017 deprecation of ::tr1::tuple
change static_cast to ImplicitCast_ for consitency
fixes for building with path names containing spaces
2017-10-27 14:01:16 -04:00
ly2048
9f2866e175 Add explicit CMAKE_DEBUG_POSTFIX option
Enable generating different library name to be compatible with CMake's `FindGTest`.
2017-09-14 13:22:04 +08:00
Herbert Thielen
1e82add36c remove obsolete link_directories command
It's not necessary, as the target_link_libraries command contains an
absolute path already, and the path given doesn't exist anymore,
leading only to linker warnings like:
ld: warning: directory not found for option
'-L/Users/travis/build/google/googletest/build/googlemock/gtest/src'
2017-09-05 12:01:14 +02:00
Henry Schreiner
3a31c6b4f4 Adding CMake visibility policy setting
This policy setting will silence a warning when using with a visibility settings on targets. Due to the forced `cmake_minimum_version`, policy settings in CMakeLists calling this one (including the main CMakeLists) are lost, forcing the change to be made here.
2017-08-18 15:18:58 -04:00
David Seifert
a3ab075319 Add support for pkgconfig 2017-08-14 13:45:56 +02:00
Gennadiy Civil
17af07aed9 Merge pull request #1160 from mwoehlke-kitware/honor-lib_suffix
Fix library install destinations
2017-08-11 09:14:49 -04:00
Matthew Woehlke
92b6ea3c94 Fix library install destinations
Modify library install destinations to install .dll's to the correct
location (`bin`, not `lib`), and to install other artifacts to the
correct platform-dependent location by using GNUInstallDirs. This is
required for some distributions (e.g. Fedora) and will fix an issue that
otherwise requires those distributions to patch the upstream sources.
Also, add options to suppress installation, which may be useful for
projects that embed Google Test.

Since Google Test is trying to support archaic versions of CMake, a
brain-dead fallback (which requires that the user set either LIB_SUFFIX
or CMAKE_INSTALL_LIBDIR themselves) is included for versions that
predate GNUInstallDirs.

Fixes #1161.

Co-Authored-By: d3x0r <d3x0r@users.noreply.github.com>
2017-08-09 15:29:36 -04:00
Craig Scott
5fc61b8c25 2.6.4 is the minimum CMake version, so enforce it (#656) 2016-12-17 19:15:04 -05:00
Craig Scott
ad1023eb63 Add include dirs to targets if CMake version supports it 2015-12-06 16:31:21 +11:00
Taylor Braun-Jones
4450609201 Add CMake install rules for gtest libraries and headers 2015-11-23 16:53:09 -05:00
Dominic Meiser
667b177753 Add an option to enable building with -fvisibility=hidden.
When this option is set gtest itself is built with -fvisibility=hidden
with gcc and clang.  This replicates MSVC's default behaviour with gcc
and clang.
2015-10-29 21:56:02 -06:00
Billy Donahue
1f87a0970d Move everything in googletest into googletest/googletest 2015-08-25 16:18:00 -04:00