modeco80
341f914e1d
Also fix some warnings and potential issues that building the entire EuropaTools codebase under those flags showed. Later on once we drop the libpixel and stbiw dependencies, we can probably turn on -Werror for release builds.
49 lines
1.2 KiB
CMake
Executable file
49 lines
1.2 KiB
CMake
Executable file
#
|
|
# EuropaTools
|
|
#
|
|
# (C) 2021-2025 modeco80 <lily.modeco80@protonmail.ch>
|
|
#
|
|
# SPDX-License-Identifier: MIT
|
|
#
|
|
|
|
cmake_minimum_required(VERSION 3.10)
|
|
|
|
# Prohibit in-source tree builds.
|
|
if(" ${CMAKE_SOURCE_DIR}" STREQUAL " ${CMAKE_BINARY_DIR}")
|
|
message(FATAL_ERROR "In-source builds are strictly prohibited.")
|
|
endif()
|
|
|
|
project(EuropaTools
|
|
VERSION 1.0.0
|
|
LANGUAGES C CXX
|
|
DESCRIPTION "Tools for working with LEC Europa based games (Star Wars: Starfighter & Star Wars: Jedi Starfighter)"
|
|
)
|
|
|
|
list(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake")
|
|
|
|
include(Policies)
|
|
include(ProjectFuncs)
|
|
include(CompilerFlags)
|
|
|
|
include(FetchContent)
|
|
|
|
# declare dependencies
|
|
FetchContent_Declare(indicators
|
|
GIT_REPOSITORY https://github.com/p-ranav/indicators.git
|
|
)
|
|
|
|
FetchContent_Declare(argparse
|
|
GIT_REPOSITORY https://github.com/p-ranav/argparse.git
|
|
)
|
|
|
|
# Future (maybe when libpixel has provisioning for installs :v)
|
|
#FetchContent_Declare(libpixel
|
|
# GIT_REPOSITORY https://github.com/modeco80/libpixel.git
|
|
# )
|
|
|
|
FetchContent_MakeAvailable(indicators argparse)
|
|
|
|
add_subdirectory(third_party/libpixel)
|
|
|
|
add_subdirectory(src/libeuropa)
|
|
add_subdirectory(src/tools)
|