Add files

Signed-off-by: Bensuperpc <bensuperpc@gmail.com>
This commit is contained in:
2024-01-29 21:08:29 +01:00
commit 7d81e22900
68 changed files with 4264 additions and 0 deletions

View File

@ -0,0 +1,13 @@
cmake_minimum_required(VERSION 3.14.0)
include(FetchContent)
FetchContent_Declare(
backward-cpp
GIT_REPOSITORY https://github.com/bombela/backward-cpp.git
GIT_TAG 0ddfadc4b0f5c53e63259fe804ee595e6f01f4df) # 23-10-2022
FetchContent_MakeAvailable(backward-cpp)
# TODO: target_include_directories instead of include_directories
include_directories(${backward-cpp_SOURCE_DIR})

70
cmake/lib/benchmark.cmake Executable file
View File

@ -0,0 +1,70 @@
cmake_minimum_required(VERSION 3.14.0)
find_package(benchmark QUIET)
if (NOT benchmark_FOUND)
message(STATUS "benchmark not found on system, downloading...")
include(FetchContent)
set(CMAKE_CXX_CLANG_TIDY_TMP "${CMAKE_CXX_CLANG_TIDY}")
set(CMAKE_CXX_CLANG_TIDY "")
FetchContent_Declare(
googlebenchmark
GIT_REPOSITORY https://github.com/google/benchmark.git
GIT_TAG ca8d0f7b613ac915cd6b161ab01b7be449d1e1cd
#GIT_SHALLOW TRUE
) # 12-10-2023
# Disable tests on google benchmark
set(BENCHMARK_ENABLE_TESTING
OFF
CACHE BOOL "" FORCE)
set(BENCHMARK_ENABLE_WERROR
OFF
CACHE BOOL "" FORCE)
set(BENCHMARK_FORCE_WERROR
OFF
CACHE BOOL "" FORCE)
set(BENCHMARK_ENABLE_INSTALL
OFF
CACHE BOOL "" FORCE)
set(BENCHMARK_DOWNLOAD_DEPENDENCIES
ON
CACHE BOOL "" FORCE)
set(BENCHMARK_CXX_LINKER_FLAGS
""
CACHE STRING "" FORCE)
set(BENCHMARK_CXX_LIBRARIES
""
CACHE STRING "" FORCE)
set(BENCHMARK_CXX_FLAGS
""
CACHE STRING "" FORCE)
set(CMAKE_CXX_FLAGS_COVERAGE
""
CACHE STRING "" FORCE)
set(CMAKE_REQUIRED_FLAGS
""
CACHE STRING "" FORCE)
FetchContent_MakeAvailable(googlebenchmark)
# Lib: benchmark::benchmark benchmark::benchmark_main
set(CMAKE_CXX_CLANG_TIDY "${CMAKE_CXX_CLANG_TIDY_TMP}")
set_target_properties(benchmark
PROPERTIES
RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin"
LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib"
ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib"
PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin"
)
endif()

22
cmake/lib/boost.cmake Executable file
View File

@ -0,0 +1,22 @@
cmake_minimum_required(VERSION 3.14.0)
include(FetchContent)
if(NOT DEFINED BOOST_INCLUDE_LIBRARIES)
set(BOOST_INCLUDE_LIBRARIES system)
endif()
if(NOT DEFINED BOOST_ENABLE_CMAKE)
set(BOOST_ENABLE_CMAKE ON)
endif()
FetchContent_Declare(
Boost
GIT_REPOSITORY https://github.com/boostorg/boost.git
GIT_TAG boost-1.81.0
#GIT_SHALLOW TRUE
)
FetchContent_MakeAvailable(Boost)

15
cmake/lib/drogon.cmake Normal file
View File

