Export cmake targets (close #179)

This commit is contained in:
Stefano Fiorentino 2020-03-21 15:39:17 +01:00 committed by Michele Caini
parent ebc8199d42
commit 0e36f685e8
2 changed files with 11 additions and 4 deletions

View File

@ -15,10 +15,13 @@ endif()
# #
# Project configuration # Project configuration
# #
set(UVW_VERSION_MAJOR 2)
set(UVW_VERSION_MINOR 4)
set(UVW_VERSION_PATCH 0)
project( project(
uvw uvw
VERSION 2.4.0 VERSION ${UVW_VERSION_MAJOR}.${UVW_VERSION_MINOR}.${UVW_VERSION_PATCH}
DESCRIPTION "Header-only, event based, tiny and easy to use libuv wrapper in modern C++" DESCRIPTION "Header-only, event based, tiny and easy to use libuv wrapper in modern C++"
HOMEPAGE_URL "https://github.com/skypjack/uvw" HOMEPAGE_URL "https://github.com/skypjack/uvw"
LANGUAGES C CXX LANGUAGES C CXX

View File

@ -5,7 +5,7 @@
function(add_uvw_library LIB_NAME) function(add_uvw_library LIB_NAME)
target_sources( target_sources(
${LIB_NAME} ${LIB_NAME}
PUBLIC PRIVATE
uvw/async.cpp uvw/async.cpp
uvw/check.cpp uvw/check.cpp
uvw/dns.cpp uvw/dns.cpp
@ -68,11 +68,15 @@ add_uvw_library(uvw-static)
add_library(uvw-shared SHARED EXCLUDE_FROM_ALL) add_library(uvw-shared SHARED EXCLUDE_FROM_ALL)
add_library(uvw::uvw-shared ALIAS uvw-shared) add_library(uvw::uvw-shared ALIAS uvw-shared)
target_link_libraries(uvw-shared PUBLIC uv::uv-shared) target_link_libraries(uvw-shared PUBLIC uv::uv-shared)
set_target_properties(uvw-shared PROPERTIES VERSION ${PROJECT_VERSION} SOVERSION ${UVW_VERSION_MAJOR})
add_uvw_library(uvw-shared) add_uvw_library(uvw-shared)
# #
# Install targets # Install targets
# #
install(TARGETS uvw-shared LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}) install(EXPORT uvw NAMESPACE uvw:: DESTINATION ${CMAKE_INSTALL_LIBDIR})
install(TARGETS uvw-static ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) install(TARGETS uvw-static EXPORT uvw ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
install(TARGETS uvw-shared EXPORT uvw LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
install(TARGETS uv_a EXPORT uvw ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
install(TARGETS uv EXPORT uvw LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})