Windows作業用にcommit
This commit is contained in:
+40
-8
@@ -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)
|
|
||||||
|
|||||||
@@ -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)
|
||||||
|
|||||||
Reference in New Issue
Block a user