Skip to content

Commit f65c455

Browse files
committed
Split PDS in PDS and AzelLib
1 parent d9626d2 commit f65c455

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

76 files changed

+134
-55
lines changed
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.

AzelLib/CMakeLists.txt

Lines changed: 108 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,108 @@
1+
cmake_minimum_required(VERSION 3.9)
2+
3+
include_directories("." "${THIRD_PARTY}/imgui" "${THIRD_PARTY}/SDL2/include" "${THIRD_PARTY}/imgui/examples" "${THIRD_PARTY}/imgui/examples/libs/gl3w" "${THIRD_PARTY}/soloud/soloud/include")
4+
5+
set(CMAKE_CXX_STANDARD 17)
6+
set(CMAKE_CXX_STANDARD_REQUIRED ON)
7+
set(CMAKE_CXX_EXTENSIONS OFF)
8+
9+
file(GLOB SRC_ROOT
10+
"*.cpp"
11+
"*.h"
12+
)
13+
14+
file(GLOB_RECURSE SRC_KERNEL
15+
"kernel/*.cpp"
16+
"kernel/*.h"
17+
)
18+
19+
file(GLOB_RECURSE SRC_FIELD_A3
20+
"field/field_a3/*.cpp"
21+
"field/field_a3/*.h"
22+
)
23+
24+
set(SOURCES
25+
${SOURCES}
26+
${SRC_KERNEL}
27+
${SRC_ROOT}
28+
${SRC_FIELD_A3}
29+
30+
${THIRD_PARTY}/imgui/imgui.cpp
31+
${THIRD_PARTY}/imgui/imgui_draw.cpp
32+
${THIRD_PARTY}/imgui/imgui_widgets.cpp
33+
${THIRD_PARTY}/imgui/examples/imgui_impl_opengl3.cpp
34+
${THIRD_PARTY}/imgui/examples/imgui_impl_sdl.cpp
35+
)
36+
37+
source_group("src" FILES ${SRC_ROOT})
38+
source_group("src\\kernel" FILES ${SRC_KERNEL})
39+
source_group("src\\field\\field_a3" FILES ${SRC_FIELD_A3})
40+
41+
if (MSVC)
42+
set(SOURCES
43+
${SOURCES}
44+
${THIRD_PARTY}/imgui/examples/libs/gl3w/GL/gl3w.c
45+
)
46+
endif()
47+
48+
if( MSVC )
49+
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DUSE_SDL -std=c++0x -D_HAS_EXCEPTIONS=0 /GR-")
50+
# Eliminate unreferenced functions and data
51+
# Perform identical COMDAT folding
52+
#set( REL_LINKER_FLAGS "/opt:ref /opt:icf /nodefaultlib:msvcrt" )
53+
#
54+
## Make console app
55+
#set( CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} /subsystem:console" )
56+
#
57+
## String pooling
58+
## Function-level linking
59+
## Disable run-time type information
60+
#set( ALL_C_FLAGS "/GF /Gy /GR-" )
61+
#
62+
## Avoid CRT DLL dependancies in release builds
63+
#set( REL_C_FLAGS "/MT" )
64+
#
65+
## Disable warnings for unsecure CRT functions from VC8+
66+
#if( MSVC_VERSION GREATER 1399 )
67+
# set( ALL_C_FLAGS "${ALL_C_FLAGS} /wd4996" )
68+
#endif( MSVC_VERSION GREATER 1399 )
69+
70+
# The CMake configurations set /GR and /MD by default, which conflict with our settings.
71+
#string(REPLACE "/MD " " " CMAKE_CXX_FLAGS_RELEASE ${CMAKE_CXX_FLAGS_RELEASE} )
72+
#string(REPLACE "/MD " " " CMAKE_CXX_FLAGS_MINSIZEREL ${CMAKE_CXX_FLAGS_MINSIZEREL} )
73+
#string(REPLACE "/MD " " " CMAKE_CXX_FLAGS_RELWITHDEBINFO ${CMAKE_CXX_FLAGS_RELWITHDEBINFO} )
74+
#string(REPLACE "/MD " " " CMAKE_C_FLAGS_RELEASE ${CMAKE_C_FLAGS_RELEASE} )
75+
#string(REPLACE "/MD " " " CMAKE_C_FLAGS_MINSIZEREL ${CMAKE_C_FLAGS_MINSIZEREL} )
76+
#string(REPLACE "/MD " " " CMAKE_C_FLAGS_RELWITHDEBINFO ${CMAKE_C_FLAGS_RELWITHDEBINFO} )
77+
#string(REPLACE " /GR" " " CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS} )
78+
endif( MSVC )
79+
80+
#set( CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} ${REL_LINKER_FLAGS}" )
81+
#set( CMAKE_EXE_LINKER_FLAGS_MINSIZEREL "${CMAKE_EXE_LINKER_FLAGS_MINSIZEREL} ${REL_LINKER_FLAGS}" )
82+
#set( CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO "${CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO} ${REL_LINKER_FLAGS}" )
83+
#
84+
#set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${ALL_C_FLAGS}" )
85+
#set( CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} ${REL_C_FLAGS}" )
86+
#set( CMAKE_C_FLAGS_MINSIZEREL "${CMAKE_C_FLAGS_MINSIZEREL} ${REL_C_FLAGS}" )
87+
#set( CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} ${REL_C_FLAGS}" )
88+
#set( CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} ${DEB_C_FLAGS} -D_DEBUG" )
89+
#
90+
#set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${ALL_C_FLAGS}" )
91+
#set( CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} ${REL_C_FLAGS}" )
92+
#set( CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL} ${REL_C_FLAGS}" )
93+
#set( CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} ${REL_C_FLAGS}" )
94+
#set( CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} ${DEB_C_FLAGS} -D_DEBUG" )
95+
#
96+
#STRING(REGEX REPLACE "/EH[a-z]+" "" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS}) # Disable C++ exceptions
97+
#STRING(REGEX REPLACE "/GR" "" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS}) # Disable RTTI
98+
99+
# Always generate debug info
100+
if(MSVC)
101+
#set( CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} /debug" )
102+
#set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /Zi /GR-")
103+
else()
104+
#set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g")
105+
endif()
106+
107+
108+
add_library (AzelLib ${SOURCES})
File renamed without changes.

0 commit comments

Comments
 (0)