find_package(PkgConfig REQUIRED)
find_package(Qt6 REQUIRED COMPONENTS Widgets Xml LinguistTools)

set(PLUGIN_NAME "aptplugin")

include_directories(${PROJECT_SOURCE_DIR}/app/src)

add_library(${PLUGIN_NAME} SHARED 
    aptpackagedb.h aptpackagedb.cpp
    aptplugincontainer.h aptplugincontainer.cpp
    aptsearchplugin.h aptsearchplugin.cpp
    aptpackagesearch.h aptpackagesearch.cpp
    packagedescriptionplugin.h packagedescriptionplugin.cpp
    packagestatusplugin.cpp 
    aptpluginfactory.cpp 
    ipackagedb.cpp 
    iaptsearch.cpp 
    installedversionplugin.cpp 
    availableversionplugin.cpp 
    aptsearchscorecalculationstrategy.cpp 
    complexscorecalculationstrategy.cpp 
    installedfilterwidget.cpp 
    aptsearchpluginshortinputwidget.cpp 
    aptactionplugin.cpp 
    ipackage.cpp 
    aptsettingswidget.cpp 
    installationtool.cpp
    packagestatusplugin.h
    aptpluginfactory.h
    ipackagedb.h
    iaptsearch.h
    installedversionplugin.h
    availableversionplugin.h
    aptsearchscorecalculationstrategy.h
    complexscorecalculationstrategy.h
    installedfilterwidget.h
    aptsearchpluginshortinputwidget.h
    aptactionplugin.h
    ipackage.h
    aptsettingswidget.h
    installationtool.h
    aptpackage.h aptpackage.cpp
    aptsearchpluginshortinputwidget.ui
    installedfilterwidget.ui
    aptsettingswidget.ui
)
 
qt_add_translations(${PLUGIN_NAME} 
   TS_FILES ${PROJECT_SOURCE_DIR}/translations/${PLUGIN_NAME}_de.ts 
)

target_link_libraries(${PLUGIN_NAME} PRIVATE apt-pkg)
target_link_libraries(${PLUGIN_NAME} PRIVATE Qt6::Widgets Qt6::Xml)

install(TARGETS ${PLUGIN_NAME} DESTINATION  ${PLUGIN_TARGET_DIR})
install(FILES 
    ${CMAKE_CURRENT_BINARY_DIR}/${PLUGIN_NAME}_de.qm
    DESTINATION ${TRANSLATION_TARGET_DIR}
)
