Commit Graph

63 Commits

Author SHA1 Message Date
Ayush Joshi
ca3ffd90f2 FIX #2174 -- remove DEBUG_POSTFIX
while this is not synced with the pkg-config file, it only breaks things

Fix #2174

Signed-off-by: Ayush Joshi <ayush854032@gmail.com>
2022-01-13 21:24:56 +05:30
Derek Mauro
c58f562fa2 Makes the Python imports consistently use full paths from the repository root,
unifying the behavior between Bazel and CMake

This fixes one of the CI failures on Windows

PiperOrigin-RevId: 417872531
Change-Id: I156989323b7e6d4a4420f4f9691b078829db933d
2021-12-22 13:01:24 -08:00
dmauro
f7902802f1 Googletest export
Remove -Werror from the CMake compiler flags

We should not force warnings as errors on users.
Sometimes compilers introduce new warnings which
will break builds.

Instead, we manually turn this flag on in our continuous integration
scripts so we can catch these errors, but not force them on our users.

Fixes #3447

PiperOrigin-RevId: 380241852
2021-06-22 13:30:21 +00:00
Dino Radaković
6c5c4554ac Merge pull request #3155 from ZedThree:cmake-alias-libraries
PiperOrigin-RevId: 365572439
2021-03-29 21:29:19 -07:00
Abseil Team
1a8ecf1813 Googletest export
Print std::u8string, std::u16string, and std::u32string as string literals

Previously, these types were printed as "{ U+123, U+456, U+789 }". However,
printed output in that form is difficult to compare against any literals that
might be defined in code. Instead, just treat these types like std::string
and std::wstring, escaping non-ASCII characters with a hexadecimal escape
sequence.

The tests have also been updated to cover the new functionality: as a bonus,
the tests now also pass with the MSVC toolchain.

Internally, the code has been reorganized to primarily operate in terms of
char32_t, under the assumption that char32_t will always be at least as big
as wchar_t. While that assumption is currently true, perhaps it won't be in
the future...

PiperOrigin-RevId: 364033132
2021-03-22 15:18:50 -04:00
Be
497db77a0a
remove -Zi from MSVC compiler options
This is incompatible with compiler caches such as sccache and
clcache. If a project including Google Test specifies /Z7 instead,
building fails with:

sccache C:\PROGRA~2\MICROS~1\2019\ENTERP~1\VC\Tools\MSVC\1428~1.293\bin\Hostx64\x64\cl.exe  /nologo /TP -D__SSE2__ -D__SSE__ -I..\lib\googletest-1.10.x\googlemock\include -I..\lib\googletest-1.10.x\googlemock -I..\lib\googletest-1.10.x\googletest\include -I..\lib\googletest-1.10.x\googletest /DWIN32 /D_WINDOWS /W4 /GR  /MD /Z7 /O2 /Ob1 /DNDEBUG -GS -W4 -WX -wd4251 -wd4275 -nologo -J -Zi -D_UNICODE -DUNICODE -DWIN32 -D_WIN32 -DSTRICT -DWIN32_LEAN_AND_MEAN -wd4702 -DGTEST_HAS_PTHREAD=0 -EHsc -D_HAS_EXCEPTIONS=1  /Gy /showIncludes /Folib\googletest-1.10.x\googlemock\CMakeFiles\gmock_main.dir\src\gmock-all.cc.obj /Fdbin\gmock_main.pdb /FS -c ..\lib\googletest-1.10.x\googlemock\src\gmock-all.cc
FAILED: lib/googletest-1.10.x/googlemock/CMakeFiles/gmock_main.dir/src/gmock-all.cc.obj
..\lib\googletest-1.10.x\googletest\src\gtest-all.cc: fatal error C1041: cannot open program database 'D:\a\mixxx\mixxx\build\bin\gmock_main.pdb'; if multiple CL.EXE write to the same .PDB file, please use /FS
cl : Command line warning D9025 : overriding '/Z7' with '/Zi'
2021-02-25 18:19:43 -06:00
Peter Hill
2292b6d856 CMake: Add namespaced ALIAS library
Fixes #3125
2020-12-04 17:21:19 +00:00
Gennadiy Rozental
60b8906d14 Merge pull request #3114 from marbre:FindPython
PiperOrigin-RevId: 342977338
2020-11-24 03:46:09 -05:00
dmauro
336fd36fee Googletest export
Rollback change from
https://github.com/google/googletest/pull/1836. This change generates
a script on Windows to actually run each test, but the script itself
doesn't correctly report if the test passed.

This change will "break tests" that were already broken on Windows,
but weren't being reported as such.

