-
Notifications
You must be signed in to change notification settings - Fork 3
/
CMakeLists.txt
executable file
·34 lines (27 loc) · 1.02 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
cmake_minimum_required( VERSION 3.7 )
project( sheepndogs )
set(CMAKE_CXX_FLAGS "-std=gnu++0x -O3 -Wall ")
set(sheepndogs_includes "src/" "src/common" "src/wnd" "src/libkdtree/kdtree++")
include_directories(${sheepndogs_includes})
file( MAKE_DIRECTORY "build/temp" )
file(GLOB sheepndogs_src1 "src/*.cpp")
file(GLOB_RECURSE sheepndogs_src2
"src/common/*.cpp"
"src/wnd/*.cpp"
"src/Measure/*.cpp"
"src/Motion/*.cpp"
"src/Plotter/*.cpp"
"src/Sheep/*.cpp"
"src/Dogs/*.cpp"
"src/Simulation/*.cpp"
)
add_executable(sheepndogs ${sheepndogs_src1} ${sheepndogs_src2})
find_package(OpenGL REQUIRED)
find_package(GLUT REQUIRED)
find_package(GLEW REQUIRED)
find_package(GSL REQUIRED)
include_directories(${OPENGL_INCLUDE_DIRS} ${GLUT_INCLUDE_DIRS} ${GLEW_INCLUDE_DIRS})
target_link_libraries(sheepndogs ${OPENGL_LIBRARIES} ${GLUT_LIBRARY} ${GLEW_LIBRARIES}
GSL::gsl GSL::gslcblas m)
add_custom_target( cleantemp )
add_custom_command( TARGET cleantemp COMMAND rm -rf temp/*)