-
Notifications
You must be signed in to change notification settings - Fork 19
Expand file tree
/
Copy pathCMakeLists.txt
More file actions
64 lines (50 loc) · 1.41 KB
/
CMakeLists.txt
File metadata and controls
64 lines (50 loc) · 1.41 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
cmake_minimum_required(VERSION 3.12)
option(USE_STATIC_LIB "compile delfem2 as a static library?" OFF)
########################################
enable_language(CXX)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED TRUE)
IF (MSVC)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /W4")
ELSE ()
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -g")
ENDIF ()
#########################################
project(01_drawrect)
# glfw
set(CMAKE_PREFIX_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../3rd_party/libglfw)
find_package(glfw3 REQUIRED)
# opengl
find_package(OpenGL REQUIRED)
# dfm2
IF (USE_STATIC_LIB)
add_definitions(-DDFM2_STATIC_LIBRARY=ON)
if (MSVC)
set(DFM2_LIBRARY
${PROJECT_SOURCE_DIR}/../dfm2_static_glfwnew/dfm2_static_glfwnew.lib)
else ()
set(DFM2_LIBRARY
${PROJECT_SOURCE_DIR}/../dfm2_static_glfwnew/libdfm2_static_glfwnew.a)
endif ()
endif ()
set(DELFEM2_INCLUDE_DIR "../../include")
# glad
set(GLAD_INCLUDE_DIR "../../3rd_party/glad4/include")
get_filename_component(GLAD_INCLUDE_DIR ${GLAD_INCLUDE_DIR} ABSOLUTE)
##########################
include_directories(
${GLAD_INCLUDE_DIR}
${DELFEM2_INCLUDE_DIR}
)
set(3RD_PARTY "../../3rd_party")
add_executable(${PROJECT_NAME}
${3RD_PARTY}/glad4/include/glad/glad.h
${3RD_PARTY}/glad4/src/glad.c
main.cpp
)
target_link_libraries(${PROJECT_NAME}
${DFM2_LIBRARY}
OpenGL::GL
glfw
${CMAKE_DL_LIBS}
)