Mercurial > molko
view CMakeLists.txt @ 212:ddfe0a211169
rpg: experiment with map teleport
author | David Demelier <markand@malikania.fr> |
---|---|
date | Mon, 16 Nov 2020 14:26:13 +0100 |
parents | 78774cc2cc6b |
children | 64f24b482722 |
line wrap: on
line source
# # CMakeLists.txt -- CMake build system for molko # # Copyright (c) 2020 David Demelier <markand@malikania.fr> # # Permission to use, copy, modify, and/or distribute this software for any # purpose with or without fee is hereby granted, provided that the above # copyright notice and this permission notice appear in all copies. # # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # cmake_minimum_required(VERSION 3.17) project(molko) set(CMAKE_C_STANDARD 11) set(CMAKE_C_STANDARD_REQUIRED On) set(CMAKE_C_EXTENSIONS Off) set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake") if (CMAKE_C_COMPILER_ID MATCHES "AppleClang|Clang|GNU") set(CMAKE_C_FLAGS "-Wall -Wextra ${CMAKE_C_FLAGS}") endif () if (CMAKE_C_COMPILER_ID MATCHES "Clang") set(options "-fsanitize=address,undefined,integer") set(CMAKE_C_FLAGS_DEBUG "-fno-omit-frame-pointer ${options} ${CMAKE_C_FLAGS_DEBUG}") set(CMAKE_EXE_LINKER_FLAGS "${options} ${CMAKE_EXE_LINKER_FLAGS}") endif () option(MOLKO_WITH_DOXYGEN "Enable Doxygen build" On) option(MOLKO_WITH_DOC "Enable documentation (requires sphinx)" On) option(MOLKO_WITH_TESTS "Enable unit tests" On) option(MOLKO_WITH_EXAMPLES "Enable build of examples" On) set_property(GLOBAL PROPERTY USE_FOLDERS On) include(GNUInstallDirs) include(cmake/MolkoBuildAssets.cmake) include(cmake/MolkoDefineExecutable.cmake) include(cmake/MolkoDefineLibrary.cmake) include(cmake/MolkoDefineTest.cmake) find_package(Jansson REQUIRED) find_package(SDL2 REQUIRED COMPONENTS image mixer ttf) add_subdirectory(cmake) add_subdirectory(extern/libduktape) add_subdirectory(extern/libgreatest) add_subdirectory(extern/libsqlite) if (MOLKO_WITH_DOXYGEN) add_subdirectory(doxygen) endif () add_subdirectory(tools/bcc) add_subdirectory(tools/map) add_subdirectory(libcore) add_subdirectory(libui) add_subdirectory(librpg) add_subdirectory(libadventure) add_subdirectory(molko) add_subdirectory(molko-js) if (MOLKO_WITH_DOC) add_subdirectory(doc) endif () if (MOLKO_WITH_EXAMPLES) add_subdirectory(examples) endif () if (MOLKO_WITH_TESTS) enable_testing() add_subdirectory(tests) endif ()