-
Notifications
You must be signed in to change notification settings - Fork 7
Expand file tree
/
Copy pathCMakeLists.txt
More file actions
74 lines (61 loc) · 2.01 KB
/
CMakeLists.txt
File metadata and controls
74 lines (61 loc) · 2.01 KB
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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
cmake_minimum_required(VERSION 3.2)
project(nullspace VERSION 0.0.1 LANGUAGES CXX)
set(CMAKE_CXX_STANDARD 14)
set(IMGUI_SOURCES
lib/imgui/imgui.cpp
lib/imgui/imgui_demo.cpp
lib/imgui/imgui_draw.cpp
lib/imgui/imgui_tables.cpp
lib/imgui/imgui_widgets.cpp
lib/imgui/backends/imgui_impl_glfw.cpp
lib/imgui/backends/imgui_impl_opengl3.cpp)
if(WIN32)
add_definitions(-D_CRT_SECURE_NO_WARNINGS -D_GLFW_WIN32 -D_MBCS -DNDEBUG -DNOMINMAX -DWIN32_LEAN_AND_MEAN)
set(GLFW_SOURCES
lib/glfw/src/context.cpp
lib/glfw/src/egl_context.cpp
lib/glfw/src/init.cpp
lib/glfw/src/input.cpp
lib/glfw/src/monitor.cpp
lib/glfw/src/osmesa_context.cpp
lib/glfw/src/vulkan.cpp
lib/glfw/src/wgl_context.cpp
lib/glfw/src/win32_init.cpp
lib/glfw/src/win32_joystick.cpp
lib/glfw/src/win32_monitor.cpp
lib/glfw/src/win32_thread.cpp
lib/glfw/src/win32_time.cpp
lib/glfw/src/win32_window.cpp
lib/glfw/src/window.cpp)
elseif(UNIX)
add_definitions(-DNDEBUG -DIMGUI_IMPL_OPENGL_LOADER_GLAD)
endif()
include(GNUInstallDirs)
file(GLOB_RECURSE SOURCES src/*.cpp)
list(APPEND SOURCES lib/glad/src/glad.cpp)
list(APPEND SOURCES ${GLFW_SOURCES})
list(APPEND SOURCES ${IMGUI_SOURCES})
add_executable(nullspace ${SOURCES})
target_include_directories(nullspace PRIVATE
src
lib
lib/imgui
lib/glad/include
lib/glfw/include)
if(WIN32)
target_link_libraries(nullspace ws2_32)
else()
find_package(glfw3 3.3 REQUIRED)
target_link_libraries(nullspace glfw dl -pthread)
endif()
set(CPACK_PACKAGE_NAME "nullspace")
set(CPACK_PACKAGE_VENDOR "plushmonkey")
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "nullspace - SubSpace client")
set(CPACK_PACKAGE_INSTALL_DIRECTORY "nullspace")
set(CMAKE_INSTALL_PREFIX ".")
install(TARGETS nullspace
CONFIGURATIONS Debug
RUNTIME DESTINATION Debug)
install(TARGETS nullspace
CONFIGURATIONS Release
RUNTIME DESTINATION Release)