diff options
author | Alexandru Croitor <alexandru.croitor@qt.io> | 2020-01-31 11:43:22 +0100 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@qt.io> | 2020-02-03 15:01:53 +0000 |
commit | 4e7af2061e8c323b2a21f0549643a2cfab191664 (patch) | |
tree | 54c6046915aee4a91eb6178183c022b8e547d244 /src/network/CMakeLists.txt | |
parent | 6251963ecd26bfc480b2871e26b6df4d7ab88cee (diff) | |
parent | 3f386095adc6c280008c7e811e88f0215f1d862f (diff) |
Merge remote-tracking branch 'origin/wip/cmake' into dev
This pulls the CMake port, which not only adds CMake files but also
modifies existing code. A brief summary of "seemingly unrelated" changes:
* configure.json was re-formatted to not use multi-line strings. That
is an extension of the Qt JSON parser but not JSON compliant, which
is needed for the configure.json-to-cmake conversion script (python).
* Some moc inclusions were added due to CMake's slightly different way
of handling moc. With the changes the files build with qmake and cmake.
* Since CMake just grep's for the Q_OBJECT macro to determine whether to
call moc (instead of doing pre-processing like qmake), the existing use
of "Q_OBJECT" in our documentation was changed to \Q_OBJECT, which cmake
doesn't see and which is now a qdoc macro.
* QTestLib's qFindTestData was extended to also search in the source
directory known at build time.
What this change also brings is a new way of building modules in Coin by using
YAML configuration files that describe the steps of building and testing in Coin
specific terms. The platform configuration files in qt5 are instructed to use the
old Coin built-in way of testing ("UseLegacyInstructions" feature) but for any
configurations that do not have this, these yaml files in the coin/ sub-directory
are used and shared across repositories.
Change-Id: I1d832c3400e8d6945ad787024ba60e7440225c08
Diffstat (limited to 'src/network/CMakeLists.txt')
-rw-r--r-- | src/network/CMakeLists.txt | 449 |
1 files changed, 449 insertions, 0 deletions
diff --git a/src/network/CMakeLists.txt b/src/network/CMakeLists.txt new file mode 100644 index 0000000000..7ebe37c064 --- /dev/null +++ b/src/network/CMakeLists.txt @@ -0,0 +1,449 @@ +# Generated from network.pro. + +# special case begin +# Temporary fix for OpenSSL feature detection until we can provide a +# proper implementation of additional compile tests for library dependencies +# in configure.json + +find_package(OpenSSL) +if (NOT OPENSSL_FOUND OR NOT OPENSSL_VERSION VERSION_GREATER_EQUAL "1.1.0") + set(QT_FEATURE_openssl_runtime OFF CACHE BOOL "" FORCE) + set(QT_FEATURE_openssl_linked OFF CACHE BOOL "" FORCE) + set(QT_FEATURE_openssl OFF CACHE BOOL "" FORCE) +endif() +# special case end + +##################################################################### +## Network Module: +##################################################################### + +qt_add_module(Network + PLUGIN_TYPES bearer + SOURCES + access/qabstractnetworkcache.cpp access/qabstractnetworkcache.h access/qabstractnetworkcache_p.h + access/qhsts.cpp access/qhsts_p.h + access/qhstspolicy.cpp access/qhstspolicy.h + access/qnetworkaccessauthenticationmanager.cpp access/qnetworkaccessauthenticationmanager_p.h + access/qnetworkaccessbackend.cpp access/qnetworkaccessbackend_p.h + access/qnetworkaccesscache.cpp access/qnetworkaccesscache_p.h + access/qnetworkaccesscachebackend.cpp access/qnetworkaccesscachebackend_p.h + access/qnetworkaccessdebugpipebackend.cpp access/qnetworkaccessdebugpipebackend_p.h + access/qnetworkaccessfilebackend.cpp access/qnetworkaccessfilebackend_p.h + access/qnetworkaccessmanager.cpp access/qnetworkaccessmanager.h access/qnetworkaccessmanager_p.h + access/qnetworkcookie.cpp access/qnetworkcookie.h access/qnetworkcookie_p.h + access/qnetworkcookiejar.cpp access/qnetworkcookiejar.h access/qnetworkcookiejar_p.h + access/qnetworkfile.cpp access/qnetworkfile_p.h + access/qnetworkreply.cpp access/qnetworkreply.h access/qnetworkreply_p.h + access/qnetworkreplydataimpl.cpp access/qnetworkreplydataimpl_p.h + access/qnetworkreplyfileimpl.cpp access/qnetworkreplyfileimpl_p.h + access/qnetworkreplyimpl.cpp access/qnetworkreplyimpl_p.h + access/qnetworkrequest.cpp access/qnetworkrequest.h access/qnetworkrequest_p.h + bearer/qbearerengine.cpp bearer/qbearerengine_p.h + bearer/qbearerengine_impl_p.h + bearer/qbearerplugin.cpp bearer/qbearerplugin_p.h + bearer/qnetworkconfigmanager.cpp bearer/qnetworkconfigmanager.h bearer/qnetworkconfigmanager_p.cpp bearer/qnetworkconfigmanager_p.h + bearer/qnetworkconfiguration.cpp bearer/qnetworkconfiguration.h bearer/qnetworkconfiguration_p.h + bearer/qnetworksession.cpp bearer/qnetworksession.h bearer/qnetworksession_p.h + bearer/qnetworksession_impl.cpp bearer/qnetworksession_impl_p.h + bearer/qsharednetworksession.cpp bearer/qsharednetworksession_p.h + kernel/qauthenticator.cpp kernel/qauthenticator.h kernel/qauthenticator_p.h + kernel/qhostaddress.cpp kernel/qhostaddress.h kernel/qhostaddress_p.h + kernel/qhostinfo.cpp kernel/qhostinfo.h kernel/qhostinfo_p.h + kernel/qnetconmonitor_p.h + kernel/qnetworkdatagram.cpp kernel/qnetworkdatagram.h kernel/qnetworkdatagram_p.h + kernel/qnetworkinterface.cpp kernel/qnetworkinterface.h kernel/qnetworkinterface_p.h + kernel/qnetworkinterface_unix_p.h + kernel/qnetworkproxy.cpp kernel/qnetworkproxy.h + kernel/qtnetworkglobal.h kernel/qtnetworkglobal_p.h + socket/qabstractsocket.cpp socket/qabstractsocket.h socket/qabstractsocket_p.h + socket/qabstractsocketengine.cpp socket/qabstractsocketengine_p.h + socket/qtcpserver.cpp socket/qtcpserver.h socket/qtcpserver_p.h + socket/qtcpsocket.cpp socket/qtcpsocket.h socket/qtcpsocket_p.h + socket/qudpsocket.cpp socket/qudpsocket.h + ssl/qasn1element.cpp ssl/qasn1element_p.h + ssl/qpassworddigestor.cpp ssl/qpassworddigestor.h + ssl/qssl.cpp ssl/qssl.h ssl/qssl_p.h + ssl/qsslcertificate.cpp ssl/qsslcertificate.h ssl/qsslcertificate_p.h + ssl/qsslcertificateextension.cpp ssl/qsslcertificateextension.h ssl/qsslcertificateextension_p.h + DEFINES + QT_NO_FOREACH + QT_NO_USING_NAMESPACE + INCLUDE_DIRECTORIES + kernel + LIBRARIES + Qt::CorePrivate + ZLIB::ZLIB + PUBLIC_LIBRARIES + Qt::Core + PRECOMPILED_HEADER + "../corelib/global/qt_pch.h" +) + +#### Keys ignored in scope 1:.:.:network.pro:<TRUE>: +# MODULE_WINRT_CAPABILITIES = "internetClient" "internetClientServer" "privateNetworkClientServer" +# QMAKE_LIBS = "$$QMAKE_LIBS_NETWORK" + +## Scopes: +##################################################################### + +qt_extend_target(Network CONDITION MSVC AND (TEST_architecture_arch STREQUAL "i386") + LINK_OPTIONS + "/BASE:0x64000000" +) + +if(ANDROID AND (QT_FEATURE_bearermanagement)) + set_property(TARGET Network APPEND PROPERTY QT_ANDROID_BUNDLED_JAR_DEPENDENCIES + jar/QtAndroidBearer.jar + ) + set_property(TARGET Network APPEND PROPERTY QT_ANDROID_LIB_DEPENDENCIES + plugins/bearer/libplugins_bearer_qandroidbearer.so + ) + set_property(TARGET Network APPEND PROPERTY QT_ANDROID_PERMISSIONS + android.permission.ACCESS_NETWORK_STATE + ) +endif() + +qt_extend_target(Network CONDITION QT_FEATURE_ftp + SOURCES + access/qftp.cpp access/qftp_p.h + access/qnetworkaccessftpbackend.cpp access/qnetworkaccessftpbackend_p.h + kernel/qurlinfo.cpp kernel/qurlinfo_p.h +) + +qt_extend_target(Network CONDITION QT_FEATURE_networkdiskcache + SOURCES + access/qnetworkdiskcache.cpp access/qnetworkdiskcache.h access/qnetworkdiskcache_p.h +) + +qt_extend_target(Network CONDITION QT_FEATURE_settings + SOURCES + access/qhstsstore.cpp access/qhstsstore_p.h +) + +qt_extend_target(Network CONDITION APPLE + LIBRARIES + ${FWCoreFoundation} + ${FWSecurity} +) + +qt_extend_target(Network CONDITION WASM + SOURCES + access/qnetworkreplywasmimpl.cpp access/qnetworkreplywasmimpl_p.h +) + +qt_extend_target(Network CONDITION QT_FEATURE_http + SOURCES + access/http2/bitstreams.cpp access/http2/bitstreams_p.h + access/http2/hpack.cpp access/http2/hpack_p.h + access/http2/hpacktable.cpp access/http2/hpacktable_p.h + access/http2/http2frames.cpp access/http2/http2frames_p.h + access/http2/http2protocol.cpp access/http2/http2protocol_p.h + access/http2/http2streams.cpp access/http2/http2streams_p.h + access/http2/huffman.cpp access/http2/huffman_p.h + access/qabstractprotocolhandler.cpp access/qabstractprotocolhandler_p.h + access/qhttp2configuration.cpp access/qhttp2configuration.h + access/qhttp2protocolhandler.cpp access/qhttp2protocolhandler_p.h + access/qhttpmultipart.cpp access/qhttpmultipart.h access/qhttpmultipart_p.h + access/qhttpnetworkconnection.cpp access/qhttpnetworkconnection_p.h + access/qhttpnetworkconnectionchannel.cpp access/qhttpnetworkconnectionchannel_p.h + access/qhttpnetworkheader.cpp access/qhttpnetworkheader_p.h + access/qhttpnetworkreply.cpp access/qhttpnetworkreply_p.h + access/qhttpnetworkrequest.cpp access/qhttpnetworkrequest_p.h + access/qhttpprotocolhandler.cpp access/qhttpprotocolhandler_p.h + access/qhttpthreaddelegate.cpp access/qhttpthreaddelegate_p.h + access/qnetworkreplyhttpimpl.cpp access/qnetworkreplyhttpimpl_p.h + socket/qhttpsocketengine.cpp socket/qhttpsocketengine_p.h +) + +qt_extend_target(Network CONDITION QT_FEATURE_dnslookup + SOURCES + kernel/qdnslookup.cpp kernel/qdnslookup.h kernel/qdnslookup_p.h +) + +qt_extend_target(Network CONDITION UNIX + SOURCES + kernel/qhostinfo_unix.cpp + socket/qnativesocketengine_unix.cpp + socket/qnet_unix_p.h +) + +qt_extend_target(Network CONDITION QT_FEATURE_dlopen AND UNIX + LIBRARIES + ${CMAKE_DL_LIBS} +) + +qt_extend_target(Network CONDITION QT_FEATURE_linux_netlink AND UNIX + SOURCES + kernel/qnetworkinterface_linux.cpp +) + +qt_extend_target(Network CONDITION UNIX AND NOT QT_FEATURE_linux_netlink + SOURCES + kernel/qnetworkinterface_unix.cpp +) + +qt_extend_target(Network CONDITION ANDROID AND QT_FEATURE_dnslookup + SOURCES + kernel/qdnslookup_android.cpp +) + +qt_extend_target(Network CONDITION WIN32 + SOURCES + kernel/qhostinfo_win.cpp +) + +qt_extend_target(Network CONDITION WIN32 AND NOT WINRT + SOURCES + kernel/qnetworkinterface_win.cpp + kernel/qnetworkproxy_win.cpp + socket/qnativesocketengine_win.cpp + LIBRARIES + advapi32 + dnsapi + iphlpapi +) + +qt_extend_target(Network CONDITION QT_FEATURE_dnslookup AND WIN32 AND NOT WINRT + SOURCES + kernel/qdnslookup_win.cpp +) + +qt_extend_target(Network CONDITION WINRT + SOURCES + kernel/qnetworkinterface_winrt.cpp + socket/qnativesocketengine_winrt.cpp socket/qnativesocketengine_winrt_p.h +) + +qt_extend_target(Network CONDITION QT_FEATURE_dnslookup AND WINRT + SOURCES + kernel/qdnslookup_winrt.cpp +) + +qt_extend_target(Network CONDITION APPLE AND NOT APPLE_UIKIT + LIBRARIES + ${FWCoreServices} + ${FWSystemConfiguration} +) + +qt_extend_target(Network CONDITION APPLE_IOS OR APPLE_OSX + SOURCES + kernel/qnetconmonitor_darwin.mm + LIBRARIES + ${FWSystemConfiguration} +) + +qt_extend_target(Network CONDITION QT_FEATURE_netlistmgr AND NOT APPLE_IOS AND NOT APPLE_OSX + SOURCES + kernel/qnetconmonitor_win.cpp +) + +qt_extend_target(Network CONDITION NOT APPLE_IOS AND NOT APPLE_OSX AND NOT QT_FEATURE_netlistmgr + SOURCES + kernel/qnetconmonitor_stub.cpp +) + +qt_extend_target(Network CONDITION QT_FEATURE_gssapi + LIBRARIES + GSSAPI::GSSAPI +) + +qt_extend_target(Network CONDITION APPLE_UIKIT + SOURCES + kernel/qnetworkinterface_uikit_p.h +) + +qt_extend_target(Network CONDITION APPLE_OSX + SOURCES + kernel/qnetworkproxy_mac.cpp +) + +qt_extend_target(Network CONDITION QT_FEATURE_libproxy AND NOT APPLE_OSX AND (UNIX OR WINRT) + SOURCES + kernel/qnetworkproxy_libproxy.cpp + LIBRARIES + ${CMAKE_DL_LIBS} + PkgConfig::Libproxy +) + +qt_extend_target(Network CONDITION NOT APPLE_OSX AND NOT QT_FEATURE_libproxy AND (UNIX OR WINRT) + SOURCES + kernel/qnetworkproxy_generic.cpp +) + +qt_extend_target(Network CONDITION QT_FEATURE_socks5 + SOURCES + socket/qsocks5socketengine.cpp socket/qsocks5socketengine_p.h +) + +qt_extend_target(Network CONDITION QT_FEATURE_sctp + SOURCES + socket/qsctpserver.cpp socket/qsctpserver.h socket/qsctpserver_p.h + socket/qsctpsocket.cpp socket/qsctpsocket.h socket/qsctpsocket_p.h +) + +qt_extend_target(Network CONDITION NOT WINRT + SOURCES + socket/qnativesocketengine.cpp socket/qnativesocketengine_p.h +) + +qt_extend_target(Network CONDITION MSVC + MOC_OPTIONS + "-D_WINSOCK_DEPRECATED_NO_WARNINGS" +) + +qt_extend_target(Network CONDITION QT_FEATURE_localserver + SOURCES + socket/qlocalserver.cpp socket/qlocalserver.h socket/qlocalserver_p.h + socket/qlocalsocket.cpp socket/qlocalsocket.h socket/qlocalsocket_p.h +) + +qt_extend_target(Network CONDITION QT_FEATURE_localserver AND (INTEGRITY OR WINRT) + SOURCES + socket/qlocalserver_tcp.cpp + socket/qlocalsocket_tcp.cpp + DEFINES + QT_LOCALSOCKET_TCP +) + +qt_extend_target(Network CONDITION QT_FEATURE_localserver AND UNIX AND NOT INTEGRITY AND NOT WINRT + SOURCES + socket/qlocalserver_unix.cpp + socket/qlocalsocket_unix.cpp +) + +qt_extend_target(Network CONDITION QT_FEATURE_localserver AND WIN32 AND NOT WINRT + SOURCES + socket/qlocalserver_win.cpp + socket/qlocalsocket_win.cpp +) + +qt_extend_target(Network CONDITION QT_FEATURE_system_proxies + DEFINES + QT_USE_SYSTEM_PROXIES +) + +qt_extend_target(Network CONDITION NOT QT_FEATURE_openssl + SOURCES + ssl/qsslcertificate_qt.cpp +) + +qt_extend_target(Network CONDITION QT_FEATURE_ssl + SOURCES + ssl/qocspresponse.cpp ssl/qocspresponse.h ssl/qocspresponse_p.h + ssl/qsslcipher.cpp ssl/qsslcipher.h ssl/qsslcipher_p.h + ssl/qsslconfiguration.cpp ssl/qsslconfiguration.h ssl/qsslconfiguration_p.h + ssl/qssldiffiehellmanparameters.cpp ssl/qssldiffiehellmanparameters.h ssl/qssldiffiehellmanparameters_p.h + ssl/qsslellipticcurve.cpp ssl/qsslellipticcurve.h + ssl/qsslerror.cpp ssl/qsslerror.h + ssl/qsslkey.h ssl/qsslkey_p.cpp ssl/qsslkey_p.h + ssl/qsslpresharedkeyauthenticator.cpp ssl/qsslpresharedkeyauthenticator.h ssl/qsslpresharedkeyauthenticator_p.h + ssl/qsslsocket.cpp ssl/qsslsocket.h ssl/qsslsocket_p.h +) + +qt_extend_target(Network CONDITION QT_FEATURE_ssl AND WINRT + SOURCES + ssl/qsslcertificate_winrt.cpp + ssl/qssldiffiehellmanparameters_dummy.cpp + ssl/qsslellipticcurve_dummy.cpp + ssl/qsslkey_qt.cpp + ssl/qsslkey_winrt.cpp + ssl/qsslsocket_winrt.cpp ssl/qsslsocket_winrt_p.h +) + +qt_extend_target(Network CONDITION QT_FEATURE_schannel AND QT_FEATURE_ssl + SOURCES + ssl/qsslcertificate_schannel.cpp + ssl/qssldiffiehellmanparameters_dummy.cpp + ssl/qsslellipticcurve_dummy.cpp + ssl/qsslkey_qt.cpp + ssl/qsslkey_schannel.cpp + ssl/qsslsocket_qt.cpp + ssl/qsslsocket_schannel.cpp ssl/qsslsocket_schannel_p.h + LIBRARIES + Crypt32 + Secur32 + bcrypt + ncrypt +) + +qt_extend_target(Network CONDITION QT_FEATURE_securetransport AND QT_FEATURE_ssl + SOURCES + ssl/qssldiffiehellmanparameters_dummy.cpp + ssl/qsslellipticcurve_dummy.cpp + ssl/qsslkey_mac.cpp + ssl/qsslkey_qt.cpp + ssl/qsslsocket_mac.cpp ssl/qsslsocket_mac_p.h + ssl/qsslsocket_mac_shared.cpp + ssl/qsslsocket_qt.cpp +) + +qt_extend_target(Network CONDITION QT_FEATURE_dtls AND QT_FEATURE_ssl + SOURCES + ssl/qdtls.cpp ssl/qdtls.h ssl/qdtls_p.h +) + +qt_extend_target(Network CONDITION QT_FEATURE_openssl AND QT_FEATURE_ssl + SOURCES + ssl/qsslcertificate_openssl.cpp + ssl/qsslcontext_openssl.cpp ssl/qsslcontext_openssl_p.h + ssl/qssldiffiehellmanparameters_openssl.cpp + ssl/qsslellipticcurve_openssl.cpp + ssl/qsslkey_openssl.cpp + ssl/qsslsocket_openssl.cpp ssl/qsslsocket_openssl_p.h + ssl/qsslsocket_openssl_symbols.cpp ssl/qsslsocket_openssl_symbols_p.h + DEFINES + OPENSSL_API_COMPAT=0x10100000L +) + +qt_extend_target(Network CONDITION QT_FEATURE_dtls AND QT_FEATURE_openssl AND QT_FEATURE_ssl + SOURCES + ssl/qdtls_openssl.cpp ssl/qdtls_openssl_p.h +) + +qt_extend_target(Network CONDITION QT_FEATURE_ocsp AND QT_FEATURE_openssl AND QT_FEATURE_ssl + SOURCES + ssl/qocsp_p.h +) + +qt_extend_target(Network CONDITION APPLE AND QT_FEATURE_openssl AND QT_FEATURE_ssl + SOURCES + ssl/qsslsocket_mac_shared.cpp +) + +qt_extend_target(Network CONDITION ANDROID AND QT_FEATURE_openssl AND QT_FEATURE_ssl AND NOT ANDROID_EMBEDDED + SOURCES + ssl/qsslsocket_openssl_android.cpp +) + +qt_extend_target(Network CONDITION ANDROID AND QT_FEATURE_openssl AND QT_FEATURE_openssl_linked AND QT_FEATURE_ssl AND build_pass + LIBRARIES + crypto_${CMAKE_SYSTEM_PROCESSOR} + ssl_${CMAKE_SYSTEM_PROCESSOR} +) + +qt_extend_target(Network CONDITION QT_FEATURE_openssl AND QT_FEATURE_openssl_linked AND QT_FEATURE_ssl AND NOT ANDROID + LIBRARIES + OpenSSL::SSL +) + +qt_extend_target(Network CONDITION QT_FEATURE_openssl AND QT_FEATURE_ssl AND NOT QT_FEATURE_openssl_linked + LIBRARIES + OpenSSL::SSL_nolink +) + +qt_extend_target(Network CONDITION QT_FEATURE_openssl AND QT_FEATURE_ssl AND WIN32 + SOURCES + ssl/qwindowscarootfetcher.cpp ssl/qwindowscarootfetcher_p.h + LIBRARIES + crypt32 +) + +qt_extend_target(Network CONDITION QT_FEATURE_dnslookup AND UNIX AND NOT ANDROID AND NOT INTEGRITY + SOURCES + kernel/qdnslookup_unix.cpp +) +qt_add_docs(Network + doc/qtnetwork.qdocconf +) + +qt_extend_target(Network CONDITION WIN32 PUBLIC_LIBRARIES ws2_32) # special case: mkspecs/common/msvc-desktop.conf |