From: Tom Lane Date: Thu, 9 Nov 2017 16:00:36 +0000 (-0500) Subject: Revert "Allow --with-bonjour to work with non-macOS implementations of Bonjour." X-Git-Tag: REL9_6_7~86 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=28d177e3f95e3aef72f53e9e55096b350d1d5d9b;p=postgresql Revert "Allow --with-bonjour to work with non-macOS implementations of Bonjour." Upon further review, our Bonjour code doesn't actually work with the Avahi not-too-compatible compatibility library. While you can get it to work on non-macOS platforms if you link to Apple's own mDNSResponder code, there don't seem to be many people who care about that. Leaving in the AC_SEARCH_LIBS call seems more likely to encourage people to build broken configurations than to do anything very useful. Hence, remove the AC_SEARCH_LIBS call and put in a warning comment instead. Discussion: https://postgr.es/m/2D8331C5-D64F-44C1-8717-63EDC6EAF7EB@brightforge.com --- diff --git a/configure b/configure index 38953a55ae..f10dee827f 100755 --- a/configure +++ b/configure @@ -10736,64 +10736,6 @@ else fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing DNSServiceRefSockFD" >&5 -$as_echo_n "checking for library containing DNSServiceRefSockFD... " >&6; } -if ${ac_cv_search_DNSServiceRefSockFD+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_func_search_save_LIBS=$LIBS -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char DNSServiceRefSockFD (); -int -main () -{ -return DNSServiceRefSockFD (); - ; - return 0; -} -_ACEOF -for ac_lib in '' dns_sd; do - if test -z "$ac_lib"; then - ac_res="none required" - else - ac_res=-l$ac_lib - LIBS="-l$ac_lib $ac_func_search_save_LIBS" - fi - if ac_fn_c_try_link "$LINENO"; then : - ac_cv_search_DNSServiceRefSockFD=$ac_res -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext - if ${ac_cv_search_DNSServiceRefSockFD+:} false; then : - break -fi -done -if ${ac_cv_search_DNSServiceRefSockFD+:} false; then : - -else - ac_cv_search_DNSServiceRefSockFD=no -fi -rm conftest.$ac_ext -LIBS=$ac_func_search_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_DNSServiceRefSockFD" >&5 -$as_echo "$ac_cv_search_DNSServiceRefSockFD" >&6; } -ac_res=$ac_cv_search_DNSServiceRefSockFD -if test "$ac_res" != no; then : - test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" - -else - as_fn_error $? "could not find function 'DNSServiceRefSockFD' required for Bonjour" "$LINENO" 5 -fi - fi # for contrib/uuid-ossp diff --git a/configure.in b/configure.in index c43648283a..1ba41896f3 100644 --- a/configure.in +++ b/configure.in @@ -1322,8 +1322,12 @@ fi if test "$with_bonjour" = yes ; then AC_CHECK_HEADER(dns_sd.h, [], [AC_MSG_ERROR([header file is required for Bonjour])]) - AC_SEARCH_LIBS(DNSServiceRefSockFD, dns_sd, [], - [AC_MSG_ERROR([could not find function 'DNSServiceRefSockFD' required for Bonjour])]) +dnl At some point we might add something like +dnl AC_SEARCH_LIBS(DNSServiceRegister, dns_sd) +dnl but right now, what that would mainly accomplish is to encourage +dnl people to try to use the avahi implementation, which does not work. +dnl If you want to use Apple's own Bonjour code on another platform, +dnl just add -ldns_sd to LIBS manually. fi # for contrib/uuid-ossp