CMakeLists.txt 1.1 KB

12345678910111213141516171819202122232425262728
  1. cmake_minimum_required(VERSION 3.1)
  2. find_package(SDL2 REQUIRED)
  3. find_package(SDL2_mixer REQUIRED)
  4. find_package(SDL2_ttf REQUIRED)
  5. find_package(SDL2_image REQUIRED)
  6. set(SDL2_LIBS ${SDL2_LIBRARIES} ${SDL2IMAGE_LIBRARY} ${SDL2_TTF_LIBRARY} ${SDL2_MIXER_LIBRARY})
  7. set(SDL2_INCDIR ${SDL2_INCLUDE_DIR} ${SDL2_IMAGE_INCLUDE_DIR} ${SDL2_TTF_INCLUDE_DIR} ${SDL2_MIXER_INCLUDE_DIR})
  8. file(GLOB_RECURSE GE_SOURCES *.cpp)
  9. file(GLOB_RECURSE GE_HEADERS include/*.h)
  10. # set(GE_SOURCES Main.cpp Game.cpp)
  11. # set(GE_HEADERS include/Game.h)
  12. add_executable(gameengine)
  13. target_include_directories(gameengine PUBLIC include/)
  14. target_sources(gameengine PRIVATE ${GE_SOURCES} ${GE_HEADERS})
  15. target_include_directories(gameengine PUBLIC ${SDL2_INCDIR})
  16. target_include_directories(gameengine PUBLIC ${LUA_INCLUDE_DIR})
  17. target_include_directories(gameengine PUBLIC ${GLM_INCLUDE_DIR})
  18. target_link_libraries(gameengine ${SDL2_LIBS})
  19. target_link_libraries(gameengine ${LUA_LIBRARIES})
  20. target_link_libraries(gameengine glm::glm)
  21. target_link_libraries(gameengine sol2::sol2)
  22. target_link_libraries(gameengine ImGui)
  23. target_link_libraries(gameengine ImGuiSDL)