set(CMAKE_INCLUDE_CURRENT_DIR ON) set(CMAKE_AUTOMOC ON) set(CMAKE_AUTORCC ON) find_package(QT NAMES Qt6 Qt5 COMPONENTS Core DBus Widgets LinguistTools REQUIRED) find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Core DBus Widgets LinguistTools REQUIRED) find_package(PkgConfig REQUIRED) set(UKCC_PLUGIN_EXTERNAL_LIBS "") set(UKCC_PLUGIN_PC_PKGS gsettings-qt kysdk-qtwidgets kylin-ai-base) foreach(PC_LIB IN ITEMS ${UKCC_PLUGIN_PC_PKGS}) pkg_check_modules(${PC_LIB} REQUIRED ${PC_LIB}) if(${${PC_LIB}_FOUND}) include_directories(${${PC_LIB}_INCLUDE_DIRS}) link_directories(${${PC_LIB}_LIBRARY_DIRS}) list(APPEND UKCC_PLUGIN_EXTERNAL_LIBS PkgConfig::${PC_LIB}) endif() endforeach() file(GLOB UKCC_PLUGIN_TS_FILES ${CMAKE_CURRENT_SOURCE_DIR}/translations/*.ts) set_source_files_properties(${UKCC_PLUGIN_TS_FILES} PROPERTIES OUTPUT_LOCATION ${CMAKE_BINARY_DIR}/search-ukcc-plugin/.qm) qt5_create_translation(UKCC_PLUGIN_QM_FILES ${CMAKE_CURRENT_SOURCE_DIR} ${UKCC_PLUGIN_TS_FILES}) add_library(search-ukcc-plugin MODULE search.cpp search.h ${UKCC_PLUGIN_QM_FILES} ) target_link_libraries(search-ukcc-plugin PRIVATE Qt${QT_VERSION_MAJOR}::Core Qt${QT_VERSION_MAJOR}::DBus Qt${QT_VERSION_MAJOR}::Gui Qt${QT_VERSION_MAJOR}::Widgets gsettings-qt ukcc ${UKCC_PLUGIN_PC_PKGS} ) install(TARGETS search-ukcc-plugin DESTINATION /usr/lib/${CMAKE_LIBRARY_ARCHITECTURE}/ukui-control-center) install(FILES ${UKCC_PLUGIN_TS_FILES} ${UKCC_PLUGIN_QM_FILES} DESTINATION /usr/share/ukui-search/search-ukcc-plugin/translations) file(GLOB IMG_FILES ./image/*) install(FILES ${IMG_FILES} DESTINATION /usr/share/ukui-search/search-ukcc-plugin/image)