file(GLOB _SRCS "*.h" "*.cc") set(NAME ${PROJECT_NAME}_util) # Will be merge in libortools.so #add_library(${NAME} STATIC ${_SRCS}) add_library(${NAME} OBJECT ${_SRCS}) set_target_properties(${NAME} PROPERTIES CXX_STANDARD 11 CXX_STANDARD_REQUIRED ON CXX_EXTENSIONS OFF POSITION_INDEPENDENT_CODE ON ) # CMake < 3.12: CMakeError: Object library may not link to anything. #target_link_libraries(${NAME} PRIVATE # absl::base absl::memory absl::strings absl::str_format # gflags::gflags glog::glog # protobuf::libprotobuf # ${PROJECT_NAME}::proto) target_include_directories(${NAME} PRIVATE ${PROJECT_SOURCE_DIR} ${PROJECT_BINARY_DIR} $ $ $ $ $ $ $ $) target_compile_options(${NAME} PRIVATE $ $ $ $ $ $ $ $ ) target_compile_definitions(${NAME} PRIVATE $ $ $ $ $ $ $ $ ) add_dependencies(${NAME} absl::base absl::memory absl::strings absl::str_format gflags::gflags glog::glog protobuf::libprotobuf ${PROJECT_NAME}::proto) add_library(${PROJECT_NAME}::util ALIAS ${NAME})