]> git.lizzy.rs Git - dragonblocks_alpha.git/blobdiff - src/CMakeLists.txt
refactoring
[dragonblocks_alpha.git] / src / CMakeLists.txt
index 879bec10c9446e9a32a3f6a13a12ecccdaac4245..0a9c49684f374918aae85f0679d1a8bfb145400f 100644 (file)
@@ -22,10 +22,10 @@ find_package(Freetype REQUIRED)
 
 # Options
 
-add_compile_definitions("RESSOURCE_PATH=\"${RESSOURCE_PATH}\"")
 add_compile_definitions("USE_DRAGONNET")
+add_compile_definitions("RESSOURCE_PATH=\"${RESSOURCE_PATH}\"")
 
-add_compile_options(-Wall -Wextra -Werror -fmax-errors=4)
+add_compile_options(-Wall -Wextra -Werror -Wno-address-of-packed-member -fmax-errors=4)
 
 link_libraries(
        pthread
@@ -51,43 +51,47 @@ endif()
 # Common sources
 
 set(COMMON_SOURCES
+       "${DEPS_DIR}/asprintf/asprintf.c"
        "${DEPS_DIR}/dragonnet/addr.c"
        "${DEPS_DIR}/dragonnet/listen.c"
        "${DEPS_DIR}/dragonnet/peer.c"
        "${DEPS_DIR}/dragonnet/recv.c"
        "${DEPS_DIR}/dragonnet/recv_thread.c"
        "${DEPS_DIR}/dragonnet/send.c"
-       "${DEPS_DIR}/dragonport/asprintf.c"
        "${DEPS_DIR}/dragonstd/array.c"
-       "${DEPS_DIR}/dragonstd/bintree.c"
        "${DEPS_DIR}/dragonstd/flag.c"
        "${DEPS_DIR}/dragonstd/list.c"
+       "${DEPS_DIR}/dragonstd/map.c"
        "${DEPS_DIR}/dragonstd/queue.c"
+       "${DEPS_DIR}/dragonstd/refcount.c"
+       "${DEPS_DIR}/dragonstd/tree.c"
+       "${DEPS_DIR}/dragonstd/bits/compare.c"
        "${DEPS_DIR}/linenoise/linenoise.c"
        "${DEPS_DIR}/perlin/perlin.c"
+       color.c
        config.c
        day.c
        environment.c
        interrupt.c
-       map.c
        node.c
        perlin.c
+       physics.c
+       terrain.c
        types.c
-       util.c
 )
 
 # Client
 
-add_executable(Dragonblocks
+add_executable(dragonblocks
        ${COMMON_SOURCES}
-       client/blockmesh.c
        client/camera.c
        client/client.c
        client/client_auth.c
        client/client_config.c
-       client/client_map.c
+       client/client_entity.c
        client/client_node.c
        client/client_player.c
+       client/client_terrain.c
        client/cube.c
        client/debug_menu.c
        client/facecache.c
@@ -97,53 +101,53 @@ add_executable(Dragonblocks
        client/gui.c
        client/input.c
        client/mesh.c
-       client/object.c
-       client/scene.c
+       client/model.c
        client/shader.c
        client/sky.c
+       client/terrain_gfx.c
        client/texture.c
-       client/vertex.c
        client/window.c
 )
 
-target_link_libraries(Dragonblocks
+target_link_libraries(dragonblocks
        ${OPENGL_LIBRARIES}
        ${GLEW_LIBRARIES}
        glfw
        ${FREETYPE_LIBRARIES}
 )
 
-target_include_directories(Dragonblocks PUBLIC
+target_include_directories(dragonblocks PUBLIC
        ${FREETYPE_INCLUDE_DIRS}
 )
 
 # Server
 
-add_executable(DragonblocksServer
+add_executable(dragonblocks_server
        ${COMMON_SOURCES}
        server/biomes.c
        server/database.c
-       server/mapgen.c
+       server/schematic.c
        server/server.c
        server/server_config.c
-       server/server_map.c
        server/server_player.c
+       server/server_terrain.c
+       server/terrain_gen.c
        server/trees.c
        server/voxelctx.c
 )
 
-target_link_libraries(DragonblocksServer
+target_link_libraries(dragonblocks_server
        sqlite3
 )
 
 # Version
 
-add_custom_target(Version
+add_custom_target(version
        COMMAND ${CMAKE_COMMAND} -DSOURCE_DIR=${CMAKE_SOURCE_DIR} -P ${CMAKE_SOURCE_DIR}/version.cmake
 )
 
-add_dependencies(Dragonblocks Version)
-add_dependencies(DragonblocksServer Version)
+add_dependencies(dragonblocks version)
+add_dependencies(dragonblocks_server version)
 
 # Types
 
@@ -154,9 +158,9 @@ add_custom_command(
        WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}"
 )
 
-add_custom_target(DragonnetTypes
+add_custom_target(types
        DEPENDS "${CMAKE_SOURCE_DIR}/types.c" "${CMAKE_SOURCE_DIR}/types.h"
 )
 
-add_dependencies(Dragonblocks DragonnetTypes)
-add_dependencies(DragonblocksServer DragonnetTypes)
+add_dependencies(dragonblocks types)
+add_dependencies(dragonblocks_server types)