mirror of
https://github.com/zhenyan121/Cubed.git
synced 2026-08-09 02:07:04 +08:00
build(cmake): modularize build configuration
This commit is contained in:
270
CMakeLists.txt
270
CMakeLists.txt
@@ -1,4 +1,4 @@
|
|||||||
cmake_minimum_required(VERSION 3.14...3.24)
|
cmake_minimum_required(VERSION 3.21)
|
||||||
project(Cubed LANGUAGES C CXX)
|
project(Cubed LANGUAGES C CXX)
|
||||||
|
|
||||||
set(CMAKE_CXX_STANDARD 23)
|
set(CMAKE_CXX_STANDARD 23)
|
||||||
@@ -6,194 +6,104 @@ set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|||||||
set(CMAKE_CXX_EXTENSIONS OFF)
|
set(CMAKE_CXX_EXTENSIONS OFF)
|
||||||
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
|
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
|
||||||
|
|
||||||
if(NOT CMAKE_BUILD_TYPE)
|
if(NOT CMAKE_CONFIGURATION_TYPES
|
||||||
set(CMAKE_BUILD_TYPE Debug)
|
AND NOT CMAKE_BUILD_TYPE)
|
||||||
|
|
||||||
|
set(CMAKE_BUILD_TYPE Debug CACHE STRING "" FORCE)
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/${PROJECT_NAME})
|
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/${PROJECT_NAME})
|
||||||
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/${PROJECT_NAME})
|
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/${PROJECT_NAME})
|
||||||
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
|
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
|
||||||
|
|
||||||
if(MSVC)
|
list(APPEND CMAKE_MODULE_PATH
|
||||||
add_compile_options(/utf-8)
|
"${CMAKE_CURRENT_SOURCE_DIR}/cmake"
|
||||||
endif()
|
"${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules"
|
||||||
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules")
|
|
||||||
find_package(OpenGL REQUIRED)
|
|
||||||
find_package(Protobuf REQUIRED)
|
|
||||||
find_package(absl REQUIRED)
|
|
||||||
find_package(zstd REQUIRED)
|
|
||||||
|
|
||||||
if (UNIX AND NOT APPLE)
|
|
||||||
find_package(Freetype REQUIRED)
|
|
||||||
find_package(PkgConfig REQUIRED)
|
|
||||||
pkg_check_modules(EGL REQUIRED egl)
|
|
||||||
pkg_check_modules(Wayland REQUIRED wayland-client wayland-egl)
|
|
||||||
find_package(glfw3 REQUIRED)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
add_library(glad STATIC third_party/glad/src/glad.c)
|
|
||||||
target_include_directories(glad PUBLIC third_party/glad/include)
|
|
||||||
|
|
||||||
include(FetchContent)
|
|
||||||
|
|
||||||
if (WIN32)
|
|
||||||
FetchContent_Declare(
|
|
||||||
glfw
|
|
||||||
GIT_REPOSITORY https://github.com/glfw/glfw.git
|
|
||||||
GIT_TAG 3.4
|
|
||||||
)
|
|
||||||
|
|
||||||
set(GLFW_BUILD_DOCS OFF CACHE BOOL "" FORCE)
|
|
||||||
set(GLFW_BUILD_TESTS OFF CACHE BOOL "" FORCE)
|
|
||||||
set(GLFW_BUILD_EXAMPLES OFF CACHE BOOL "" FORCE)
|
|
||||||
set(GLFW_INSTALL OFF CACHE BOOL "" FORCE)
|
|
||||||
set(GLFW_VULKAN_STATIC ON CACHE BOOL "" FORCE)
|
|
||||||
set(GLFW_STATIC ON CACHE BOOL "" FORCE)
|
|
||||||
|
|
||||||
FetchContent_MakeAvailable(glfw)
|
|
||||||
|
|
||||||
FetchContent_Declare(
|
|
||||||
freetype
|
|
||||||
GIT_REPOSITORY https://gitlab.freedesktop.org/freetype/freetype.git
|
|
||||||
GIT_TAG VER-2-14-3
|
|
||||||
)
|
|
||||||
FetchContent_MakeAvailable(freetype)
|
|
||||||
if(TARGET freetype)
|
|
||||||
add_library(Freetype::Freetype ALIAS freetype)
|
|
||||||
endif()
|
|
||||||
set(_BUILD_SHARED_LIBS_SAVED ${BUILD_SHARED_LIBS})
|
|
||||||
set(BUILD_SHARED_LIBS ON)
|
|
||||||
|
|
||||||
FetchContent_Declare(
|
|
||||||
onetbb
|
|
||||||
GIT_REPOSITORY https://github.com/uxlfoundation/oneTBB.git
|
|
||||||
GIT_TAG v2023.0.0
|
|
||||||
)
|
|
||||||
set(BUILD_TESTING OFF CACHE BOOL "Build tests" FORCE)
|
|
||||||
set(TBB_TEST OFF CACHE BOOL "Build TBB tests" FORCE)
|
|
||||||
FetchContent_MakeAvailable(onetbb)
|
|
||||||
|
|
||||||
set(BUILD_SHARED_LIBS ${_BUILD_SHARED_LIBS_SAVED})
|
|
||||||
unset(_BUILD_SHARED_LIBS_SAVED)
|
|
||||||
|
|
||||||
endif()
|
|
||||||
|
|
||||||
FetchContent_Declare(
|
|
||||||
glm
|
|
||||||
GIT_REPOSITORY https://github.com/g-truc/glm.git
|
|
||||||
GIT_TAG 1.0.3
|
|
||||||
|
|
||||||
)
|
)
|
||||||
FetchContent_MakeAvailable(glm)
|
|
||||||
FetchContent_Declare(
|
|
||||||
soil2
|
|
||||||
GIT_REPOSITORY https://github.com/SpartanJ/SOIL2.git
|
|
||||||
GIT_TAG 1.31
|
|
||||||
|
|
||||||
)
|
include(Dependencies)
|
||||||
FetchContent_MakeAvailable(soil2)
|
|
||||||
FetchContent_Declare(
|
add_subdirectory(third_party/glad)
|
||||||
tomlplusplus
|
|
||||||
GIT_REPOSITORY https://github.com/marzer/tomlplusplus.git
|
|
||||||
GIT_TAG v3.4.0
|
|
||||||
)
|
|
||||||
FetchContent_MakeAvailable(tomlplusplus)
|
|
||||||
|
|
||||||
add_subdirectory(third_party/imgui)
|
add_subdirectory(third_party/imgui)
|
||||||
|
|
||||||
|
add_executable(${PROJECT_NAME})
|
||||||
|
|
||||||
|
add_subdirectory(src)
|
||||||
|
|
||||||
add_executable(${PROJECT_NAME}
|
|
||||||
src/main.cpp
|
|
||||||
src/app.cpp
|
|
||||||
src/debug_collector.cpp
|
|
||||||
src/camera.cpp
|
|
||||||
src/config.cpp
|
|
||||||
src/dev_panel.cpp
|
|
||||||
src/gameplay/biome.cpp
|
|
||||||
src/gameplay/chunk_generator.cpp
|
|
||||||
src/gameplay/tree.cpp
|
|
||||||
src/input.cpp
|
|
||||||
src/map_table.cpp
|
|
||||||
src/renderer.cpp
|
|
||||||
src/shader.cpp
|
|
||||||
src/texture_manager.cpp
|
|
||||||
src/tools/cubed_random.cpp
|
|
||||||
src/tools/math_tools.cpp
|
|
||||||
src/tools/shader_tools.cpp
|
|
||||||
src/tools/font.cpp
|
|
||||||
src/tools/perlin_noise.cpp
|
|
||||||
src/ui/text.cpp
|
|
||||||
src/window.cpp
|
|
||||||
src/gameplay/builders/biome_builder.cpp
|
|
||||||
src/gameplay/builders/plain_builder.cpp
|
|
||||||
src/gameplay/builders/mountain_builder.cpp
|
|
||||||
src/gameplay/builders/river_builder.cpp
|
|
||||||
src/gameplay/builders/desert_builder.cpp
|
|
||||||
src/gameplay/builders/forest_builder.cpp
|
|
||||||
src/gameplay/cave_carver.cpp
|
|
||||||
src/gameplay/cave_path.cpp
|
|
||||||
src/gameplay/builders/snowy_plain_builder.cpp
|
|
||||||
src/gameplay/river_worm.cpp
|
|
||||||
src/gameplay/river_path.cpp
|
|
||||||
src/gameplay/block.cpp
|
|
||||||
src/gameplay/vertex_data.cpp
|
|
||||||
src/gameplay/builders/ocean_builder.cpp
|
|
||||||
src/gameplay/network_server.cpp
|
|
||||||
src/gameplay/server_world.cpp
|
|
||||||
src/gameplay/client_world.cpp
|
|
||||||
src/gameplay/server_chunk.cpp
|
|
||||||
src/gameplay/client_chunk.cpp
|
|
||||||
src/gameplay/server_player.cpp
|
|
||||||
src/gameplay/client_player.cpp
|
|
||||||
src/gameplay/session.cpp
|
|
||||||
src/gameplay/network_client.cpp
|
|
||||||
)
|
|
||||||
file(GLOB_RECURSE PROTO_FILES
|
file(GLOB_RECURSE PROTO_FILES
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/src/proto/*.proto
|
${CMAKE_CURRENT_SOURCE_DIR}/src/proto/*.proto
|
||||||
)
|
)
|
||||||
|
|
||||||
protobuf_generate(
|
protobuf_generate(
|
||||||
TARGET ${PROJECT_NAME}
|
TARGET ${PROJECT_NAME}
|
||||||
LANGUAGE cpp
|
LANGUAGE cpp
|
||||||
PROTOS ${PROTO_FILES}
|
PROTOS ${PROTO_FILES}
|
||||||
IMPORT_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/src/proto
|
IMPORT_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/src/proto
|
||||||
)
|
)
|
||||||
if(CMAKE_BUILD_TYPE STREQUAL "Debug")
|
|
||||||
message(STATUS "Building with AddressSanitizer enabled for target: ${PROJECT_NAME}")
|
|
||||||
|
|
||||||
target_compile_options(${PROJECT_NAME} PRIVATE
|
target_compile_options(${PROJECT_NAME}
|
||||||
#-fsanitize=address
|
PRIVATE
|
||||||
#-fsanitize=thread
|
$<$<CONFIG:Debug>:-fno-omit-frame-pointer>
|
||||||
-fno-omit-frame-pointer
|
$<$<CONFIG:Debug>:-g>
|
||||||
-g
|
#$<$<CONFIG:Debug>:-fsanitize=address>
|
||||||
)
|
#$<$<CONFIG:Debug>:-fsanitize=thread>
|
||||||
|
|
||||||
target_link_options(${PROJECT_NAME} PRIVATE
|
$<$<CXX_COMPILER_ID:GNU,Clang>:-Wall>
|
||||||
#-fsanitize=address
|
$<$<CXX_COMPILER_ID:GNU,Clang>:-Wextra>
|
||||||
#-fsanitize=thread
|
$<$<CXX_COMPILER_ID:GNU,Clang>:-Wpedantic>
|
||||||
)
|
|
||||||
|
|
||||||
target_compile_definitions(${PROJECT_NAME} PRIVATE DEBUG_MODE)
|
$<$<CXX_COMPILER_ID:MSVC>:/utf-8>
|
||||||
target_compile_definitions(${PROJECT_NAME} PRIVATE
|
$<$<CXX_COMPILER_ID:MSVC>:/W4>
|
||||||
ASSETS_PATH="${CMAKE_SOURCE_DIR}/assets/"
|
)
|
||||||
|
|
||||||
|
target_link_options(${PROJECT_NAME}
|
||||||
|
PRIVATE
|
||||||
|
#$<$<CONFIG:Debug>:-fsanitize=address>
|
||||||
|
#$<$<CONFIG:Debug>:-fsanitize=thread>
|
||||||
|
)
|
||||||
|
|
||||||
|
target_compile_definitions(${PROJECT_NAME}
|
||||||
|
PRIVATE
|
||||||
|
ASIO_STANDALONE
|
||||||
|
ASIO_NO_DEPRECATED
|
||||||
|
$<$<CONFIG:Debug>:DEBUG_MODE>
|
||||||
|
)
|
||||||
|
|
||||||
|
if(CMAKE_CONFIGURATION_TYPES)
|
||||||
|
# Visual Studio / Xcode multi-configuration generator
|
||||||
|
target_compile_definitions(${PROJECT_NAME}
|
||||||
|
PRIVATE
|
||||||
|
ASSETS_PATH="$<$<CONFIG:Debug>:${PROJECT_SOURCE_DIR}/assets/>$<$<NOT:$<CONFIG:Debug>>:./assets/>"
|
||||||
)
|
)
|
||||||
else()
|
else()
|
||||||
target_compile_definitions(${PROJECT_NAME} PRIVATE
|
# Ninja / Makefiles single-configuration generator
|
||||||
ASSETS_PATH="./assets/"
|
if(CMAKE_BUILD_TYPE STREQUAL "Debug")
|
||||||
)
|
target_compile_definitions(${PROJECT_NAME}
|
||||||
|
PRIVATE
|
||||||
|
ASSETS_PATH="${PROJECT_SOURCE_DIR}/assets/"
|
||||||
|
)
|
||||||
|
else()
|
||||||
|
target_compile_definitions(${PROJECT_NAME}
|
||||||
|
PRIVATE
|
||||||
|
ASSETS_PATH="./assets/"
|
||||||
|
)
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_SOURCE_DIR}/include)
|
|
||||||
target_include_directories(${PROJECT_NAME} PRIVATE
|
target_include_directories(${PROJECT_NAME}
|
||||||
${CMAKE_SOURCE_DIR}/third_party/asio/include
|
PRIVATE
|
||||||
|
${PROJECT_SOURCE_DIR}/include
|
||||||
|
${PROJECT_SOURCE_DIR}/third_party/asio/include
|
||||||
|
|
||||||
|
${PROJECT_BINARY_DIR}
|
||||||
|
${PROJECT_BINARY_DIR}/src
|
||||||
|
|
||||||
)
|
)
|
||||||
|
|
||||||
target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/src)
|
|
||||||
target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
|
|
||||||
target_compile_definitions(${PROJECT_NAME} PRIVATE
|
|
||||||
ASIO_STANDALONE
|
|
||||||
ASIO_NO_DEPRECATED
|
|
||||||
)
|
|
||||||
target_link_libraries(${PROJECT_NAME}
|
target_link_libraries(${PROJECT_NAME}
|
||||||
PRIVATE
|
PRIVATE
|
||||||
glfw
|
glfw
|
||||||
@@ -209,42 +119,16 @@ target_link_libraries(${PROJECT_NAME}
|
|||||||
absl::log
|
absl::log
|
||||||
absl::check
|
absl::check
|
||||||
zstd::zstd
|
zstd::zstd
|
||||||
|
|
||||||
)
|
)
|
||||||
|
|
||||||
if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU" OR CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
|
if(WIN32)
|
||||||
# target_link_libraries(${PROJECT_NAME} PRIVATE tbb)
|
add_custom_command(
|
||||||
endif()
|
TARGET ${PROJECT_NAME}
|
||||||
|
POST_BUILD
|
||||||
if (UNIX AND NOT APPLE)
|
COMMAND ${CMAKE_COMMAND} -E copy_if_different
|
||||||
target_link_libraries(${PROJECT_NAME}
|
$<TARGET_RUNTIME_DLLS:${PROJECT_NAME}>
|
||||||
PRIVATE
|
$<TARGET_FILE_DIR:${PROJECT_NAME}>
|
||||||
${EGL_LIBRARIES}
|
COMMAND_EXPAND_LISTS
|
||||||
${Wayland_LIBRARIES}
|
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
target_include_directories(${PROJECT_NAME}
|
|
||||||
PRIVATE
|
|
||||||
${EGL_INCLUDE_DIRS}
|
|
||||||
${Wayland_INCLUDE_DIRS}
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
target_compile_options(${PROJECT_NAME} PRIVATE ${EGL_CFLAGS_OTHER} ${Wayland_CFLAGS_OTHER})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if (WIN32)
|
|
||||||
foreach(TBB_LIB IN ITEMS tbb tbbmalloc tbbmalloc_proxy)
|
|
||||||
if(TARGET ${TBB_LIB})
|
|
||||||
add_custom_command(
|
|
||||||
TARGET ${PROJECT_NAME} POST_BUILD
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_if_different
|
|
||||||
$<TARGET_FILE:${TBB_LIB}>
|
|
||||||
$<TARGET_FILE_DIR:${PROJECT_NAME}>
|
|
||||||
COMMENT "Copying ${TBB_LIB}.dll"
|
|
||||||
)
|
|
||||||
else()
|
|
||||||
message(STATUS "Target ${TBB_LIB} not found, skipping copy")
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
endif()
|
endif()
|
||||||
79
cmake/Dependencies.cmake
Normal file
79
cmake/Dependencies.cmake
Normal file
@@ -0,0 +1,79 @@
|
|||||||
|
include(FetchContent)
|
||||||
|
|
||||||
|
# System packages
|
||||||
|
find_package(OpenGL REQUIRED)
|
||||||
|
find_package(Protobuf REQUIRED)
|
||||||
|
find_package(absl REQUIRED)
|
||||||
|
find_package(zstd REQUIRED)
|
||||||
|
if (UNIX AND NOT APPLE)
|
||||||
|
find_package(Freetype REQUIRED)
|
||||||
|
find_package(glfw3 REQUIRED)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
|
||||||
|
# Third-party libraries
|
||||||
|
FetchContent_Declare(
|
||||||
|
glm
|
||||||
|
GIT_REPOSITORY https://github.com/g-truc/glm.git
|
||||||
|
GIT_TAG 1.0.3
|
||||||
|
|
||||||
|
)
|
||||||
|
FetchContent_MakeAvailable(glm)
|
||||||
|
FetchContent_Declare(
|
||||||
|
soil2
|
||||||
|
GIT_REPOSITORY https://github.com/SpartanJ/SOIL2.git
|
||||||
|
GIT_TAG 1.31
|
||||||
|
|
||||||
|
)
|
||||||
|
FetchContent_MakeAvailable(soil2)
|
||||||
|
FetchContent_Declare(
|
||||||
|
tomlplusplus
|
||||||
|
GIT_REPOSITORY https://github.com/marzer/tomlplusplus.git
|
||||||
|
GIT_TAG v3.4.0
|
||||||
|
)
|
||||||
|
FetchContent_MakeAvailable(tomlplusplus)
|
||||||
|
|
||||||
|
|
||||||
|
if (WIN32)
|
||||||
|
FetchContent_Declare(
|
||||||
|
glfw
|
||||||
|
GIT_REPOSITORY https://github.com/glfw/glfw.git
|
||||||
|
GIT_TAG 3.4
|
||||||
|
)
|
||||||
|
|
||||||
|
set(GLFW_BUILD_DOCS OFF CACHE BOOL "" FORCE)
|
||||||
|
set(GLFW_BUILD_TESTS OFF CACHE BOOL "" FORCE)
|
||||||
|
set(GLFW_BUILD_EXAMPLES OFF CACHE BOOL "" FORCE)
|
||||||
|
set(GLFW_INSTALL OFF CACHE BOOL "" FORCE)
|
||||||
|
set(GLFW_VULKAN_STATIC ON CACHE BOOL "" FORCE)
|
||||||
|
set(BUILD_SHARED_LIBS ON CACHE BOOL "" FORCE)
|
||||||
|
|
||||||
|
FetchContent_MakeAvailable(glfw)
|
||||||
|
|
||||||
|
FetchContent_Declare(
|
||||||
|
freetype
|
||||||
|
GIT_REPOSITORY https://gitlab.freedesktop.org/freetype/freetype.git
|
||||||
|
GIT_TAG VER-2-14-3
|
||||||
|
)
|
||||||
|
FetchContent_MakeAvailable(freetype)
|
||||||
|
if(TARGET freetype)
|
||||||
|
add_library(Freetype::Freetype ALIAS freetype)
|
||||||
|
endif()
|
||||||
|
set(_BUILD_SHARED_LIBS_SAVED ${BUILD_SHARED_LIBS})
|
||||||
|
set(BUILD_SHARED_LIBS ON)
|
||||||
|
|
||||||
|
FetchContent_Declare(
|
||||||
|
onetbb
|
||||||
|
GIT_REPOSITORY https://github.com/uxlfoundation/oneTBB.git
|
||||||
|
GIT_TAG v2023.0.0
|
||||||
|
)
|
||||||
|
|
||||||
|
set(BUILD_TESTING OFF CACHE BOOL "Build tests" FORCE)
|
||||||
|
set(TBB_TEST OFF CACHE BOOL "Build TBB tests" FORCE)
|
||||||
|
FetchContent_MakeAvailable(onetbb)
|
||||||
|
|
||||||
|
set(BUILD_SHARED_LIBS ${_BUILD_SHARED_LIBS_SAVED})
|
||||||
|
unset(_BUILD_SHARED_LIBS_SAVED)
|
||||||
|
|
||||||
|
endif()
|
||||||
|
|
||||||
47
src/CMakeLists.txt
Normal file
47
src/CMakeLists.txt
Normal file
@@ -0,0 +1,47 @@
|
|||||||
|
target_sources(${PROJECT_NAME}
|
||||||
|
PRIVATE
|
||||||
|
main.cpp
|
||||||
|
app.cpp
|
||||||
|
debug_collector.cpp
|
||||||
|
camera.cpp
|
||||||
|
config.cpp
|
||||||
|
dev_panel.cpp
|
||||||
|
gameplay/biome.cpp
|
||||||
|
gameplay/chunk_generator.cpp
|
||||||
|
gameplay/tree.cpp
|
||||||
|
input.cpp
|
||||||
|
map_table.cpp
|
||||||
|
renderer.cpp
|
||||||
|
shader.cpp
|
||||||
|
texture_manager.cpp
|
||||||
|
tools/cubed_random.cpp
|
||||||
|
tools/math_tools.cpp
|
||||||
|
tools/shader_tools.cpp
|
||||||
|
tools/font.cpp
|
||||||
|
tools/perlin_noise.cpp
|
||||||
|
ui/text.cpp
|
||||||
|
window.cpp
|
||||||
|
gameplay/builders/biome_builder.cpp
|
||||||
|
gameplay/builders/plain_builder.cpp
|
||||||
|
gameplay/builders/mountain_builder.cpp
|
||||||
|
gameplay/builders/river_builder.cpp
|
||||||
|
gameplay/builders/desert_builder.cpp
|
||||||
|
gameplay/builders/forest_builder.cpp
|
||||||
|
gameplay/cave_carver.cpp
|
||||||
|
gameplay/cave_path.cpp
|
||||||
|
gameplay/builders/snowy_plain_builder.cpp
|
||||||
|
gameplay/river_worm.cpp
|
||||||
|
gameplay/river_path.cpp
|
||||||
|
gameplay/block.cpp
|
||||||
|
gameplay/vertex_data.cpp
|
||||||
|
gameplay/builders/ocean_builder.cpp
|
||||||
|
gameplay/network_server.cpp
|
||||||
|
gameplay/server_world.cpp
|
||||||
|
gameplay/client_world.cpp
|
||||||
|
gameplay/server_chunk.cpp
|
||||||
|
gameplay/client_chunk.cpp
|
||||||
|
gameplay/server_player.cpp
|
||||||
|
gameplay/client_player.cpp
|
||||||
|
gameplay/session.cpp
|
||||||
|
gameplay/network_client.cpp
|
||||||
|
)
|
||||||
8
third_party/glad/CMakeLists.txt
vendored
Normal file
8
third_party/glad/CMakeLists.txt
vendored
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
add_library(glad STATIC
|
||||||
|
src/glad.c
|
||||||
|
)
|
||||||
|
|
||||||
|
target_include_directories(glad
|
||||||
|
PUBLIC
|
||||||
|
include
|
||||||
|
)
|
||||||
Reference in New Issue
Block a user