@ -0,0 +1,15 @@
# https://github.com/drogonframework/drogon/issues/1288#issuecomment-1163902139
FetchContent_Declare(drogon
GIT_REPOSITORY https://github.com/drogonframework/drogon.git
GIT_TAG v1.8.4 # 08-04-2023
)
# Reset CXX_FLAGS to avoid warnings from drogon
set(CMAKE_CXX_FLAGS_OLD "${CMAKE_CXX_FLAGS}")
set(CMAKE_CXX_FLAGS "-std=c++17 -O3")
FetchContent_MakeAvailable(drogon)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS_OLD}")

View File

@ -0,0 +1,11 @@
cmake_minimum_required(VERSION 3.14.0)
include(FetchContent)
set(FASTNOISE2_NOISETOOL OFF CACHE BOOL "Build Noise Tool" FORCE)
FetchContent_Declare(FastNoise2
GIT_REPOSITORY https://github.com/Auburn/FastNoise2.git
GIT_TAG 0928ca22cd4cfd50e9b17cec4fe9d867b59c3943 # 2023-06-07
)
FetchContent_MakeAvailable(FastNoise2)

32
cmake/lib/gtest.cmake Executable file
View File

@ -0,0 +1,32 @@
cmake_minimum_required(VERSION 3.14.0)
find_package(GTest QUIET)
if (NOT GTEST_FOUND)
message(STATUS "GTest not found on system, downloading...")
include(FetchContent)
FetchContent_Declare(
googletest
GIT_REPOSITORY https://github.com/google/googletest.git
GIT_TAG 2dd1c131950043a8ad5ab0d2dda0e0970596586a) # 12-10-2023
# Disable tests on gtest
set(gtest_build_tests
OFF
CACHE BOOL "" FORCE)
set(gtest_build_samples
OFF
CACHE BOOL "" FORCE)
FetchContent_MakeAvailable(googletest)
# Lib: gtest gtest_main
set_target_properties(gtest
PROPERTIES
RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin"
LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib"
ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib"
PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin"
)
endif()

31
cmake/lib/json.cmake Executable file
View File

@ -0,0 +1,31 @@
cmake_minimum_required(VERSION 3.14.0)
find_package(nlohmann_json QUIET)
if (NOT nlohmann_json_FOUND)
message(STATUS "nlohmann_json not found on system, downloading...")
include(FetchContent)
#set(CMAKE_MODULE_PATH
# ""
# CACHE STRING "" FORCE)
#set(NLOHMANN_JSON_SYSTEM_INCLUDE
# ""
# CACHE STRING "" FORCE)
FetchContent_Declare(nlohmann_json
GIT_REPOSITORY https://github.com/nlohmann/json.git
GIT_TAG f56c6e2e30241b9245161a86ae9fecf6543bf411 # 2023-11-26
)
FetchContent_MakeAvailable(nlohmann_json)
# nlohmann_json::nlohmann_json
set_target_properties(nlohmann_json
PROPERTIES
RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin"
LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib"
ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib"
PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin"
)
include_directories(${nlohmann_json_SOURCE_DIR}/include)
endif()

42
cmake/lib/opencv.cmake Normal file
View File

