Windows作業用にcommit

This commit is contained in:
keita
2021-03-02 21:03:34 +09:00
parent b4894023fb
commit 9467118c26
2 changed files with 51 additions and 15 deletions
+40 -8
View File
@@ -49,28 +49,60 @@ if(ENABLE_CODE_COVERAGE)
endif() endif()
# Required libraries # Required libraries
if(ENABLE_TEST)
if(NOT (UNIX OR APPLE))
message(FAITAL_ERROR "unit test is NOT supported on Windows")
endif()
find_package(Boost 1.71.0 COMPONENTS unit_test_framework REQUIRED) find_package(Boost 1.71.0 COMPONENTS unit_test_framework REQUIRED)
# Enable CTest
enable_testing()
add_subdirectory(test)
endif()
# Search OpenSSL
if(UNIX OR APPLE)
find_package(PkgConfig REQUIRED) find_package(PkgConfig REQUIRED)
find_package(OpenSSL REQUIRED) find_package(OpenSSL REQUIRED)
if(NOT OPENSSL_FOUND) if(NOT OPENSSL_FOUND)
message(FATAL_ERROR "Fail to find OpenSSL") # exit message(FATAL_ERROR "Fail to find OpenSSL") # exit
endif() endif()
message(STATUS "OPENSSL_INCLUDE_DIR: ${OPENSSL_INCLUDE_DIR}") set(OPENSSL_LIBRARIES OpenSSL::SSL OpenSSL::Crypto)
include_directories(${OPENSSL_INCLUDE_DIR}) elseif(WIN32)
if(NOT OPENSSL_ROOT_DIR)
find_package(CURL REQUIRED)
if(NOT CURL_FOUND)
message(FATAL_ERROR "Fail to find OpenSSL") # exit message(FATAL_ERROR "Fail to find OpenSSL") # exit
endif() endif()
set(OPENSSL_INCLUDE_DIR "${OPENSSL_ROOT_DIR/include}")
set(OPENSSL_LIB_DIR "${OPENSSL_ROOT_DIR/lib/MinGw}")
set(OPENSSL_LIBRARIES "${OPENSSL_LIB_DIR}/ssl.dll" "${OPENSSL_LIB_DIR}/crypto.dll")
endif()
message(STATUS "OPENSSL_INCLUDE_DIR: ${OPENSSL_INCLUDE_DIR}/include")
include_directories(${OPENSSL_INCLUDE_DIR})
# Search cURL library
if(UNIX OR APPLE)
find_package(CURL REQUIRED)
if(NOT CURL_FOUND)
message(FATAL_ERROR "Fail to find cURL library") # exit
endif()
elseif(WIN32)
if(NOT CURL_ROOT_DIR)
message(FATAL_ERROR "Fail to find cURL library") # exit
endif()
## TODO
## CURLのアレをセットする
## set(CURL_INCLUDE_DIRS "${CURL_ROOT_DIR}/include")
## set(CURL_LIBRARIES "${CURL_ROOT_DIR}/lib") # 実際にはglobしなければいけない
endif()
message(STATUS "CURL_INCLUDE_DIR: ${CURL_INCLUDE_DIRS}")
include_directories(${CURL_INCLUDE_DIRS}) include_directories(${CURL_INCLUDE_DIRS})
include_directories( include_directories(
${PROJECT_SOURCE_DIR}/src ${PROJECT_SOURCE_DIR}/src
${PROJECT_SOURCE_DIR}/third ${PROJECT_SOURCE_DIR}/third
) )
# Enable CTest
enable_testing()
add_subdirectory(src) add_subdirectory(src)
add_subdirectory(test)
+7 -3
View File
@@ -1,11 +1,15 @@
file(GLOB_RECURSE SOURCES ./*.cc) file(GLOB_RECURSE SOURCES ./*.cc)
add_library(lib-cocoatweet ${SOURCES}) add_library(lib-cocoatweet ${SOURCES})
target_link_libraries(lib-cocoatweet PUBLIC target_link_libraries(lib-cocoatweet PUBLIC
Boost::boost ${OPENSSL_LIBRARIES}
OpenSSL::SSL
OpenSSL::Crypto
${CURL_LIBRARIES} ${CURL_LIBRARIES}
) )
if(ENABLE_TEST)
target_link_libraries(lib-cocoatweet PUBLIC Boost::boost)
endif()
target_include_directories(lib-cocoatweet PUBLIC ${PROJECT_SOURCE_DIR}/src) target_include_directories(lib-cocoatweet PUBLIC ${PROJECT_SOURCE_DIR}/src)
set_target_properties(lib-cocoatweet PROPERTIES OUTPUT_NAME cocoatweet) set_target_properties(lib-cocoatweet PROPERTIES OUTPUT_NAME cocoatweet)