linking object libraries doesn't propagate private library dependencies
cmake_minimum_required(VERSION 3.9)
project(foo)
add_library(lib1 STATIC lib1.cpp)
add_library(lib2 OBJECT lib2.cpp)
target_link_libraries(lib2 PRIVATE lib1)
add_executable(test main.cpp)
target_link_libraries(test PUBLIC lib2)
when linking test
it will link lib2
, but lib1
won't be propagated transitively.