1
0
mirror of https://github.com/rwengine/openrw.git synced 2024-09-15 15:02:34 +02:00
openrw/CMakeLists.txt

82 lines
1.9 KiB
CMake
Raw Normal View History

cmake_minimum_required(VERSION 2.8)
2014-01-26 04:45:55 +01:00
project(OpenRW)
2013-06-30 01:05:04 +02:00
#
# Options
#
2016-04-15 00:50:52 +02:00
# Global Build Configuration
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DRW_DEBUG=1")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wall -pthread -Wextra -Wpedantic")
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/modules")
2016-04-12 00:56:18 +02:00
# Optional components
option(BUILD_TESTS "Build test suite")
option(BUILD_VIEWER "Build GUI data viewer")
option(BUILD_SCRIPT_TOOL "Build script decompiler tool")
# Compile-time Options & Features
option(ENABLE_SCRIPT_DEBUG "Enable verbose script execution")
option(ENABLE_PROFILING "Enable detailed profiling metrics")
#
# Build configuration
#
if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
add_definitions(-DRW_LINUX=1)
2016-05-20 16:24:51 +02:00
elseif (CMAKE_SYSTEM_NAME STREQUAL "Darwin")
add_definitions(-DRW_OSX=1)
else ()
message(FATAL_ERROR "Unknown platform \"${CMAKE_SYSTEM_NAME}\". please update CMakeLists.txt.")
endif ()
if (${CMAKE_CXX_COMPILER_ID} STREQUAL Clang)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-gnu-array-member-paren-init")
endif()
2014-05-25 23:30:50 +02:00
# Make GLM use radians
add_definitions(-DGLM_FORCE_RADIANS)
IF(${ENABLE_PROFILING})
add_definitions(-DRENDER_PROFILER=0 -DRW_PROFILER=1)
2015-04-12 20:47:47 +02:00
else()
add_definitions(-DRENDER_PROFILER=0 -DRW_PROFILER=0)
2015-04-12 20:47:47 +02:00
ENDIF()
IF(${ENABLE_SCRIPT_DEBUG})
add_definitions(-DSCM_DEBUG_INSTRUCTIONS)
ENDIF()
# Find dependancies
IF(APPLE)
set(OPENRW_PLATFORM_LIBS iconv)
ENDIF()
2014-08-16 00:20:13 +02:00
find_package(OpenGL REQUIRED)
find_package(Bullet REQUIRED)
find_package(SFML 2 COMPONENTS system window audio graphics network REQUIRED)
find_package(MAD REQUIRED)
# External-internal dependencies
add_subdirectory(cmake/external)
#
# Components
#
add_subdirectory(rwlib)
add_subdirectory(rwengine)
add_subdirectory(rwgame)
IF(${BUILD_SCRIPT_TOOL})
2014-07-19 09:57:36 +02:00
add_subdirectory(scripttool)
ENDIF()
IF(${BUILD_VIEWER})
add_subdirectory(rwviewer)
ENDIF()
IF(${BUILD_TESTS})
add_subdirectory(tests)
ENDIF()