PiperOrigin-RevId: 341850671
2020-11-12 13:32:03 -05:00
Marius Brehler
826e9f25a1 Refactor finding python
Use `find_package(Python ..)` if available, instead of the deprecated
`find_package(PythonInterp)` CMake module.
2020-11-11 16:12:11 +01:00
Olivier Ldff
131878ce9e use target_compile_features to use c++11 if cmake > 3.8
If target_compile_features is available and cxx_std_11.
This fix compilation with clang and gcc when c++11 isn't specified by user.
2020-07-02 09:36:22 +02:00
Neal Gompa
3549237957 Ensure that gtest/gmock pkgconfig requirements specify version
Google Test and Google Mock require matching versions to work,
so this requirement should be described in the pkgconfig files.

This change is derived from the one used for the Fedora gtest package.

Signed-off-by: Neal Gompa <ngompa13@gmail.com>
2020-03-21 06:38:09 -04:00
Andy Getz
11440f27c6 Merge pull request #2556 from ienorand:avoid-pkg-config-lpthread-cflag
PiperOrigin-RevId: 279375858
2019-11-13 17:03:46 -05:00
Martin Erik Werner
6caa879a42 pkg-config: Remove pthread link flag from Cflags
Remove the threads link library variable references from the pkg-config
Cflags: field, removing -lpthread(s) from the compile flags.

"-l*" linker flags should only be part of the Libs: section and should
not be part of the Cflags: section in pkg-config files.

This was first suggested in
https://github.com/google/googletest/pull/2006 and further discussed in
https://github.com/google/googletest/pull/2483 .
2019-11-05 22:40:49 +01:00
David Seifert
5126ff48d9
Revert "Use pcfiledir for prefix in pkgconfig file"
The change makes implicit assumptions on the layout of the install
tree, which is going to break in many ways.

The correct solution is to use the `PKG_CONFIG_SYSROOT_DIR` variable
to inject the cross-compiled sysroot into `-I` and `-L` paths.
2019-10-05 15:58:45 +02:00
Matthias Walter
e580d99193 Setting CMP0054 policy to NEW. This allows to use the string "SHARED" without interpreting it as a variable. 2019-06-12 23:50:01 +02:00
Enji Cooper
3829b84e99 clang: fix -Wsign-conversion errors
Cast some values as their unsigned equivalents or `size_t` to match the
parameter type used for the template object under test. Also, provide
UInt32 equivalent delegate methods for some callers (with
int-equivalents for backwards compatibility).

This closes #2146.

Signed-off-by: Enji Cooper <yaneurabeya@gmail.com>
2019-04-05 21:30:19 -07:00
Gennadiy Civil
5ba69d5cb9 Merge pull request #2148 from ngie-eign:clang-add-explicit-c++11-rtti-flag
PiperOrigin-RevId: 242038269
2019-04-05 11:46:13 -04:00
Enji Cooper
7475ba5039 clang: explicitly enable/disable RTTI support with the compiler
Add `-frtti` to the compiler with the base flags case so that RTTI is
enabled by default with clang. Add its inverse analog,
`cxx_no_rtti_flags` in order to test the case with RTTI off, similar to
gcc.

This reduces the amount of testing/support overhead needed in the
non-RTTI case with clang, as the tests currently fail when these two
features are off with version 1.8.1. This something I used in when
investigating test failures on FreeBSD, as the tests that rely on
RTTI were failing with googletest 1.8.1 on the OS platform.

More investigation is being done to determine how this should be fixed
on FreeBSD 11.2-RELEASE with ports, as the package doesn't currently
compile the tests, and when enabled (based on my WIP diff), the tests
fail in similar ways.

Signed-off-by: Enji Cooper <yaneurabeya@gmail.com>
2019-04-03 21:09:20 -07:00
Gennadiy Civil
b6473fcf90 Merge pull request #2126 from ngie-eign:clang-add-more-strict-warnings
PiperOrigin-RevId: 235220570
2019-02-22 16:18:28 -05:00
Enji Cooper
fcf59ca7bf Ignore -Wsign-conversion issues
clang++ compilation when `-Wsign-conversion` is currently broken and the
issues within the code are varied and widespread. For the time being
ignore `-Wsign-conversion` issues, even though some of them are valid
and bleed over into issues that would be found with
`-Wtautological-compare`, et al.

Signed-off-by: Enji Cooper <yaneurabeya@gmail.com>
2019-02-18 19:19:34 -08:00
Enji Cooper
a4af76cf8c Add cxx_strict_flags for clang to match FreeBSD's WARNS flags
Signed-off-by: Enji Cooper <yaneurabeya@gmail.com>
2019-02-13 14:38:49 -08:00
Gennadiy Civil
f73b2fb39e Merge pull request #2114 from knuto:pr/libtool_support
PiperOrigin-RevId: 233773676
2019-02-13 14:07:26 -05:00
Enji Cooper
1ded83195d Compile clang with -Wall -Wshadow -Werror
It was not compiling any of the code with warnings prior to this.

