Warning, /frameworks/networkmanager-qt/src/CMakeLists.txt is written in an unsupported language. File is not indexed.

0001 # add_subdirectory(dbus)
0002 
0003 include_directories(
0004    ${CMAKE_CURRENT_SOURCE_DIR}/dbus
0005    ${CMAKE_CURRENT_SOURCE_DIR}/settings
0006 )
0007 
0008 set(NetworkManagerQt_PART_SRCS
0009     device.cpp
0010     accesspoint.cpp
0011     activeconnection.cpp
0012     adsldevice.cpp
0013     bluetoothdevice.cpp
0014     bonddevice.cpp
0015     bridgedevice.cpp
0016     connection.cpp
0017     dhcp4config.cpp
0018     dhcp6config.cpp
0019     devicestatistics.cpp
0020     dnsconfiguration.cpp
0021     dnsdomain.cpp
0022     infinibanddevice.cpp
0023     ipaddress.cpp
0024     iproute.cpp
0025     ipconfig.cpp
0026     manager.cpp
0027     modemdevice.cpp
0028     olpcmeshdevice.cpp
0029     secretagent.cpp
0030     settings.cpp
0031     utils.cpp
0032     vlandevice.cpp
0033     vpnconnection.cpp
0034     vpnplugin.cpp
0035     wimaxdevice.cpp
0036     wimaxnsp.cpp
0037     wireddevice.cpp
0038     wirelessdevice.cpp
0039     wirelessnetwork.cpp
0040     generictypes.cpp
0041     genericdevice.cpp
0042     gredevice.cpp
0043     iptunneldevice.cpp
0044     macvlandevice.cpp
0045     teamdevice.cpp
0046     tundevice.cpp
0047     vethdevice.cpp
0048     wimaxdevice.cpp
0049     wimaxnsp.cpp
0050     wireguarddevice.cpp
0051 )
0052 
0053 set(NetworkManagerQt_SETTINGS_SRCS
0054     settings/adslsetting.cpp
0055     settings/bluetoothsetting.cpp
0056     settings/bondsetting.cpp
0057     settings/bridgesetting.cpp
0058     settings/bridgeportsetting.cpp
0059     settings/cdmasetting.cpp
0060     settings/connectionsettings.cpp
0061     settings/dcbsetting.cpp
0062     settings/gsmsetting.cpp
0063     settings/iptunnelsetting.cpp
0064     settings/ipv4setting.cpp
0065     settings/ipv6setting.cpp
0066     settings/infinibandsetting.cpp
0067     settings/macsecsetting.cpp
0068     settings/matchsetting.cpp
0069     settings/olpcmeshsetting.cpp
0070     settings/ovsbridgesetting.cpp
0071     settings/ovsinterfacesetting.cpp
0072     settings/ovspatchsetting.cpp
0073     settings/ovsportsetting.cpp
0074     settings/pppsetting.cpp
0075     settings/pppoesetting.cpp
0076     settings/proxysetting.cpp
0077     settings/setting.cpp
0078     settings/serialsetting.cpp
0079     settings/security8021xsetting.cpp
0080     settings/teamportsetting.cpp
0081     #settings/template.cpp
0082     settings/vlansetting.cpp
0083     settings/vpnsetting.cpp
0084     settings/wimaxsetting.cpp
0085     settings/wiredsetting.cpp
0086     settings/wirelesssetting.cpp
0087     settings/wirelesssecuritysetting.cpp
0088     settings/teamsetting.cpp
0089     settings/tcsetting.cpp
0090     settings/genericsetting.cpp
0091     settings/tunsetting.cpp
0092     settings/usersetting.cpp
0093     settings/vxlansetting.cpp
0094     settings/wireguardsetting.cpp
0095 )
0096 
0097 set(DBUS_INTERFACE_SRCS
0098     dbus/accesspointinterface.cpp
0099     dbus/activeconnectioninterface.cpp
0100     dbus/adsldeviceinterface.cpp
0101     dbus/agentmanagerinterface.cpp
0102     dbus/bluetoothdeviceinterface.cpp
0103     dbus/bonddeviceinterface.cpp
0104     dbus/bridgedeviceinterface.cpp
0105     dbus/connectioninterface.cpp
0106     dbus/deviceinterface.cpp
0107     dbus/devicestatisticsinterface.cpp
0108     dbus/dhcp4configinterface.cpp
0109     dbus/dhcp6configinterface.cpp
0110     dbus/dnsmanagerinterface.cpp
0111     dbus/genericdeviceinterface.cpp
0112     dbus/gredeviceinterface.cpp
0113     dbus/checkpointinterface.cpp
0114     dbus/infinibanddeviceinterface.cpp
0115     dbus/iptunneldeviceinterface.cpp
0116     dbus/ip4configinterface.cpp
0117     dbus/ip6configinterface.cpp
0118     dbus/macsecdeviceinterface.cpp
0119     dbus/macvlandeviceinterface.cpp
0120     dbus/modemdeviceinterface.cpp
0121     dbus/networkmanagerinterface.cpp
0122     dbus/olpcmeshdeviceinterface.cpp
0123     dbus/pppinterface.cpp
0124     dbus/secretagentadaptor.cpp
0125     dbus/settingsinterface.cpp
0126     dbus/teamdeviceinterface.cpp
0127     dbus/tundeviceinterface.cpp
0128     dbus/vethdeviceinterface.cpp
0129     dbus/vlandeviceinterface.cpp
0130     dbus/vpnconnectioninterface.cpp
0131     dbus/vpnplugininterface.cpp
0132     dbus/vxlandeviceinterface.cpp
0133     dbus/wimaxdeviceinterface.cpp
0134     dbus/wimaxnspinterface.cpp
0135     dbus/wireddeviceinterface.cpp
0136     dbus/wirelessdeviceinterface.cpp
0137     dbus/wireguarddeviceinterface.cpp
0138 )
0139 
0140 ecm_qt_declare_logging_category(KF6NetworkManagerQt
0141     HEADER nmdebug.h
0142     IDENTIFIER NMQT
0143     CATEGORY_NAME kf.networkmanagerqt
0144     OLD_CATEGORY_NAMES networkmanager-qt
0145     DEFAULT_SEVERITY Warning
0146     DESCRIPTION "NetworkManagerQt"
0147     EXPORT NETWORMANAGERQT
0148 )
0149 
0150 add_library(KF6NetworkManagerQt SHARED ${NetworkManagerQt_PART_SRCS} ${NetworkManagerQt_SETTINGS_SRCS} ${DBUS_INTERFACE_SRCS})
0151 add_library(KF6::NetworkManagerQt ALIAS KF6NetworkManagerQt)
0152 
0153 qt_extract_metatypes(KF6NetworkManagerQt)
0154 
0155 ecm_generate_export_header(KF6NetworkManagerQt
0156     EXPORT_FILE_NAME ${NetworkManagerQt_BINARY_DIR}/networkmanagerqt/networkmanagerqt_export.h
0157     BASE_NAME NetworkManagerQt
0158     GROUP_BASE_NAME KF
0159     VERSION ${KF_VERSION}
0160     USE_VERSION_HEADER
0161     DEPRECATED_BASE_VERSION 0
0162 )
0163 
0164 target_include_directories(KF6NetworkManagerQt INTERFACE "$<INSTALL_INTERFACE:${KDE_INSTALL_INCLUDEDIR_KF}/NetworkManagerQt>")
0165 # for examples to build
0166 target_include_directories(KF6NetworkManagerQt PUBLIC "$<BUILD_INTERFACE:${NetworkManagerQt_BINARY_DIR};${CMAKE_CURRENT_SOURCE_DIR}/settings;${CMAKE_CURRENT_BINARY_DIR}>")
0167 
0168 target_link_libraries(KF6NetworkManagerQt PUBLIC Qt6::Core Qt6::Network Qt6::DBus PkgConfig::NetworkManager PkgConfig::Gio)
0169 
0170 set_target_properties(KF6NetworkManagerQt PROPERTIES VERSION ${NETWORKMANAGERQT_VERSION}
0171                                                    SOVERSION ${NETWORKMANAGERQT_SOVERSION}
0172                                                    EXPORT_NAME NetworkManagerQt
0173 )
0174 
0175 ########### static lib for tests  ###############
0176 add_library(KF6NetworkManagerQt_static STATIC ${NetworkManagerQt_PART_SRCS} ${NetworkManagerQt_SETTINGS_SRCS} ${DBUS_INTERFACE_SRCS})
0177 set_target_properties(KF6NetworkManagerQt_static PROPERTIES COMPILE_FLAGS -DNMQT_STATIC=1)
0178 
0179 target_link_libraries(KF6NetworkManagerQt_static PUBLIC Qt6::Core Qt6::Network Qt6::DBus PkgConfig::NetworkManager PkgConfig::Gio)
0180 target_include_directories(KF6NetworkManagerQt_static PUBLIC "$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/..;${CMAKE_CURRENT_BINARY_DIR}/..>")
0181 
0182 ecm_generate_headers(NetworkManagerQt_CamelCase_HEADERS
0183   HEADER_NAMES
0184   AccessPoint
0185   ActiveConnection
0186   AdslDevice
0187   BluetoothDevice
0188   BondDevice
0189   BridgeDevice
0190   Connection
0191   Device
0192   DeviceStatistics
0193   Dhcp4Config
0194   Dhcp6Config
0195   DnsConfiguration
0196   DnsDomain
0197   GenericDevice
0198   GenericTypes
0199   GreDevice
0200   InfinibandDevice
0201   IpAddress
0202   IpConfig
0203   IpRoute
0204   IpTunnelDevice
0205   MacVlanDevice
0206   Manager
0207   ModemDevice
0208   OlpcMeshDevice
0209   SecretAgent
0210   Settings
0211   TeamDevice
0212   TunDevice
0213   Utils
0214   VethDevice
0215   VlanDevice
0216   VpnConnection
0217   VpnPlugin
0218   WimaxDevice
0219   WimaxNsp
0220   WiredDevice
0221   WirelessDevice
0222   WirelessNetwork
0223   WireGuardDevice
0224 
0225   REQUIRED_HEADERS NetworkManagerQt_HEADERS
0226   PREFIX NetworkManagerQt
0227 )
0228 
0229 ecm_generate_headers(NetworkManagerQt_SETTINGS_CamelCase_HEADERS
0230   HEADER_NAMES
0231   AdslSetting
0232   BluetoothSetting
0233   BondSetting
0234   BridgeSetting
0235   BridgePortSetting
0236   CdmaSetting
0237   ConnectionSettings
0238   GsmSetting
0239   GenericSetting
0240   InfinibandSetting
0241   IpTunnelSetting
0242   Ipv4Setting
0243   Ipv6Setting
0244   OlpcMeshSetting
0245   PppoeSetting
0246   PppSetting
0247   Security8021xSetting
0248   SerialSetting
0249   Setting
0250   TeamSetting
0251   TunSetting
0252   VlanSetting
0253   VpnSetting
0254   WimaxSetting
0255   WiredSetting
0256   WireguardSetting
0257   WirelessSecuritySetting
0258   WirelessSetting
0259 
0260   RELATIVE settings
0261   REQUIRED_HEADERS NetworkManagerQt_SETTINGS_HEADERS
0262   PREFIX NetworkManagerQt
0263 )
0264 
0265 ecm_add_qml_module(networkmanagerqtqml URI org.kde.networkmanager GENERATE_PLUGIN_SOURCE)
0266 target_sources(networkmanagerqtqml PRIVATE qmltypes.h)
0267 target_link_libraries(networkmanagerqtqml PRIVATE Qt6::Qml KF6NetworkManagerQt)
0268 ecm_finalize_qml_module(networkmanagerqtqml)
0269 
0270 install(TARGETS KF6NetworkManagerQt EXPORT KF6NetworkManagerQtTargets ${KF_INSTALL_TARGETS_DEFAULT_ARGS})
0271 
0272 install(FILES
0273   ${NetworkManagerQt_CamelCase_HEADERS}
0274   ${NetworkManagerQt_SETTINGS_CamelCase_HEADERS}
0275   DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/NetworkManagerQt/NetworkManagerQt COMPONENT Devel
0276 )
0277 
0278 install(FILES
0279   ${NetworkManagerQt_BINARY_DIR}/networkmanagerqt/networkmanagerqt_export.h
0280   ${NetworkManagerQt_HEADERS}
0281   ${NetworkManagerQt_SETTINGS_HEADERS}
0282   DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/NetworkManagerQt/networkmanagerqt COMPONENT Devel
0283 )
0284 
0285 ecm_qt_install_logging_categories(
0286     EXPORT NETWORMANAGERQT
0287     FILE networkmanagerqt.categories
0288     DESTINATION ${KDE_INSTALL_LOGGINGCATEGORIESDIR}
0289 )
0290 
0291 if(BUILD_QCH)
0292     ecm_add_qch(
0293         KF6NetworkManagerQt_QCH
0294         NAME NetworkManagerQt
0295         BASE_NAME KF6NetworkManagerQt
0296         VERSION ${KF_VERSION}
0297         ORG_DOMAIN org.kde
0298         SOURCES # using only public headers, to cover only public API
0299             ${NetworkManagerQt_HEADERS}
0300             ${NetworkManagerQt_SETTINGS_HEADERS}
0301         MD_MAINPAGE "${CMAKE_SOURCE_DIR}/README.md"
0302         LINK_QCHS
0303             Qt6Core_QCH
0304             Qt6Network_QCH
0305             Qt6DBus_QCH
0306         BLANK_MACROS
0307             NETWORKMANAGERQT_EXPORT
0308             NETWORKMANAGERQT_DEPRECATED
0309             NETWORKMANAGERQT_DEPRECATED_EXPORT
0310         TAGFILE_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR}
0311         QCH_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR}
0312         COMPONENT Devel
0313     )
0314 endif()