@Mizux, this problem is not exhibited in Cartographer master. Cartographer master uses `ExternalProject_add` to build Abseil. `standalone_absl` is a single imported target. Imported targets' include directories are marked as `SYSTEM` by default.
Opened this issue · 0 comments
@Mizux, this problem is not exhibited in Cartographer master. Cartographer master uses ExternalProject_add
to build Abseil. standalone_absl
is a single imported target. Imported targets' include directories are marked as SYSTEM
by default.
The problem is exhibited in my PR cartographer-project/cartographer#1387, where I fetch abseil during configuring, and build it later using add_subdirectory
. If we were fixing this on Cartographer's side, we would have to move INTERFACE_SYSTEM_INCLUDE_DIRECTORIES
to INTERFACE_INCLUDE_DIRECTORIES
for all Abseil targets (and not just a single standalone_abseil
target), and there is a whole bunch of them. I am not aware of how you would even enumerate them in CMake in a portable way - there is BUILDSYSTEM_TARGETS
, but that exists only in CMake 3.7+.
Originally posted by @ojura in abseil/abseil-cpp#157 (comment)