diff --git a/CMakeLists.txt b/CMakeLists.txt --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -58,8 +58,11 @@ KIO Plasma WidgetsAddons - NetworkManagerQt ) +find_package (KF5NetworkManagerQt ${KF5_DEP_VERSION}) +if (KF5NetworkManagerQt_FOUND) + set (HAVE_NETWORKMANAGER TRUE) +endif() find_package (KF5SysGuard REQUIRED) include_directories ( diff --git a/kded/CMakeLists.txt b/kded/CMakeLists.txt --- a/kded/CMakeLists.txt +++ b/kded/CMakeLists.txt @@ -1,3 +1,5 @@ +configure_file (config-plasma-vault.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-plasma-vault.h) + include_directories ( ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/engine @@ -85,8 +87,13 @@ KF5::SysGuard KF5::WidgetsAddons KF5::ProcessCore - KF5::NetworkManagerQt ) +if (HAVE_NETWORKMANAGER) + target_link_libraries ( + kded_plasmavault + KF5::NetworkManagerQt + ) +endif () install ( diff --git a/kded/config-plasma-vault.cmake b/kded/config-plasma-vault.cmake new file mode 100644 --- /dev/null +++ b/kded/config-plasma-vault.cmake @@ -0,0 +1 @@ +#cmakedefine HAVE_NETWORKMANAGER diff --git a/kded/service.cpp b/kded/service.cpp --- a/kded/service.cpp +++ b/kded/service.cpp @@ -37,7 +37,23 @@ #include +#include +#ifdef HAVE_NETWORKMANAGER #include +#else +namespace NetworkManager +{ + bool isNetworkingEnabled() + { + return true; + } + + void setNetworkingEnabled(bool enabled) + { + Q_UNUSED(enabled); + } +} +#endif K_PLUGIN_FACTORY_WITH_JSON(PlasmaVaultServiceFactory, "plasmavault.json",