Signed-off-by: Enji Cooper <yaneurabeya@gmail.com>
2019-02-12 16:45:40 -08:00
Knut Omang
f4d3cdb657 Generate a libgtest.la to help libtool managing dependencies
When building and using googletest from an install tree
we want libtool to generate rpath in the dependent binaries
to allow them to be executed from a build without a need
for LD_LIBRARY_PATH or similar.

For libtool based project this happens automatically
as projects generates .la files and install them.
Provide such a file for gtest as well to allow it to
work smoothly with libtool based projects.

Signed-off-by: Knut Omang <knut.omang@oracle.com>
2019-02-11 20:17:34 +01:00
Hugo Lindström
718bb65acf Avoid dynamic/static runtime linking (LNK4098) by properly replacing MD(d)->MT(d) in both C and CXX flags, resolves 2074 2019-01-28 21:07:41 +01:00
misterg
81f0026066 Googletest export
Internal Change

PiperOrigin-RevId: 225231727
2018-12-13 16:00:11 -05:00
Lukas Mosimann
ce526b8700 Issue #1955: Remove THREADS_PREFER_PTHREAD_FLAG 2018-11-22 08:19:56 +01:00
misterg
b492666068 Googletest export
Internal Change

PiperOrigin-RevId: 222123106
2018-11-20 13:29:55 -05:00
Robin Lindén
4802133690
Add back warning suppression that shouldn't have been removed 2018-11-10 16:14:19 +01:00
Robin Lindén
826656b25f
Remove workarounds for unsupported MSVC versions 2018-11-10 15:20:26 +01:00
Gennadiy Civil
754cb8ed96
Merge branch 'master' into relocatable-pkgconfig-fix 2018-10-12 12:44:33 -04:00
David Neto
ad997b16b5 Merge 4c92120d6dedb4eeb499a8702faea0224e0a8b23 into 658c6390a5
Closes #1893

PiperOrigin-RevId: 216712426
2018-10-11 12:52:55 -04:00
Filipp Andjelo
095b3113e7 Use pcfiledir for prefix in pkgconfig file
Using absolute paths in the pkg-config file makes it not relocatable and
leads to problems, when trying to use it with precompiled cross
toolchains. Setting prefix to relative path based on pcfiledir makes it
more reliable for such cases.
2018-10-11 14:09:57 +02:00
Abseil Team
7d3b73c85a 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
f5260ae757 Merge c798e39a4f96f5a985126cc3fab4738b6412cfc1 into e93da23920
Closes #1836

PiperOrigin-RevId: 215461025
2018-10-02 17:41:16 -04:00
Jacob Schloss
6de39826aa
Merge branch 'master' into issue_1735 2018-08-22 12:55:43 -07:00
Jacob Schloss
6e79801645 It seems like CMAKE_CXX_FLAGS is getting double appended when building as a nested cmake project,
which breaks my build as gcc does not allow -specs=nosys.specs to be called multiple times.

Removing this fixes it and seems to keep the same compile options, just removing the duplicate definition.
2018-08-22 11:17:32 -07:00
Stefano Soffia
aff0379441 Install CMake export files
Rework of the closed pull request #768
2018-08-22 17:27:11 +02:00
Gennadiy Civil
a9bd428e72
Merge branch 'master' into fix-msvc-d9025-warning 2018-08-17 11:48:56 -04:00
Gennadiy Civil
11f5a2740a
Merge branch 'master' into cross-testing-patch-1 2018-08-08 12:19:04 -07:00
Piotr Kąkol
309e8a271e Updated broken and outdated URLs 2018-07-25 19:19:26 +02:00
Wojciech Kaluza
421e7b4f29 Remove default /EHsc compiler flag
This prevents warning D9025 (one command-line option overrides
another) on MSVC builds: some test targets are built with
the /EHs-c- which conflicts with /EHsc.
2018-07-11 22:54:05 +01:00
Derek Mauro
d772e2039b 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
Gennadiy Civil
66d71756a7
Merge branch 'master' into debug-postfix 2018-02-28 08:43:57 -05:00
Gennadiy Civil
d4f77c1e3a
Merge branch 'master' into win-libcxx2 2018-02-27 10:00:29 -05:00
David Neto
20074be19a 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
Stefano Soffia
b8ac390a57 Fix test build issue with GCC7.2. 2018-01-25 23:19:57 +01:00
Peter Collingbourne
f915530791 Pass -EHs-c- to disable exceptions with MSVC. 2018-01-25 14:15:43 -08:00
Arkadiy Shapkin
2641b021fc Fix tests with VS2015 and VS2017 2017-10-25 16:04:01 +03:00