diff options
| author | Thiago Macieira <thiago.macieira@intel.com> | 2023-05-26 10:11:11 -0700 |
|---|---|---|
| committer | Thiago Macieira <thiago.macieira@intel.com> | 2023-05-27 12:57:16 -0700 |
| commit | 26dd7fe4edb8ed39ebf12cae874eb89e46ff9067 (patch) | |
| tree | 9a193b161641f67e66986b483415c6e98662414e /src | |
| parent | 369952fbd7163c9ae2fa6401b8da3a5dc5d2368b (diff) | |
CMake: remove "res_ninit" feature and collapse to just "libresolv"
Testing for "res_ninit" when WrapResolv.cmake has already checked for
far more complex functions was pointless. Instead, just accept the
library that was found by find_package() as good enough and rename the
feature as "libresolv".
Amends 4a46ba1209907796f4a14f6feb35ed4d70155d7d and
68b625901f9eb7c34e3d7aa302e1c0a454d3190b.
Change-Id: Ib5ce7a497e034ebabb2cfffd1762c0afa2fac6e0
Reviewed-by: MÃ¥rten Nordheim <marten.nordheim@qt.io>
Diffstat (limited to 'src')
| -rw-r--r-- | src/network/CMakeLists.txt | 4 | ||||
| -rw-r--r-- | src/network/configure.cmake | 31 | ||||
| -rw-r--r-- | src/network/kernel/qdnslookup_unix.cpp | 2 | ||||
| -rw-r--r-- | src/network/kernel/qhostinfo_unix.cpp | 6 |
4 files changed, 12 insertions, 31 deletions
diff --git a/src/network/CMakeLists.txt b/src/network/CMakeLists.txt index fcd31fe9797..64c9bf59422 100644 --- a/src/network/CMakeLists.txt +++ b/src/network/CMakeLists.txt @@ -213,7 +213,7 @@ qt_internal_extend_target(Network CONDITION APPLE ${FWCFNetwork} ) -qt_internal_extend_target(Network CONDITION QT_FEATURE_dnslookup AND TEST_res_ninit +qt_internal_extend_target(Network CONDITION QT_FEATURE_dnslookup AND QT_FEATURE_libresolv SOURCES kernel/qdnslookup_unix.cpp LIBRARIES @@ -225,7 +225,7 @@ qt_internal_extend_target(Network CONDITION QT_FEATURE_dnslookup AND WIN32 kernel/qdnslookup_win.cpp ) -qt_internal_extend_target(Network CONDITION QT_FEATURE_dnslookup AND NOT TEST_res_ninit AND NOT WIN32 +qt_internal_extend_target(Network CONDITION QT_FEATURE_dnslookup AND NOT QT_FEATURE_libresolv AND NOT WIN32 SOURCES kernel/qdnslookup_dummy.cpp ) diff --git a/src/network/configure.cmake b/src/network/configure.cmake index d0417d6e3af..f24f739ce20 100644 --- a/src/network/configure.cmake +++ b/src/network/configure.cmake @@ -100,25 +100,6 @@ ci.ifa_prefered = ci.ifa_valid = 0; } ") -# res_ninit -qt_config_compile_test(res_ninit - LABEL "res_ninit()" - LIBRARIES - WrapResolv::WrapResolv - CODE -"#include <sys/types.h> -#include <netinet/in.h> -#include <resolv.h> -int main() -{ - res_state state; - res_ninit(state); - res_nclose(state); - return 0; -} -" -) - # res_setserver qt_config_compile_test(res_setservers LABEL "res_setservers()" @@ -240,6 +221,11 @@ qt_feature("ipv6ifname" PUBLIC CONDITION TEST_ipv6ifname ) qt_feature_definition("ipv6ifname" "QT_NO_IPV6IFNAME" NEGATE VALUE "1") +qt_feature("libresolv" PRIVATE + LABEL "libresolv" + CONDITION WrapResolv_FOUND + AUTODETECT UNIX +) qt_feature("libproxy" PRIVATE LABEL "libproxy" AUTODETECT OFF @@ -249,14 +235,9 @@ qt_feature("linux-netlink" PRIVATE LABEL "Linux AF_NETLINK" CONDITION LINUX AND NOT ANDROID AND TEST_linux_netlink ) -qt_feature("res_ninit" PRIVATE - LABEL "res_ninit()" - CONDITION TEST_res_ninit - AUTODETECT UNIX -) qt_feature("res_setservers" PRIVATE LABEL "res_setservers()" - CONDITION QT_FEATURE_res_ninit AND TEST_res_setservers + CONDITION QT_FEATURE_libresolv AND TEST_res_setservers ) qt_feature("securetransport" PUBLIC LABEL "SecureTransport" diff --git a/src/network/kernel/qdnslookup_unix.cpp b/src/network/kernel/qdnslookup_unix.cpp index be8721f8da9..296c7034233 100644 --- a/src/network/kernel/qdnslookup_unix.cpp +++ b/src/network/kernel/qdnslookup_unix.cpp @@ -11,7 +11,7 @@ #include <private/qnativesocketengine_p.h> // for setSockAddr #include <private/qtnetwork-config_p.h> -QT_REQUIRE_CONFIG(res_ninit); +QT_REQUIRE_CONFIG(libresolv); #include <sys/types.h> #include <netinet/in.h> diff --git a/src/network/kernel/qhostinfo_unix.cpp b/src/network/kernel/qhostinfo_unix.cpp index 331c5fbf455..42194fb8b31 100644 --- a/src/network/kernel/qhostinfo_unix.cpp +++ b/src/network/kernel/qhostinfo_unix.cpp @@ -49,7 +49,7 @@ static void maybeRefreshResolver() return; #endif -#if QT_CONFIG(res_ninit) +#if QT_CONFIG(libresolv) // OSes known or thought to reach here: AIX, NetBSD, Solaris, // Linux with MUSL (though res_init() does nothing and is unnecessary) @@ -92,7 +92,7 @@ QHostInfo QHostInfoAgent::fromName(const QString &hostName) QString QHostInfo::localDomainName() { -#if QT_CONFIG(res_ninit) +#if QT_CONFIG(libresolv) auto domainNameFromRes = [](res_state r) { QString domainName; if (r->defdname[0]) @@ -111,7 +111,7 @@ QString QHostInfo::localDomainName() // using thread-unsafe version maybeRefreshResolver(); return domainNameFromRes(&_res); -#endif // !QT_CONFIG(res_ninit) +#endif // !QT_CONFIG(libresolv) // nothing worked, try doing it by ourselves: QFile resolvconf; |
