mirror of
https://github.com/asdlokj1qpi233/subconverter.git
synced 2025-10-25 18:32:22 +00:00
Add CMake support
Clean up file structure. Update build scripts.
This commit is contained in:
@@ -11,8 +11,7 @@ matrix:
|
||||
compiler: clang
|
||||
osx_image: xcode10.3
|
||||
script:
|
||||
- chmod +x build.macos.release.sh
|
||||
- ./build.macos.release.sh
|
||||
- bash scripts/build.macos.release.sh
|
||||
deploy:
|
||||
provider: releases
|
||||
api_key: "$GITHUB_OAUTH_TOKEN"
|
||||
@@ -24,7 +23,7 @@ matrix:
|
||||
- services: docker
|
||||
script:
|
||||
- docker pull alpine:latest
|
||||
- docker run -v $TRAVIS_BUILD_DIR:/root/workdir alpine:latest /bin/sh -c "apk add bash git && cd /root/workdir && chmod +x build.alpine.release.sh && bash build.alpine.release.sh"
|
||||
- docker run -v $TRAVIS_BUILD_DIR:/root/workdir alpine:latest /bin/sh -c "apk add bash git && cd /root/workdir && chmod +x scripts/build.alpine.release.sh && bash scripts/build.alpine.release.sh"
|
||||
deploy:
|
||||
provider: releases
|
||||
api_key: "$GITHUB_OAUTH_TOKEN"
|
||||
|
||||
58
CMakeLists.txt
Normal file
58
CMakeLists.txt
Normal file
@@ -0,0 +1,58 @@
|
||||
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()
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user