Код: Выделить всё
target_link_librares(another_project PUBLIC X)
Код: Выделить всё
add_library(X STATIC
hub.cpp
)
target_include_directories(X PUBLIC
$
$
)
get_target_property(X_INCLUDE_DIRS X INTERFACE_INCLUDE_DIRECTORIES)
target_link_libraries(X
PUBLIC
Y // this can be visible
PRIVATE
rapidjson // this should not required when another project links to X
)
install(TARGETS X
EXPORT X-targets
ARCHIVE DESTINATION lib
)
install(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/
DESTINATION include/X
FILES_MATCHING PATTERN "*.h"
)
install(EXPORT X-targets
FILE X-config.cmake
NAMESPACE X::
DESTINATION lib/X
)
используется только в файлах C++. И я хочу скрыть это от конечного пользователя.
Код: Выделить всё
find_package(RapidJson REQUIRED)
Подробнее здесь: https://stackoverflow.com/questions/792 ... party-libs
Мобильная версия