summaryrefslogtreecommitdiff
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorRyo Nakamura <upa@haeena.net>2023-02-26 23:18:39 +0900
committerRyo Nakamura <upa@haeena.net>2023-02-26 23:18:39 +0900
commit700d64b375470de42589ea66baabeee289cb66f2 (patch)
treed0f39cd366521dc8c98ee2f97d80566de8746d1e /CMakeLists.txt
parent2bad21bdc296c26d52e97359f1c1ce2e9b96f1aa (diff)
now mscp links libmscp
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt39
1 files changed, 22 insertions, 17 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index df3a542..0f2988e 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -19,9 +19,6 @@ if(APPLE)
endif() # APPLE
-# mscp executable
-add_executable(mscp src/main.c src/platform.c src/ssh.c src/file.c src/pprint.c)
-
set(MSCP_LINK_LIBS m pthread)
set(MSCP_LINK_DIRS "")
set(MSCP_COMPILE_OPTS "")
@@ -40,17 +37,12 @@ list(APPEND MSCP_LINK_LIBS ${OPENSSL_LIBRARIES})
find_package(ZLIB)
list(APPEND MSCP_LINK_LIBS ${ZLIB_LIBRARIES})
-target_include_directories(mscp PRIVATE ${MSCP_INCLUDE_DIRS})
-target_link_directories(mscp PRIVATE ${MSCP_LINK_DIRS})
-target_link_libraries(mscp PRIVATE ${MSCP_LINK_LIBS})
-target_compile_options(mscp PRIVATE ${MSCP_COMPILE_OPTS})
-target_compile_definitions(mscp PUBLIC _VERSION="${PROJECT_VERSION}")
-install(TARGETS mscp RUNTIME DESTINATION bin)
+set(LIBMSCP_SRC src/mscp.c src/ssh.c src/path.c src/pprint.c src/platform.c)
-# libmscp
-add_library(mscp-shared SHARED src/mscp.c src/ssh.c src/path.c src/pprint.c src/platform.c )
+# shared libmscp
+add_library(mscp-shared SHARED ${LIBMSCP_SRC})
target_include_directories(mscp-shared PRIVATE ${MSCP_INCLUDE_DIRS})
target_link_directories(mscp-shared PRIVATE ${MSCP_LINK_DIRS})
target_link_libraries(mscp-shared PRIVATE ${MSCP_LINK_LIBS})
@@ -59,12 +51,25 @@ set_target_properties(mscp-shared
PROPERTIES
OUTPUT_NAME mscp)
-# test executable
-add_executable(test-mscp src/test.c src/ssh.c src/path.c src/pprint.c src/platform.c)
-target_include_directories(test-mscp PRIVATE ${MSCP_INCLUDE_DIRS})
-target_link_directories(test-mscp PRIVATE ${MSCP_LINK_DIRS})
-target_link_libraries(test-mscp PRIVATE ${MSCP_LINK_LIBS})
-target_compile_options(test-mscp PRIVATE ${MSCP_COMPILE_OPTS})
+# static libmscp
+add_library(mscp-static STATIC ${LIBMSCP_SRC})
+target_include_directories(mscp-static PRIVATE ${MSCP_INCLUDE_DIRS})
+target_link_directories(mscp-static PRIVATE ${MSCP_LINK_DIRS})
+target_link_libraries(mscp-static PRIVATE ${MSCP_LINK_LIBS})
+target_compile_options(mscp-static PRIVATE ${MSCP_COMPILE_OPTS})
+set_target_properties(mscp-static
+ PROPERTIES
+ OUTPUT_NAME mscp)
+
+# mscp executable
+add_executable(mscp src/main.c)
+target_include_directories(mscp PRIVATE ${MSCP_INCLUDE_DIRS})
+target_compile_definitions(mscp PUBLIC _VERSION="${PROJECT_VERSION}")
+target_link_libraries(mscp mscp-static)
+
+
+install(TARGETS mscp RUNTIME DESTINATION bin)
+
# Test
add_test(NAME pytest