X-Git-Url: https://git.lizzy.rs/?a=blobdiff_plain;f=CMakeLists.txt;h=c04c55c79412d9b6b3fcac3c6b83138b190288e9;hb=6b303f122e303184a54b19689f75e215593d1c5f;hp=951a6f6f7f852c48900f1c6721670c0a8f188ad6;hpb=27a488bd6d80bb93780a69fe67a056445fc60e31;p=nothing.git diff --git a/CMakeLists.txt b/CMakeLists.txt index 951a6f6f..c04c55c7 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -10,67 +10,158 @@ 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/error.c +add_executable(nothing + src/color.c src/game.c - src/lt.c - src/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/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/path.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/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/region.c + src/color.h src/game.h - src/lt.h - src/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/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/path.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/region.h ) -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 @@ -96,6 +187,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 \ @@ -107,3 +200,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})