rwrap: AIX compatibility fix, missing headers, bad directive
[resolv_wrapper.git] / ConfigureChecks.cmake
index 079737587d14fcc85eef2579cb3280c3f14ef61b..44de34201e1867a5e8b64cdfa58ecc7cb69a2da2 100644 (file)
@@ -49,13 +49,20 @@ endif(CMAKE_COMPILER_IS_GNUCC AND NOT MINGW AND NOT OS2)
 # HEADERS
 check_include_file(sys/types.h HAVE_SYS_TYPES_H)
 check_include_file(resolv.h HAVE_RESOLV_H)
+check_include_file(arpa/nameser.h HAVE_ARPA_NAMESER_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 +70,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 +95,7 @@ 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)