90 lines
2.0 KiB
CMake
90 lines
2.0 KiB
CMake
# Build Options
|
|
set(CLIENT_BUILD_WITH_STEAM false)
|
|
|
|
#cmake_policy(SET CMP0169 OLD)
|
|
|
|
cmake_minimum_required(VERSION 3.18..3.29)
|
|
project(ReCaveGame
|
|
VERSION 1.0
|
|
LANGUAGES CXX)
|
|
|
|
|
|
if (PROJECT_SOURCE_DIR STREQUAL PROJECT_BINARY_DIR)
|
|
message(FATAL_ERROR "In-source builds are not allowed")
|
|
endif()
|
|
|
|
set(CMAKE_CXX_STANDARD 20)
|
|
|
|
# Set for profiling
|
|
|
|
if (UNIX)
|
|
# TODO: Enable ALL optimization flags for RELEASE builds.
|
|
|
|
#set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O3")
|
|
#set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -floop-nest-optimize -funroll-loops")
|
|
endif()
|
|
|
|
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
|
|
|
|
#if(CMAKE_BUILD_TYPE EQUAL "Release")
|
|
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}/lib")
|
|
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}/lib")
|
|
#endif()
|
|
include(cmake/CPM.cmake)
|
|
|
|
CPMAddPackage(
|
|
NAME mcolor
|
|
URL https://git.redacted.cc/maxine/mcolor/archive/Prerelease-6.3.zip
|
|
)
|
|
|
|
CPMAddPackage(
|
|
NAME jjx
|
|
URL https://git.redacted.cc/josh/jjx/archive/Prerelease-2.zip
|
|
)
|
|
|
|
CPMAddPackage(
|
|
NAME jlog
|
|
URL https://git.redacted.cc/josh/jlog/archive/Prerelease-17.zip
|
|
)
|
|
|
|
CPMAddPackage(
|
|
NAME J3ML
|
|
URL https://git.redacted.cc/josh/j3ml/archive/3.4.5.zip
|
|
)
|
|
|
|
CPMAddPackage(
|
|
NAME jstick
|
|
URL https://git.redacted.cc/josh/jstick/archive/Prerelease-2.zip
|
|
)
|
|
|
|
CPMAddPackage(
|
|
NAME ReWindow
|
|
URL https://git.redacted.cc/Redacted/ReWindow/archive/Prerelease-32.zip
|
|
)
|
|
|
|
CPMAddPackage(
|
|
NAME JGL
|
|
URL https://git.redacted.cc/josh/JGL/archive/Prerelease-52.zip
|
|
)
|
|
|
|
CPMAddPackage(
|
|
NAME JUI
|
|
URL https://git.redacted.cc/josh/ReJUI/archive/Prerelease-5.14.zip
|
|
)
|
|
|
|
CPMAddPackage(
|
|
NAME jjx
|
|
URL https://git.redacted.cc/josh/jjx/archive/Prerelease-2.zip
|
|
)
|
|
|
|
CPMAddPackage(
|
|
NAME Sockets
|
|
URL https://git.redacted.cc/josh/Sockets/archive/Prerelease-3.1.zip
|
|
)
|
|
|
|
add_subdirectory(Core)
|
|
add_subdirectory(Server)
|
|
add_subdirectory(Client)
|
|
|
|
add_subdirectory(ClientApp)
|
|
add_subdirectory(ServerApp) |