diff options
author | Ryo Nakamura <upa@haeena.net> | 2023-03-10 21:10:06 +0900 |
---|---|---|
committer | Ryo Nakamura <upa@haeena.net> | 2023-03-10 21:10:06 +0900 |
commit | 309371ed75ea5eebdde4d2e84ed6ad298dd38b12 (patch) | |
tree | af4c916e319b9dec7cc1e42873093a9e8376b197 /CMakeLists.txt | |
parent | 1e92ff9e7795a0c3613ae8d2bfae45870036f46d (diff) |
now make install installs libmscp
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r-- | CMakeLists.txt | 27 |
1 files changed, 18 insertions, 9 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 68902de..d890381 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -47,12 +47,11 @@ add_subdirectory(libssh EXCLUDE_FROM_ALL) -set(MSCP_COMPILE_OPTS "") -set(MSCP_INCLUDE_DIRS ${mscp_SOURCE_DIR}/src) - -list(APPEND MSCP_COMPILE_OPTS -iquote ${CMAKE_CURRENT_BINARY_DIR}/libssh/include) -list(APPEND MSCP_INCLUDE_DIRS ${CMAKE_CURRENT_BINARY_DIR}/libssh/include) +set(MSCP_COMPILE_OPTS -iquote ${CMAKE_CURRENT_BINARY_DIR}/libssh/include) +set(MSCP_BUILD_INCLUDE_DIRS + ${mscp_SOURCE_DIR}/src + ${CMAKE_CURRENT_BINARY_DIR}/libssh/include) @@ -60,22 +59,31 @@ set(LIBMSCP_SRC src/mscp.c src/ssh.c src/path.c src/platform.c src/message.c) # shared libmscp add_library(mscp-shared SHARED ${LIBMSCP_SRC}) -target_include_directories(mscp-shared PRIVATE ${MSCP_INCLUDE_DIRS}) +target_include_directories(mscp-shared + PUBLIC $<BUILD_INTERFACE:${mscp_SOURCE_DIR}/include> + $<INSTALL_INTERFACE:include> + PRIVATE ${MSCP_BUILD_INCLUDE_DIRS}) target_compile_options(mscp-shared PRIVATE ${MSCP_COMPILE_OPTS}) target_link_libraries(mscp-shared PRIVATE ssh-static) set_target_properties(mscp-shared PROPERTIES - OUTPUT_NAME mscp) + OUTPUT_NAME mscp + PUBLIC_HEADER ${mscp_SOURCE_DIR}/include/mscp.h) + +install(TARGETS mscp-shared) + # static libmscp add_library(mscp-static STATIC ${LIBMSCP_SRC}) -target_include_directories(mscp-static PRIVATE ${MSCP_INCLUDE_DIRS}) +target_include_directories(mscp-static + PRIVATE ${MSCP_BUILD_INCLUDE_DIRS} ${mscp_SOURCE_DIR}/include) target_compile_options(mscp-static PRIVATE ${MSCP_COMPILE_OPTS}) target_link_libraries(mscp-static PRIVATE ssh-static) set_target_properties(mscp-static PROPERTIES OUTPUT_NAME mscp) +install(TARGETS mscp-static) @@ -92,7 +100,8 @@ endif() # mscp executable add_executable(mscp src/main.c) -target_include_directories(mscp PRIVATE ${MSCP_INCLUDE_DIRS}) +target_include_directories(mscp + PRIVATE ${MSCP_BUILD_INCLUDE_DIRS} ${mscp_SOURCE_DIR}/include) target_link_directories(mscp PRIVATE ${MSCP_LINK_DIRS}) target_link_libraries(mscp mscp-static ${MSCP_LINK_LIBS}) if (BUILD_STATIC) |