-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCMakeLists.txt
49 lines (37 loc) · 1.25 KB
/
CMakeLists.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
cmake_minimum_required(VERSION 2.8)
project(graf)
# Includes directories
include_directories(${CMAKE_SOURCE_DIR}/include)
include_directories(${CMAKE_SOURCE_DIR}/../light/include)
include_directories(${CMAKE_SOURCE_DIR}/../red/include)
# Lib: OpenGL
find_package(OpenGL REQUIRED)
set(LIBS ${LIBS} ${OPENGL_LIBRARIES})
# Lib: light
set(LIBS ${LIBS} "${CMAKE_SOURCE_DIR}/../light/build/liblight.a")
# Lib: SFML
set(LIBS ${LIBS} "sfml-window")
set(LIBS ${LIBS} "sfml-graphics")
# Lib: Linux specific
if(UNIX)
# Lib: dl
set(LIBS ${LIBS} "dl")
# Lib: rt
set(LIBS ${LIBS} "rt")
endif(UNIX)
# Files belonging to the project
file(GLOB_RECURSE SOURCE_FILES "src/*.cpp")
file(GLOB_RECURSE SOURCE_FILES ${SOURCE_FILES} "src/gl3w/*.c")
file(GLOB_RECURSE SOURCE_FILES ${SOURCE_FILES} "test/*.cpp")
file(GLOB_RECURSE HEADER_FILES "include/*.hpp")
file(GLOB_RECURSE HEADER_FILES ${HEADER_FILES} "test/*.hpp")
# Compiler flags
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x -Wall")
# Release flags
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O3 -S -masm=intel")
# Debug mode
if(CMAKE_BUILD_TYPE MATCHES Debug)
add_definitions(-D_DEBUG)
endif(CMAKE_BUILD_TYPE MATCHES Debug)
add_executable(graf ${SOURCE_FILES} ${HEADER_FILES})
target_link_libraries(graf ${LIBS})