-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathCMakeLists.txt
41 lines (32 loc) · 1.13 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
cmake_minimum_required(VERSION 3.10)
if (APPLE)
message("DETECTED MACOS")
set (CMAKE_CXX_STANDARD 11)
endif()
project(graphviewer)
if(NOT DEFINED CMAKE_SUPPRESS_DEVELOPER_WARNINGS)
set(CMAKE_SUPPRESS_DEVELOPER_WARNINGS 1 CACHE INTERNAL "No dev warnings")
endif()
find_library(SFML_LIB NAMES sfml-graphics sfml-window sfml-system)
if(NOT SFML_LIB)
message("DID NOT FIND SFML, COMPILING IT")
add_subdirectory(SFML)
endif()
include_directories(SFML/include)
set( CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR}/lib )
set( CMAKE_ARCHIVE_OUTPUT_DIRECTORY_RELEASE ${CMAKE_ARCHIVE_OUTPUT_DIRECTORY})
include_directories(include)
add_library(graphviewer STATIC
src/graphviewer.cpp
src/node.cpp
src/edge.cpp
src/lines.cpp
src/fpsmonitor.cpp
)
target_compile_options(graphviewer PRIVATE ${CMAKE_CXX_LIB})
target_link_libraries(${PROJECT_NAME} sfml-graphics sfml-window sfml-system)
if (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
message("Detected Linux, linking some libraries for GraphViewerCpp to work")
target_link_libraries(${PROJECT_NAME} pthread)
target_link_libraries(${PROJECT_NAME} X11)
endif()