@ -0,0 +1,42 @@
cmake_minimum_required(VERSION 3.14.0)
include(FetchContent)
set(OpenCV_DIR ${CMAKE_CURRENT_BINARY_DIR})
find_package(OpenCV QUIET)
if (NOT OpenCV_FOUND)
#set(OpenCV_STATIC ON)
set(BUILD_EXAMPLES CACHE BOOL OFF)
set(BUILD_DOCS CACHE BOOL OFF)
set(BUILD_TESTS CACHE BOOL OFF)
set(BUILD_PERF_TESTS CACHE BOOL OFF)
#set(BUILD_PACKAGE CACHE BOOL OFF)
set(BUILD_opencv_apps CACHE BOOL OFF)
FetchContent_Declare(
OpenCV
GIT_REPOSITORY https://github.com/opencv/opencv.git
GIT_TAG 4.7.0
#GIT_SHALLOW TRUE
GIT_PROGRESS TRUE
)
FetchContent_MakeAvailable(OpenCV)
#set(OpenCV_DIR ${CMAKE_CURRENT_BINARY_DIR})
#include_directories(${OpenCV_INCLUDE_DIRS})
#message(FATAL_ERROR "OpenCV_INCLUDE_DIRS: ${OpenCV_INCLUDE_DIRS}")
#find_package(OpenCV REQUIRED)
#include_directories(${OpenCV_INCLUDE_DIRS})
#target_include_directories("${NAME}" PRIVATE
#${OPENCV_CONFIG_FILE_INCLUDE_DIR}
#${OPENCV_MODULE_opencv_core_LOCATION}/include
#${OPENCV_MODULE_opencv_highgui_LOCATION}/include
#)
#target_link_libraries("${NAME}" PRIVATE opencv_core opencv_highgui)
#target_link_libraries("${NAME}" PRIVATE ${OpenCV_LIBS})
#opencv_add_module()
endif()

6
cmake/lib/openmp.cmake Executable file
View File

@ -0,0 +1,6 @@
cmake_minimum_required(VERSION 3.14.0)
find_package(OpenMP)
if(OpenMP_CXX_FOUND)
# message("OpenMP found")
endif()

14
cmake/lib/perlin_noise.cmake Executable file
View File

@ -0,0 +1,14 @@
cmake_minimum_required(VERSION 3.14.0)
include(FetchContent)
FetchContent_Declare(perlin_noise
GIT_REPOSITORY https://github.com/Reputeless/PerlinNoise.git
GIT_TAG bdf39fe92b2a585cdef485bcec2bca8ab5614095 # 2022-12-30
CONFIGURE_COMMAND ""
BUILD_COMMAND ""
INSTALL_COMMAND ""
TEST_COMMAND ""
)
FetchContent_MakeAvailable(perlin_noise)
include_directories("${perlin_noise_SOURCE_DIR}")

18
cmake/lib/pybind11.cmake Executable file
View File

@ -0,0 +1,18 @@
cmake_minimum_required(VERSION 3.15)
find_package(Python 3.8 COMPONENTS Interpreter Development REQUIRED)
find_package(pybind11)
# add_subdirectory(pybind11)
if (NOT pybind11_FOUND)
include(FetchContent)
FetchContent_Declare(
pybind11
GIT_REPOSITORY https://github.com/pybind/pybind11.git
GIT_TAG v2.10.3
GIT_SHALLOW TRUE
)
FetchContent_MakeAvailable(pybind11)
endif()
#pybind11_add_module(${PROJECT_NAME} main.cpp)

17
cmake/lib/raygui.cmake Executable file
View File

@ -0,0 +1,17 @@
cmake_minimum_required(VERSION 3.14.0)
include(FetchContent)
set(BUILD_RAYLIB_CPP_EXAMPLES OFF CACHE BOOL "" FORCE)
find_package(raygui QUIET)
if (NOT raygui_FOUND)
FetchContent_Declare(raygui
GIT_REPOSITORY https://github.com/raysan5/raygui.git
GIT_TAG 4.0
)
FetchContent_MakeAvailable(raygui)
include_directories(${raygui_SOURCE_DIR})
include_directories(${raygui_SOURCE_DIR}/src)
endif()

13
cmake/lib/raylib-cpp.cmake Executable file
View File

@ -0,0 +1,13 @@
cmake_minimum_required(VERSION 3.14.0)
include(FetchContent)
#find_package(raylib_cpp QUIET)
if (NOT raylib_cpp_FOUND)
FetchContent_Declare(raylib_cpp
GIT_REPOSITORY https://github.com/RobLoach/raylib-cpp.git
GIT_TAG v5.0.0 # 08-12-2023
)
FetchContent_MakeAvailable(raylib_cpp)
endif()

47
cmake/lib/raylib.cmake Executable file
View File

