stuff-from-scratch/src/graphics/CMakeLists.txt
2022-05-15 14:58:31 +01:00

49 lines
No EOL
1.3 KiB
CMake

set(platform_LIB_INCLUDES "")
set(platform_INCLUDE_DIRS "")
set(platform_HEADERS "")
set(platform_LIBS "")
if (UNIX)
list(APPEND platform_LIBSs
GL
)
else()
list(APPEND platform_LIBS
OpenGL32.lib
)
endif()
list(APPEND graphics_LIB_INCLUDES
DrawingContext.cpp
DrawingManager.cpp
DrawingSurface.cpp
Rasterizer.cpp
opengl/OpenGlInterface.cpp
${platform_LIB_INCLUDES}
)
list(APPEND graphics_HEADERS
opengl/OpenGlInterface.h
${platform_HEADERS}
Rasterizer.h
INativeDrawingSurface.h
INativeDrawingContext.h)
add_library(graphics SHARED
${graphics_LIB_INCLUDES}
${graphics_HEADERS})
target_include_directories(graphics PUBLIC
${platform_INCLUDE_DIRS}
"${CMAKE_CURRENT_SOURCE_DIR}"
"${CMAKE_CURRENT_SOURCE_DIR}/cairo"
"${CMAKE_CURRENT_SOURCE_DIR}/opengl"
"${PROJECT_SOURCE_DIR}/src/geometry/"
"${PROJECT_SOURCE_DIR}/src/visual_elements/"
)
target_link_libraries(graphics PUBLIC visual_elements ${platform_LIBS})
set_property(TARGET graphics PROPERTY FOLDER src)
set_target_properties( graphics PROPERTIES WINDOWS_EXPORT_ALL_SYMBOLS ON )