mirror of
https://github.com/libSDL2pp/libSDL2pp.git
synced 2025-09-08 14:58:11 -04:00

For now the only thing checked is that header files compile by themselves, e.g. includes and forward declarations in them are complete and they do not require extra includes
52 lines
1.1 KiB
CMake
52 lines
1.1 KiB
CMake
PROJECT(libSDL2pp)
|
|
|
|
# meta
|
|
CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
|
|
|
|
SET(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake)
|
|
|
|
# depends
|
|
FIND_PACKAGE(SDL2 REQUIRED)
|
|
|
|
# definitions
|
|
ADD_DEFINITIONS(-std=c++11 -Wall -Wextra -Werror -pedantic)
|
|
|
|
INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR})
|
|
INCLUDE_DIRECTORIES(${SDL2_INCLUDE_DIR})
|
|
|
|
# sources
|
|
SET(LIBRARY_SOURCES
|
|
SDL2pp/Exception.cc
|
|
SDL2pp/SDL.cc
|
|
SDL2pp/Window.cc
|
|
SDL2pp/Renderer.cc
|
|
SDL2pp/Texture.cc
|
|
SDL2pp/Rect.cc
|
|
SDL2pp/Point.cc
|
|
)
|
|
|
|
SET(LIBRARY_HEADERS
|
|
)
|
|
|
|
IF(CMAKE_SOURCE_DIR STREQUAL PROJECT_SOURCE_DIR)
|
|
MESSAGE(STATUS "libSDL2pp standalone build")
|
|
|
|
# library
|
|
ADD_LIBRARY(SDL2pp SHARED ${LIBRARY_SOURCES})
|
|
TARGET_LINK_LIBRARIES(SDL2pp ${SDL2_LIBRARY})
|
|
|
|
# demos and tests
|
|
ADD_SUBDIRECTORY(demos)
|
|
ADD_SUBDIRECTORY(tests)
|
|
ELSE(CMAKE_SOURCE_DIR STREQUAL PROJECT_SOURCE_DIR)
|
|
MESSAGE(STATUS "libSDL2pp bundled build")
|
|
|
|
# library
|
|
ADD_LIBRARY(SDL2pp STATIC ${LIBRARY_SOURCES})
|
|
|
|
# provide variables to parent
|
|
SET(SDL2PP_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR} ${SDL2_INCLUDE_DIR} PARENT_SCOPE)
|
|
SET(SDL2PP_LIBRARIES SDL2pp ${SDL2_LIBRARY} PARENT_SCOPE)
|
|
ENDIF(CMAKE_SOURCE_DIR STREQUAL PROJECT_SOURCE_DIR)
|
|
|