Guide26.2K views1,073 votes0 replies977 following
Modern CMake: Managing Transitive Dependencies with Targets
Use PUBLIC, PRIVATE, and INTERFACE on targets instead of global commands so CMake propagates include paths and link dependencies transitively and correctly.