mirror of
https://github.com/asdlokj1qpi233/subconverter.git
synced 2025-10-26 02:42:25 +00:00
59 lines
1.7 KiB
CMake
59 lines
1.7 KiB
CMake
project(subconverter LANGUAGES CXX)
|
|
cmake_minimum_required(VERSION 3.4)
|
|
SET(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/")
|
|
IF(NOT CMAKE_BUILD_TYPE)
|
|
SET(CMAKE_BUILD_TYPE Release)
|
|
ENDIF()
|
|
SET(CMAKE_CXX_STANDARD 17)
|
|
ADD_DEFINITIONS(-Wall -Wextra -Wno-unused-parameter -Wno-unused-result)
|
|
|
|
ADD_EXECUTABLE(subconverter
|
|
src/logger.cpp
|
|
src/main.cpp
|
|
src/misc.cpp
|
|
src/multithread.cpp
|
|
src/nodemanip.cpp
|
|
src/rapidjson_extra.cpp
|
|
src/speedtestutil.cpp
|
|
src/subexport.cpp
|
|
src/webget.cpp
|
|
src/webserver_libevent.cpp)
|
|
INCLUDE_DIRECTORIES(src)
|
|
|
|
SET(THREADS_PREFER_PTHREAD_FLAG ON)
|
|
FIND_PACKAGE(Threads REQUIRED)
|
|
TARGET_LINK_LIBRARIES(subconverter ${CMAKE_THREAD_LIBS_INIT})
|
|
|
|
FIND_PACKAGE(LibEvent REQUIRED)
|
|
FIND_LIBRARY(LIBEVENT_STATIC_LIBS libevent.a)
|
|
INCLUDE_DIRECTORIES(${LIBEVENT_INCLUDE_DIR})
|
|
TARGET_LINK_LIBRARIES(subconverter ${LIBEVENT_STATIC_LIBS})
|
|
|
|
FIND_PACKAGE(CURL 7.54.0 REQUIRED)
|
|
INCLUDE_DIRECTORIES(${CURL_INCLUDE_DIRS})
|
|
TARGET_LINK_LIBRARIES(subconverter ${CURL_LIBRARIES})
|
|
ADD_DEFINITIONS(-DCURL_STATICLIB)
|
|
|
|
FIND_PACKAGE(OpenSSL 1.1.0 REQUIRED)
|
|
INCLUDE_DIRECTORIES(${OPENSSL_INCLUDE_DIR})
|
|
TARGET_LINK_LIBRARIES(subconverter ${OPENSSL_LIBRARIES})
|
|
|
|
FIND_PACKAGE(Rapidjson REQUIRED)
|
|
INCLUDE_DIRECTORIES(${RAPIDJSON_INCLUDE_DIRS})
|
|
|
|
FIND_PACKAGE(yaml-cpp REQUIRED)
|
|
INCLUDE_DIRECTORIES(${YAML_CPP_INCLUDE_DIRS})
|
|
TARGET_LINK_LIBRARIES(subconverter yaml-cpp.a)
|
|
|
|
FIND_PACKAGE(PCRE REQUIRED)
|
|
INCLUDE_DIRECTORIES(${PCRE_INCLUDE_DIRS})
|
|
TARGET_LINK_LIBRARIES(subconverter pcrecpp.a ${PCRE_LIBRARIES})
|
|
ADD_DEFINITIONS(-DPCRE_STATIC)
|
|
|
|
IF(WIN32)
|
|
TARGET_LINK_LIBRARIES(subconverter wsock32 ws2_32)
|
|
ELSE()
|
|
INCLUDE(GNUInstallDirs)
|
|
INSTALL(TARGETS subconverter DESTINATION ${CMAKE_INSTALL_BINDIR})
|
|
ENDIF()
|