@ -0,0 +1,47 @@
cmake_minimum_required(VERSION 3.14.0)
find_package(raylib QUIET)
if (NOT raylib_FOUND AND NOT FETCHCONTENT_FULLY_DISCONNECTED)
message(STATUS "raylib not found on system, downloading...")
include(FetchContent)
if(NOT DEFINED BUILD_EXAMPLES)
set(BUILD_EXAMPLES OFF CACHE BOOL "" FORCE)
endif()
if(NOT DEFINED BUILD_GAMES)
set(BUILD_GAMES OFF CACHE BOOL "" FORCE)
endif()
if(NOT DEFINED INCLUDE_EVERYTHING)
set(INCLUDE_EVERYTHING ON CACHE BOOL "" FORCE)
endif()
if(NOT DEFINED OPENGL_VERSION)
#set(OPENGL_VERSION OFF CACHE STRING "4.3" FORCE)
endif()
#set (CMAKE_INSTALL_PREFIX ${CMAKE_CURRENT_SOURCE_DIR}/install CACHE PATH "default install path" FORCE)
#set (CMAKE_INSTALL_LIBDIR ${CMAKE_BINARY_DIR}/lib CACHE PATH "default install path" FORCE)
#message(STATUS "CMAKE_INSTALL_LIBDIR: ${CMAKE_INSTALL_LIBDIR}")
FetchContent_Declare(raylib
GIT_REPOSITORY https://github.com/raysan5/raylib.git
GIT_TAG 5.0 # 08-12-2023
)
FetchContent_MakeAvailable(raylib)
set_target_properties(raylib
PROPERTIES
RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin"
LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib"
ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib"
PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin"
)
set(raylib_FOUND TRUE)
else()
find_package(raylib 5.0.0 REQUIRED)
endif()

11
cmake/lib/spdlog.cmake Normal file
View File

@ -0,0 +1,11 @@
cmake_minimum_required(VERSION 3.14.0)
include(FetchContent)
FetchContent_Declare(
spdlog
GIT_REPOSITORY https://github.com/gabime/spdlog.git
GIT_TAG 7e635fca68d014934b4af8a1cf874f63989352b7) # 2023-07-09
FetchContent_MakeAvailable(spdlog)
include_directories("${spdlog_SOURCE_DIR}")

View File

@ -0,0 +1,14 @@
cmake_minimum_required(VERSION 3.14.0)
include(FetchContent)
FetchContent_Declare(bs-thread-pool
GIT_REPOSITORY https://github.com/bshoshany/thread-pool.git
GIT_TAG 6790920f61ab3e928ddaea835ab6a803d467f41d # 2023-12-28
CONFIGURE_COMMAND ""
BUILD_COMMAND ""
INSTALL_COMMAND ""
TEST_COMMAND ""
)
FetchContent_MakeAvailable(bs-thread-pool)
include_directories("${bs-thread-pool_SOURCE_DIR}/include")

10
cmake/lib/vector.cmake Executable file
View File

@ -0,0 +1,10 @@
cmake_minimum_required(VERSION 3.14.0)
include(FetchContent)
FetchContent_Declare(
vector
GIT_REPOSITORY https://github.com/bensuperpc/vector.git
GIT_TAG 9febb9c84e7b73e6c621afd920dd3c8bb47a130c) # 2022-10-23
FetchContent_MakeAvailable(vector)

16
cmake/lib/zlib.cmake Executable file
View File

@ -0,0 +1,16 @@
cmake_minimum_required(VERSION 3.14.0)
include(FetchContent)
find_package(zlib QUIET)
set(ZLIB_LIBRARY zlib)
if (NOT zlib_FOUND)
FetchContent_Declare(
zlib
GIT_REPOSITORY https://github.com/madler/zlib.git
GIT_TAG v1.2.13
)
FetchContent_MakeAvailable(zlib)
endif()