diff options
author | Ryo Nakamura <upa@haeena.net> | 2022-11-20 16:14:07 +0900 |
---|---|---|
committer | Ryo Nakamura <upa@haeena.net> | 2022-11-20 16:14:07 +0900 |
commit | dc0dd6028763cfca8d5851f7ab6dbbd673dde22e (patch) | |
tree | b604e6489519edee7ed551da4105e18b948060f1 /CMakeLists.txt | |
parent | 4129a47a3a3fd1f6ddc56d075e2219590aadddb1 (diff) |
build libssh-static from mscp cmake
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r-- | CMakeLists.txt | 41 |
1 files changed, 18 insertions, 23 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 55878a6..37167f8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -9,6 +9,10 @@ project(mscp set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DDEBUG") list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/modules) + +# add libssh static library +add_subdirectory(libssh EXCLUDE_FROM_ALL) + if(APPLE) list(APPEND CMAKE_PREFIX_PATH /usr/local) # intel mac homebrew prefix list(APPEND CMAKE_PREFIX_PATH /opt/homebrew) # arm mac homebrew prefix @@ -23,29 +27,20 @@ set(MSCP_LINK_DIRS "") set(MSCP_COMPILE_OPTS "") set(MSCP_INCLUDE_DIRS ${mscp_SOURCE_DIR}/src) -if (LIBSSH_PATH) - # libssh.a must be placed before other shared libraries for gcc - list(APPEND MSCP_COMPILE_OPTS -iquote ${LIBSSH_PATH}/include) - list(APPEND MSCP_INCLUDE_DIRS ${LIBSSH_PATH}/include) - list(APPEND MSCP_LINK_DIRS ${LIBSSH_PATH}/lib) - list(APPEND MSCP_LINK_LIBS libssh.a) - - find_package(GSSAPI) - list(APPEND MSCP_LINK_LIBS ${GSSAPI_LIBRARIES}) - - find_package(OpenSSL) - list(APPEND MSCP_LINK_LIBS ${OPENSSL_LIBRARIES}) - - find_package(ZLIB) - list(APPEND MSCP_LINK_LIBS ${ZLIB_LIBRARIES}) -else() - find_package(libssh REQUIRED) - list(APPEND MSCP_LINK_LIBS ssh) -endif() - -if (WITH_ASYNC_WRITE) - target_compile_definitions(mscp PUBLIC ASYNC_WRITE=1) -endif() +list(APPEND MSCP_COMPILE_OPTS -iquote ${CMAKE_CURRENT_BINARY_DIR}/libssh/include) +list(APPEND MSCP_INCLUDE_DIRS ${CMAKE_CURRENT_BINARY_DIR}/libssh/include) +list(APPEND MSCP_LINK_LIBS ssh-static) + +find_package(GSSAPI) +list(APPEND MSCP_LINK_LIBS ${GSSAPI_LIBRARIES}) + +find_package(OpenSSL) +list(APPEND MSCP_LINK_LIBS ${OPENSSL_LIBRARIES}) + +find_package(ZLIB) +list(APPEND MSCP_LINK_LIBS ${ZLIB_LIBRARIES}) + +target_compile_definitions(mscp PUBLIC ASYNC_WRITE=1) target_include_directories(mscp PRIVATE ${MSCP_INCLUDE_DIRS}) target_link_directories(mscp PRIVATE ${MSCP_LINK_DIRS}) |