cmake_minimum_required (VERSION 3.2)

add_library(ExampleViewer MODULE
    src/Main.cpp
    src/ExampleViewport.cpp
    src/ExampleViewerDelegate.cpp
    src/DrawableMesh.cpp
    src/SceneNode.cpp
    src/layers/ExampleSceneLayer.cpp
    src/components/IgnoreComponent.cpp
    src/components/LoggingComponent.cpp

    ${KATANA_ROOT}/plugin_apis/src/FnViewer/utils/FnGLShaderProgram.cpp
)

add_definitions(-DFNVIEWER_STATIC=1 -D_USE_MATH_DEFINES -DFNLOGGING_STATIC)

target_include_directories(ExampleViewer
    PRIVATE
        include
        ${OPENGL_INCLUDE_DIR}
        ${KATANA_ROOT}/plugin_apis/include
)

target_link_libraries(ExampleViewer
    PRIVATE
        Katana::FnAttribute
        Katana::pystring
        Katana::FnLogging
        Katana::FnViewerAPI
        ${OPENGL_LIBRARIES}
        OpenEXR::OpenEXR
        GLEW::GLEW)

set_target_properties(ExampleViewer PROPERTIES PREFIX "")
install(TARGETS ExampleViewer DESTINATION Libs)
