diff --git a/CMakeLists.txt b/CMakeLists.txt index 9af19e2..4b70101 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,16 +2,19 @@ cmake_minimum_required(VERSION 3.10) project(anthracite) -set(CMAKE_CXX_STANDARD 23) +set(CMAKE_CXX_STANDARD 20) set(CMAKE_CXX_STANDARD_REQUIRED True) set(CMAKE_CXX_FLAGS_RELEASE "-O3") set(CMAKE_EXPORT_COMPILE_COMMANDS ON) find_package(OpenSSL REQUIRED) -add_custom_target(build-version - COMMAND cd ../build_supp && ./version.sh - DEPENDS build_supp/version.txt +configure_file(build_supp/version.txt version.txt COPYONLY) + +add_custom_command( + COMMAND ../build_supp/version.sh + DEPENDS version.txt + OUTPUT ${CMAKE_BINARY_DIR}/version.cpp COMMENT "Generated supplemental build files (version)" ) @@ -19,19 +22,13 @@ add_custom_target(build-supplemental COMMAND cd ../build_supp && python3 ./error_gen.py COMMAND mkdir -p www && cp -r ../default_www/regular/* ./www/ COMMAND cp ../build_supp/default_config.cfg ./anthracite.cfg - DEPENDS build_supp/version.txt ../default_www/regular/* build_supp/error_gen.py build-version + DEPENDS ../default_www/regular/* build_supp/error_gen.py ${CMAKE_BINARY_DIR}/version.cpp COMMENT "Generated supplemental build files (default www dir + default config + error pages)" ) -add_custom_target(run - COMMAND anthracite-bin - DEPENDS anthracite-bin - WORKING_DIRECTORY ${CMAKE_PROJECT_DIR} -) - -FILE(GLOB LIB_SOURCES lib/*.cpp lib/**/*.cpp build_supp/version.cpp) -add_library(anthracite ${LIB_SOURCES}) -add_dependencies(anthracite build-version) +FILE(GLOB LIB_SOURCES lib/*.cpp lib/**/*.cpp) +add_library(anthracite ${LIB_SOURCES} ${CMAKE_BINARY_DIR}/version.cpp) +add_dependencies(anthracite build-supplemental) target_link_libraries(anthracite OpenSSL::SSL OpenSSL::Crypto) target_include_directories(anthracite PUBLIC ${OPENSSL_INCLUDE_DIR}) diff --git a/Dockerfile b/Dockerfile index 3c5c6c2..449ea5d 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM alpine as build-env +FROM alpine AS build-env RUN apk add --no-cache build-base python3 cmake openssl-dev COPY ./src ./src diff --git a/src/file_main.cpp b/src/file_main.cpp index 3e7285b..d7e5492 100644 --- a/src/file_main.cpp +++ b/src/file_main.cpp @@ -3,10 +3,8 @@ #include "../lib/socket/openssl_socket.hpp" #include "../lib/socket/socket.hpp" #include "../lib/thread_mgr/event_loop.hpp" -#include "../lib/version.hpp" +#include "signal.h" #include "getopt.h" -#include "string.h" -#include "sys/signal.h" #include #include #include @@ -251,7 +249,7 @@ int main(int argc, char* argv[]) while ((c = getopt_long(argc, argv, "hc:", options, &opt_index)) != -1) { switch (c) { case 'h': { - std::cerr << "Anthracite " << ANTHRACITE_VERSION_STRING << " Help" << std::endl; + std::cerr << "Anthracite Help" << std::endl; std::cerr << std::endl; std::cerr << "-h, --help Prints this help menu " << std::endl; std::cerr << std::endl;