X-Git-Url: https://git.lizzy.rs/?a=blobdiff_plain;f=CMakeLists.txt;h=4f9f0ba22e1736d365ea8c17901d1a3a49d3e318;hb=cf5c164d48262e22592b902fd03293e77bacc34a;hp=5fe778b9ae82d297e91480b44485913669382876;hpb=fedb634f9ed7f75319f639fac60e5b2e75b9559d;p=nothing.git diff --git a/CMakeLists.txt b/CMakeLists.txt index 5fe778b9..4f9f0ba2 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -10,65 +10,162 @@ endif() set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake" ${CMAKE_MODULE_PATH}) find_package(SDL2 REQUIRED) - find_package(SDL2_mixer REQUIRED) include_directories(src/) include_directories(${SDL2_INCLUDE_DIR}) include_directories(${SDL2_MIXER_INCLUDE_DIR}) -set(SOURCE_FILES - src/main.c - src/game/level/player.c - src/game/level/platforms.c - src/math/rect.c - src/math/point.c - src/game/level/camera.c - src/system/error.c +add_executable(nothing + src/color.c src/game.c - src/system/lt.c - src/system/lt/lt_slot.c + src/game/camera.c + src/ui/edit_field.c src/game/level.c + src/game/level/background.c + src/game/level/boxes.c src/game/level/goals.c - src/sdl/renderer.c - src/math/triangle.c - src/color.c - src/game/level/player/rigid_rect.c - src/game/level/player/dying_rect.c + src/game/level/labels.c src/game/level/lava.c src/game/level/lava/wavy_rect.c - src/game/sound_medium.c + src/game/level/physical_world.c + src/game/level/platforms.c + src/game/level/player.c + src/game/level/player/dying_rect.c + src/game/level/player/rigid_rect.c + src/game/level/solid.c + src/game/sound_samples.c + src/game/sprite_font.c + src/main.c src/math/mat3x3.c + src/math/point.c src/math/rand.c -) - -set(HEADER_FILES - src/game/level/player.h - src/game/level/platforms.h - src/math/rect.h - src/math/point.h - src/game/level/camera.h - src/system/error.h + src/math/rect.c + src/math/triangle.c + src/script/expr.c + src/script/interpreter.c + src/script/parser.c + src/script/tokenizer.c + src/script/gc.c + src/script/scope.c + src/sdl/renderer.c + src/system/error.c + src/system/lt.c + src/system/lt/lt_adapters.c + src/system/lt/lt_slot.c + src/ui/console.c + src/ui/log.c + src/str.c + src/ui/history.c + src/game/level/regions.c + src/color.h src/game.h - src/system/lt.h - src/system/lt/lt_slot.h + src/game/camera.h + src/ui/edit_field.h src/game/level.h + src/game/level/background.h + src/game/level/boxes.h src/game/level/goals.h - src/sdl/renderer.h - src/math/triangle.h - src/math/pi.h - src/color.h - src/game/level/player/rigid_rect.h - src/game/level/player/dying_rect.h + src/game/level/labels.h src/game/level/lava.h src/game/level/lava/wavy_rect.h - src/game/sound_medium.h + src/game/level/physical_world.c + src/game/level/platforms.h + src/game/level/player.h + src/game/level/player/dying_rect.h + src/game/level/player/rigid_rect.h + src/game/level/solid.h + src/game/sound_samples.h + src/game/sprite_font.h src/math/mat3x3.h + src/math/pi.h + src/math/point.h src/math/rand.h + src/math/rect.h + src/math/triangle.h + src/script/builtins.c + src/script/builtins.h + src/script/expr.h + src/script/gc.h + src/script/scope.h + src/script/interpreter.h + src/script/parser.h + src/script/tokenizer.h + src/sdl/renderer.h + src/system/error.h + src/system/lt.h + src/system/lt/lt_adapters.h + src/system/lt/lt_slot.h + src/ui/console.h + src/ui/log.h + src/str.h + src/ui/history.h + src/game/level/regions.h + src/system/line_stream.h + src/system/line_stream.c + src/game/level/script.h + src/game/level/script.c ) -add_executable(nothing ${SOURCE_FILES} ${HEADER_FILES}) +add_executable(repl + src/script/builtins.c + src/script/builtins.h + src/script/expr.c + src/script/expr.h + src/script/interpreter.c + src/script/interpreter.h + src/script/parser.c + src/script/parser.h + src/script/scope.c + src/script/scope.h + src/script/tokenizer.c + src/script/tokenizer.h + src/script/repl.c + src/system/lt.c + src/system/lt.h + src/system/lt/lt_adapters.c + src/system/lt/lt_adapters.h + src/system/lt/lt_slot.c + src/system/lt/lt_slot.h + src/system/error.c + src/system/error.h + src/script/gc.h + src/script/gc.c + src/str.h + src/str.c + ) +add_executable(nothing_test + src/script/builtins.c + src/script/builtins.h + src/script/expr.c + src/script/expr.h + src/script/interpreter.c + src/script/interpreter.h + src/script/parser.c + src/script/parser.h + src/script/scope.c + src/script/scope.h + src/script/tokenizer.c + src/script/tokenizer.h + src/script/gc.h + src/script/gc.c + src/system/error.c + src/system/error.h + src/system/lt.c + src/system/lt.h + src/system/lt/lt_adapters.c + src/system/lt/lt_adapters.h + src/system/lt/lt_slot.c + src/system/lt/lt_slot.h + src/str.h + src/str.c + test/main.c + test/test.h + test/tokenizer_suite.h + ) target_link_libraries(nothing ${SDL2_LIBRARY} ${SDL2_MIXER_LIBRARY}) +target_link_libraries(nothing_test ${SDL2_LIBRARY} ${SDL2_MIXER_LIBRARY}) +target_link_libraries(repl ${SDL2_LIBRARY} ${SDL2_MIXER_LIBRARY}) if(("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU") OR ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "CLANG")) set(CMAKE_C_FLAGS @@ -94,6 +191,8 @@ if(("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU") OR ("${CMAKE_CXX_COMPILER_ID}" ST -Wshadow \ -Wstrict-prototypes \ -Wwrite-strings \ + -Wswitch \ + -Wmissing-field-initializers \ -fno-common \ -pedantic \ -std=c11 \ @@ -105,3 +204,5 @@ if(WIN32) endif() file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/sounds DESTINATION ${CMAKE_CURRENT_BINARY_DIR}) +file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/fonts DESTINATION ${CMAKE_CURRENT_BINARY_DIR}) +file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/test-data DESTINATION ${CMAKE_CURRENT_BINARY_DIR})