2026-05-29 23:50:05 +02:00
|
|
|
cmake_minimum_required(VERSION 3.10.0)
|
|
|
|
|
project(SimulateurFranceVote VERSION 0.1.0 LANGUAGES C CXX)
|
2026-06-21 21:53:29 +02:00
|
|
|
set(CMAKE_CXX_STANDARD 23)
|
|
|
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
2026-05-29 23:50:05 +02:00
|
|
|
|
|
|
|
|
file(GLOB_RECURSE
|
|
|
|
|
SRCS
|
|
|
|
|
src/*
|
|
|
|
|
)
|
|
|
|
|
|
2026-06-21 21:53:29 +02:00
|
|
|
# ------- Inclusion de JSONfMC++ --------
|
|
|
|
|
# JSONfMC++ Lib pour gestion fichier JSON, en mode header only.
|
|
|
|
|
set(JSONlib_DIR ./lib/CMake/Linux)
|
|
|
|
|
find_package(JSONlib REQUIRED)
|
|
|
|
|
|
|
|
|
|
if(JSONlib_FOUND)
|
|
|
|
|
message("lib JSONFMC++ Trouvé")
|
|
|
|
|
else()
|
|
|
|
|
message("lib JSONFMC++ Introuvable")
|
|
|
|
|
endif()
|
|
|
|
|
# ---------------------------------------
|
|
|
|
|
|
|
|
|
|
# ------- Inclusion de JSON-Schema-Validator --------
|
|
|
|
|
# JSON-Schema-Validator Lib pour valider les fichier JSON, en mode header only.
|
|
|
|
|
if(WIN32)
|
|
|
|
|
set(JSON_SCHEMA_VALIDATOR_DIR ./lib/CMake/Windows)
|
|
|
|
|
else()
|
|
|
|
|
set(JSON_SCHEMA_VALIDATOR_DIR ./lib/CMake/Linux)
|
|
|
|
|
endif()
|
|
|
|
|
|
|
|
|
|
find_package(JSON_SCHEMA_VALIDATOR REQUIRED)
|
|
|
|
|
|
|
|
|
|
if(JSON_SCHEMA_VALIDATOR_FOUND)
|
|
|
|
|
message("lib JSON_Schema_Validator Trouvé")
|
|
|
|
|
else()
|
|
|
|
|
message("lib JSON_Schema_Validator Introuvable")
|
|
|
|
|
endif()
|
|
|
|
|
# ---------------------------------------
|
|
|
|
|
|
|
|
|
|
# ------- Inclusion de httplib --------
|
|
|
|
|
# httplib Lib pour gestion des requetes web en mode header only.
|
|
|
|
|
if(WIN32)
|
|
|
|
|
set(HTTPlib_DIR ./lib/CMake/Windows)
|
|
|
|
|
else()
|
|
|
|
|
set(HTTPlib_DIR ./lib/CMake/Linux)
|
|
|
|
|
endif()
|
|
|
|
|
|
|
|
|
|
find_package(HTTPlib REQUIRED)
|
|
|
|
|
|
|
|
|
|
if(HTTPlib_FOUND)
|
|
|
|
|
message("lib HTTP Trouvé")
|
|
|
|
|
else()
|
|
|
|
|
message("lib HTTP Introuvable")
|
|
|
|
|
endif()
|
|
|
|
|
# ---------------------------------------
|
|
|
|
|
|
|
|
|
|
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin/${CMAKE_BUILD_TYPE})
|
|
|
|
|
|
|
|
|
|
add_executable(SimulateurFranceVote ${SRCS})
|
|
|
|
|
|
|
|
|
|
include_directories(${JSONFMCPP_INCLUDE_DIRS})
|
|
|
|
|
include_directories(${JSON_SCHEMA_VALIDATOR_INCLUDE_DIRS})
|
|
|
|
|
include_directories(${HTTPLIB_INCLUDE_DIRS})
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#target_link_libraries(SimulateurFranceVote
|
|
|
|
|
# debug ${JSON_SCHEMA_VALIDATOR_LIBRARIES}
|
|
|
|
|
# optimized ${JSON_SCHEMA_VALIDATOR_LIBRARIES}
|
|
|
|
|
#)
|