project(score_addon_hardware LANGUAGES CXX) if(NOT TARGET score_lib_base) include(ScoreExternalAddon) endif() if(NOT TARGET libremidi) message("Hardware plug-in requires libremidi.") return() endif() score_common_setup() add_subdirectory(Hardware/3rdparty/bugui) set(HDRS "Hardware/Settings/Model.hpp" "Hardware/Settings/Presenter.hpp" "Hardware/Settings/View.hpp" "Hardware/Settings/Factory.hpp" "Hardware/Controller.hpp" "Hardware/DocumentPlugin.hpp" "Hardware/ApplicationPlugin.hpp" "Hardware/Widgets/ScenarioComponent.hpp" "Hardware/Widgets/ScenarioWidget.hpp" "Hardware/Widgets/TimeSyncWidget.hpp" "Hardware/Widgets/EventWidget.hpp" "Hardware/Widgets/StateWidget.hpp" "Hardware/Widgets/IntervalWidget.hpp" "score_addon_hardware.hpp" ) set(SRCS "${CMAKE_CURRENT_SOURCE_DIR}/Hardware/Settings/Model.cpp" "${CMAKE_CURRENT_SOURCE_DIR}/Hardware/Settings/Presenter.cpp" "${CMAKE_CURRENT_SOURCE_DIR}/Hardware/Settings/View.cpp" "${CMAKE_CURRENT_SOURCE_DIR}/Hardware/Controller.cpp" "${CMAKE_CURRENT_SOURCE_DIR}/Hardware/DocumentPlugin.cpp" "${CMAKE_CURRENT_SOURCE_DIR}/Hardware/ApplicationPlugin.cpp" "${CMAKE_CURRENT_SOURCE_DIR}/Hardware/Widgets/ScenarioWidget.cpp" "${CMAKE_CURRENT_SOURCE_DIR}/Hardware/Widgets/TimeSyncWidget.cpp" "${CMAKE_CURRENT_SOURCE_DIR}/Hardware/Widgets/EventWidget.cpp" "${CMAKE_CURRENT_SOURCE_DIR}/Hardware/Widgets/StateWidget.cpp" "${CMAKE_CURRENT_SOURCE_DIR}/Hardware/Widgets/IntervalWidget.cpp" "${CMAKE_CURRENT_SOURCE_DIR}/score_addon_hardware.cpp" ) add_library(${PROJECT_NAME} ${SRCS} ${HDRS}) target_link_libraries(${PROJECT_NAME} PUBLIC score_plugin_scenario bugui ) setup_score_plugin(${PROJECT_NAME})