project(Graphics) ### ---------------------- Externals --------------------- ### set(EXTERNAL_TARGETS glfw GLEW::glew OpenGL::GL ImGui::ImGui Nanovg) ### ---------------------- Static Library --------------------- ### file(GLOB SOURCES "./private/*.cpp") file(GLOB HEADERS "./public/*.hpp") add_library(${PROJECT_NAME} STATIC ${SOURCES} ${HEADERS}) target_include_directories(${PROJECT_NAME} PUBLIC ./public/) target_link_libraries(${PROJECT_NAME} PUBLIC Math) target_link_libraries(${PROJECT_NAME} PRIVATE ${EXTERNAL_TARGETS}) ### -------------------------- Examples -------------------------- ### add_executable(Example${PROJECT_NAME} ./examples/Example.cpp) target_link_libraries(Example${PROJECT_NAME} ${PROJECT_NAME} ${EXTERNAL_TARGETS}) file(COPY "examples/Font.ttf" DESTINATION "${CMAKE_BINARY_DIR}/${PROJECT_NAME}/")