[Bug]: container test_allocator should be skipped if testing is disabled
Describe the issue
If testing is disabled, I would expect all dependencies on googletest to be removed. However, the internal test_allocator target inside of the container directory still gets created, which expects the GTest::gmock target to exist. As a result, if googletest isn't available, a CMake error will be raised due to the gmock target not existing.
Steps to reproduce the problem
Run CMake with testing disabled on a system without googletest installed.
What version of Abseil are you using?
20240116 (as part of protobuf)
What operating system and version are you using?
Windows 10
What compiler and version are you using?
Microsoft (R) C/C++ Optimizing Compiler Version 19.40.33812 for x86
What build system are you using?
cmake version 3.30.0
Additional context
No response
I'm seeing the same thing. I suspect that a change in a recent version of cmake (possibly 3.30.0) as identical code built with earlier versions of CMake isn't failing.
It seems that the problem is fixed in the main branch, c.f. these issues: https://github.com/open-telemetry/opentelemetry-cpp/issues/2998 https://github.com/abseil/abseil-cpp/pull/1536
Alternatively, commenting out line 215 "GTest::gmock" in absl/container/CMakeLists.txt works.
see #1536
Alternatively, commenting out line 215 "GTest::gmock" in absl/container/CMakeLists.txt works.
Thanks
It looks like this has been fixed.