cmake_minimum_required(VERSION 3.5) SET(TARGET_NAME app) PROJECT(${TARGET_NAME}) add_definitions( -DCURL_STATICLIB ) SET(CMAKE_FIND_LIBRARY_SUFFIXES .lib .a .o ${CMAKE_FIND_LIBRARY_SUFFIXES}) set(ENV{OPENSSL_ROOT_DIR} /usr/local/Cellar/openssl@1.1/1.1.1g) set(ENV{LIBSSH2_INCLUDE_DIR} /usr/local/Cellar/libssh2/1.9.0_1/include) set(ENV{LIBSSH2_LIBRARY} /usr/local/Cellar/libssh2/1.9.0_1) IF(APPLE) SET(ARCHITECTURE x64) ELSEIF(CMAKE_CL_64) SET(ARCHITECTURE x64) ELSE() SET(ARCHITECTURE x86) ENDIF() include_directories(lib) # add_subdirectory(lib/cJSON) add_subdirectory(lib/curl) FILE(GLOB_RECURSE SOURCE source/*.cpp) SET(TARGET_SOURCE ${SOURCE}) ADD_EXECUTABLE(${TARGET_NAME} ${TARGET_SOURCE}) target_link_libraries(${TARGET_NAME} ${CURL_LIBRARIES}) # target_link_libraries(${TARGET_NAME} cjson) target_link_libraries(${TARGET_NAME} libcurl) SET_PROPERTY(TARGET ${TARGET_NAME} PROPERTY CXX_STANDARD 14) # set(CMAKE_CXX_FLAGS -DV8_COMPRESS_POINTERS) set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/archive) set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/library) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/runtime) SET_TARGET_PROPERTIES(${TARGET_NAME} PROPERTIES ARCHIVE_OUTPUT_DIRECTORY "${PROJECT_SOURCE_DIR}/bin/${Configuration}" LIBRARY_OUTPUT_DIRECTORY "${PROJECT_SOURCE_DIR}/bin/${Configuration}" RUNTIME_OUTPUT_DIRECTORY "${PROJECT_SOURCE_DIR}/bin/${Configuration}" OUTPUT_NAME ${TARGET_NAME}.${ARCHITECTURE} VERSION 1.0 SOVERSION 0 )