cmake: Drop test results via https.
[resolv_wrapper.git] / ConfigureChecks.cmake
index 7738179c8b990892712e2d0aa0c233c93abd1d96..be2f04cc19606da0a24ecd95eaf6c4ce7ece84b7 100644 (file)
@@ -51,11 +51,17 @@ check_include_file(sys/types.h HAVE_SYS_TYPES_H)
 check_include_file(resolv.h HAVE_RESOLV_H)
 
 # FUNCTIONS
-check_library_exists(resolv res_send "" RES_SEND_IN_LIBRESOLV)
-check_library_exists(resolv __res_send "" __RES_SEND_IN_LIBRESOLV)
-if (RES_SEND_IN_LIBRESOLV OR __RES_SEND_IN_LIBRESOLV)
-    set(HAVE_LIBRESOLV TRUE)
-    set(CMAKE_REQUIRED_LIBRARIES resolv)
+set(CMAKE_REQUIRED_LIBRARIES)
+
+find_library(RESOLV_LIRBRARY resolv)
+
+if (RESOLV_LIRBRARY)
+    check_library_exists(${RESOLV_LIRBRARY} res_send "" RES_SEND_IN_LIBRESOLV)
+    check_library_exists(${RESOLV_LIRBRARY} __res_send "" __RES_SEND_IN_LIBRESOLV)
+    if (RES_SEND_IN_LIBRESOLV OR __RES_SEND_IN_LIBRESOLV)
+        set(HAVE_LIBRESOLV TRUE)
+        set(CMAKE_REQUIRED_LIBRARIES ${RESOLV_LIRBRARY})
+    endif()
 endif()
 
 check_function_exists(res_init HAVE_RES_INIT)
@@ -63,12 +69,18 @@ check_function_exists(__res_init HAVE___RES_INIT)
 
 check_function_exists(res_ninit HAVE_RES_NINIT)
 check_function_exists(__res_ninit HAVE___RES_NINIT)
+if (RESOLV_LIRBRARY)
+    check_library_exists(${RESOLV_LIRBRARY} res_ninit "" HAVE_RES_NINIT_IN_LIBRESOLV)
+endif()
 
 check_function_exists(res_close HAVE_RES_CLOSE)
 check_function_exists(__res_close HAVE___RES_CLOSE)
 
 check_function_exists(res_nclose HAVE_RES_NCLOSE)
 check_function_exists(__res_nclose HAVE___RES_NCLOSE)
+if (RESOLV_LIRBRARY)
+    check_library_exists(${RESOLV_LIRBRARY} res_nclose "" HAVE_RES_NCLOSE_IN_LIBRESOLV)
+endif()
 
 check_function_exists(res_query HAVE_RES_QUERY)
 check_function_exists(__res_query HAVE___RES_QUERY)
@@ -82,7 +94,25 @@ check_function_exists(__res_search HAVE___RES_SEARCH)
 check_function_exists(res_nsearch HAVE_RES_NSEARCH)
 check_function_exists(__res_nsearch HAVE___RES_NSEARCH)
 
-set(CMAKE_REQUIRED_LIBRARIES)
+check_symbol_exists(ns_name_compress "sys/types.h;arpa/nameser.h" HAVE_NS_NAME_COMPRESS)
+
+if (UNIX)
+    if (NOT LINUX)
+        # libsocket (Solaris)
+        check_library_exists(socket getaddrinfo "" HAVE_LIBSOCKET)
+        if (HAVE_LIBSOCKET)
+          set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} socket)
+        endif (HAVE_LIBSOCKET)
+
+        # libnsl/inet_pton (Solaris)
+        check_library_exists(nsl inet_pton "" HAVE_LIBNSL)
+        if (HAVE_LIBNSL)
+            set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} nsl)
+        endif (HAVE_LIBNSL)
+    endif (NOT LINUX)
+
+    check_function_exists(getaddrinfo HAVE_GETADDRINFO)
+endif (UNIX)
 
 check_library_exists(dl dlopen "" HAVE_LIBDL)
 if (HAVE_LIBDL)