diff --git a/CMakeLists.txt b/CMakeLists.txt index 6098595..02df2a7 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -5,19 +5,64 @@ project(BillySheet LANGUAGES CXX C) find_package(OpenGL REQUIRED) find_package(GLEW REQUIRED) +# see https://cmake.org/cmake/help/latest/module/FindBoost.html find_package(Boost REQUIRED COMPONENTS stacktrace_addr2line) include_directories(${Boost_INCLUDE_DIR}) -file(GLOB_RECURSE SOURCE_HEADERS - include/*.h - include/*.hpp - external/ImFileDialog/*.h +set(PRECOMPILE_HEADERS + include/gui/gui.hpp + include/gui/gui_data.hpp + include/gui/window.hpp ) -file(GLOB_RECURSE SOURCE_FILES - src/*.cpp - external/ImFileDialog/ImFileDialog.cpp +set(SOURCE_HEADERS + include/imgui/imconfig.h + include/imgui/imgui.h + include/imgui/imgui_stdlib.h + include/imgui/imgui_impl_glfw.h + include/imgui/imgui_impl_opengl3.h + include/imgui/imgui_impl_opengl3_loader.h + include/imgui/imgui_internal.h + include/imgui/imstb_rectpack.h + include/imgui/imstb_textedit.h + include/imgui/imstb_truetype.h + include/stb_image.h + external/ImFileDialog/ImFileDialog.h + include/gui/gui.hpp + include/gui/gui_data.hpp + include/gui/window.hpp + include/character_sheet.hpp + include/characteristic/habilete.hpp + include/characteristic/adresse.hpp + include/characteristic/endurance.hpp + include/characteristic/chance.hpp + include/gui/menu/menu.hpp + include/gui/menu/menu_data.hpp + include/characteristic/characteristic.hpp + include/controller.hpp + include/gui_data_interface.hpp +) + +set(SOURCE_FILES + src/imgui/imgui.cpp + src/imgui/imgui_stdlib.cpp + src/imgui/imgui_draw.cpp + src/imgui/imgui_impl_glfw.cpp + src/imgui/imgui_impl_opengl3.cpp + src/imgui/imgui_tables.cpp + src/imgui/imgui_widgets.cpp + external/ImFileDialog/ImFileDialog.cpp + src/main.cpp + src/gui/gui.cpp + src/gui/gui_data.cpp + src/gui/window.cpp + src/character_sheet.cpp + src/characteristic/adresse.cpp + src/characteristic/endurance.cpp + src/characteristic/chance.cpp + src/gui/menu/menu.cpp + src/controller.cpp ) set(SOURCES @@ -124,6 +169,7 @@ set_target_properties(glfw PROPERTIES set_target_properties(spdlog PROPERTIES UNITY_BUILD ON) +target_precompile_headers(BillySheet PRIVATE ${PRECOMPILE_HEADERS}) target_compile_definitions(BillySheet PRIVATE $<$:_GLIBCXX_DEBUG> $<$:SPDLOG_ACTIVE_LEVEL=SPDLOG_LEVEL_DEBUG>