From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from omta36.uswest2.a.cloudfilter.net (omta36.uswest2.a.cloudfilter.net [35.89.44.35]) by sourceware.org (Postfix) with ESMTPS id 2D9EB385828E for ; Fri, 6 Oct 2023 13:24:19 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 2D9EB385828E Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=tromey.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=tromey.com Received: from eig-obgw-6008a.ext.cloudfilter.net ([10.0.30.227]) by cmsmtp with ESMTP id oigVqiXIJMZBkokoUqsI96; Fri, 06 Oct 2023 13:24:18 +0000 Received: from box5379.bluehost.com ([162.241.216.53]) by cmsmtp with ESMTPS id okoSqwZXbxd5NokoTqTOtw; Fri, 06 Oct 2023 13:24:17 +0000 X-Authority-Analysis: v=2.4 cv=f6hbuc+M c=1 sm=1 tr=0 ts=65200a81 a=ApxJNpeYhEAb1aAlGBBbmA==:117 a=ApxJNpeYhEAb1aAlGBBbmA==:17 a=OWjo9vPv0XrRhIrVQ50Ab3nP57M=:19 a=dLZJa+xiwSxG16/P+YVxDGlgEgI=:19 a=bhdUkHdE2iEA:10 a=Qbun_eYptAEA:10 a=CCpqsmhAAAAA:8 a=Qv4FX9cCM7UfrSzxT6IA:9 a=ul9cdbp4aOFLsgKbc677:22 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=tromey.com; s=default; h=Content-Transfer-Encoding:MIME-Version:Message-ID:Date:Subject: Cc:To:From:Sender:Reply-To:Content-Type:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: In-Reply-To:References:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=IL8qO4UBWrCY8h+TR/Y4hsE2OHh/TiwzyUSydch2ZkU=; b=Mq88nIABJaOP+yuMQw9MGPlWey UL8VV+7gcti+b0ONjX7Vmo6uWFSMEZjpiQUMJw1t+IcCUZMN8ojyVR/nXXWVxWTdbZJl+tTugp8L8 ZrUpWVe9V5af2fagIlxV+4tW/; Received: from 71-211-130-31.hlrn.qwest.net ([71.211.130.31]:46964 helo=localhost.localdomain) by box5379.bluehost.com with esmtpsa (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96.1) (envelope-from ) id 1qokoS-002mut-2B; Fri, 06 Oct 2023 07:24:16 -0600 From: Tom Tromey To: gdb-patches@sourceware.org Cc: Tom Tromey Subject: [PATCH] Move -lsocket check to common.m4 Date: Fri, 6 Oct 2023 07:24:09 -0600 Message-ID: <20231006132409.2294987-1-tom@tromey.com> X-Mailer: git-send-email 2.41.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - box5379.bluehost.com X-AntiAbuse: Original Domain - sourceware.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - tromey.com X-BWhitelist: no X-Source-IP: 71.211.130.31 X-Source-L: No X-Exim-ID: 1qokoS-002mut-2B X-Source: X-Source-Args: X-Source-Dir: X-Source-Sender: 71-211-130-31.hlrn.qwest.net (localhost.localdomain) [71.211.130.31]:46964 X-Source-Auth: tom+tromey.com X-Email-Count: 2 X-Org: HG=bhshared;ORG=bluehost; X-Source-Cap: ZWx5bnJvYmk7ZWx5bnJvYmk7Ym94NTM3OS5ibHVlaG9zdC5jb20= X-Local-Domain: yes X-CMAE-Envelope: MS4xfGIKV3UDtYUNz+co5iraeFTZjdrj0WQRFcuZeGZF/gcxKQTcRkeWaBVAaVlaagDDdm4Db2NFeeWMFCJym77JMwyfKh4dFKvYU4wpVNpWSNgTm0ZOSjx2 2c7/zZ6O5NYNIJARzvHRB1Up3YhyBC/F+dCHahT9u5pStgxgt45CIhOnvZEW5Oks8p0vuCxH/U0V/wZ8AzruxdbVXQgQgyebJfQ= X-Spam-Status: No, score=-3024.9 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,GIT_PATCH_0,JMQ_SPF_NEUTRAL,KAM_NUMSUBJECT,RCVD_IN_DNSWL_LOW,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: A user pointed out that the -lsocket check in gdb should also apply to gdbserver -- otherwise it can't find the Solaris socketpair. This patch makes the change. It also removes a couple of redundant function checks from gdb's configure.ac. This was tested by the person who reported the bug. Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=30927 --- gdb/configure | 119 +++++++++++++++++++++---------------------- gdb/configure.ac | 7 +-- gdbserver/configure | 57 +++++++++++++++++++++ gdbsupport/common.m4 | 2 + gdbsupport/configure | 57 +++++++++++++++++++++ 5 files changed, 177 insertions(+), 65 deletions(-) diff --git a/gdb/configure b/gdb/configure index 1cbc356cb96..5361bf42952 100755 --- a/gdb/configure +++ b/gdb/configure @@ -19704,64 +19704,6 @@ if test "$ac_res" != no; then : fi -# Some systems (e.g. Solaris) have `socketpair' in libsocket. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing socketpair" >&5 -$as_echo_n "checking for library containing socketpair... " >&6; } -if ${ac_cv_search_socketpair+:} 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 socketpair (); -int -main () -{ -return socketpair (); - ; - return 0; -} -_ACEOF -for ac_lib in '' socket; 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_socketpair=$ac_res -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext - if ${ac_cv_search_socketpair+:} false; then : - break -fi -done -if ${ac_cv_search_socketpair+:} false; then : - -else - ac_cv_search_socketpair=no -fi -rm conftest.$ac_ext -LIBS=$ac_func_search_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_socketpair" >&5 -$as_echo "$ac_cv_search_socketpair" >&6; } -ac_res=$ac_cv_search_socketpair -if test "$ac_res" != no; then : - test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" - -fi - - # Link in zlib/zstd if we can. This allows us to read compressed debug # sections. @@ -23626,9 +23568,9 @@ $as_echo "#define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h # ------------------------------ # for ac_func in getuid getgid \ - pipe pread pread64 pwrite resize_term \ + pread pread64 pwrite resize_term \ getpgid setsid \ - sigaction sigsetmask socketpair \ + sigsetmask \ ttrace wresize setlocale iconvlist libiconvlist btowc \ setrlimit getrlimit posix_madvise waitpid \ use_default_colors @@ -24473,6 +24415,63 @@ if test "x$ac_cv_func_fork_works" = xyes; then $as_echo "#define HAVE_WORKING_FORK 1" >>confdefs.h +fi + + # Some systems (e.g. Solaris) have `socketpair' in libsocket. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing socketpair" >&5 +$as_echo_n "checking for library containing socketpair... " >&6; } +if ${ac_cv_search_socketpair+:} 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 socketpair (); +int +main () +{ +return socketpair (); + ; + return 0; +} +_ACEOF +for ac_lib in '' socket; 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_socketpair=$ac_res +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext + if ${ac_cv_search_socketpair+:} false; then : + break +fi +done +if ${ac_cv_search_socketpair+:} false; then : + +else + ac_cv_search_socketpair=no +fi +rm conftest.$ac_ext +LIBS=$ac_func_search_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_socketpair" >&5 +$as_echo "$ac_cv_search_socketpair" >&6; } +ac_res=$ac_cv_search_socketpair +if test "$ac_res" != no; then : + test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" + fi for ac_func in fdwalk getrlimit pipe pipe2 poll socketpair sigaction \ diff --git a/gdb/configure.ac b/gdb/configure.ac index 0264199b948..3912b77b27f 100644 --- a/gdb/configure.ac +++ b/gdb/configure.ac @@ -511,9 +511,6 @@ AC_CHECK_LIB(m, main) # Some systems (e.g. Solaris) have `gethostbyname' in libnsl. AC_SEARCH_LIBS(gethostbyname, nsl) -# Some systems (e.g. Solaris) have `socketpair' in libsocket. -AC_SEARCH_LIBS(socketpair, socket) - # Link in zlib/zstd if we can. This allows us to read compressed debug # sections. AM_ZLIB @@ -1349,9 +1346,9 @@ AC_C_BIGENDIAN # ------------------------------ # AC_CHECK_FUNCS([getuid getgid \ - pipe pread pread64 pwrite resize_term \ + pread pread64 pwrite resize_term \ getpgid setsid \ - sigaction sigsetmask socketpair \ + sigsetmask \ ttrace wresize setlocale iconvlist libiconvlist btowc \ setrlimit getrlimit posix_madvise waitpid \ use_default_colors]) diff --git a/gdbserver/configure b/gdbserver/configure index e807c60c08a..202043202cd 100755 --- a/gdbserver/configure +++ b/gdbserver/configure @@ -7135,6 +7135,63 @@ if test "x$ac_cv_func_fork_works" = xyes; then $as_echo "#define HAVE_WORKING_FORK 1" >>confdefs.h +fi + + # Some systems (e.g. Solaris) have `socketpair' in libsocket. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing socketpair" >&5 +$as_echo_n "checking for library containing socketpair... " >&6; } +if ${ac_cv_search_socketpair+:} 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 socketpair (); +int +main () +{ +return socketpair (); + ; + return 0; +} +_ACEOF +for ac_lib in '' socket; 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_socketpair=$ac_res +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext + if ${ac_cv_search_socketpair+:} false; then : + break +fi +done +if ${ac_cv_search_socketpair+:} false; then : + +else + ac_cv_search_socketpair=no +fi +rm conftest.$ac_ext +LIBS=$ac_func_search_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_socketpair" >&5 +$as_echo "$ac_cv_search_socketpair" >&6; } +ac_res=$ac_cv_search_socketpair +if test "$ac_res" != no; then : + test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" + fi for ac_func in fdwalk getrlimit pipe pipe2 poll socketpair sigaction \ diff --git a/gdbsupport/common.m4 b/gdbsupport/common.m4 index 3909ec81ccb..baee66f7326 100644 --- a/gdbsupport/common.m4 +++ b/gdbsupport/common.m4 @@ -51,6 +51,8 @@ AC_DEFUN([GDB_AC_COMMON], [ AC_FUNC_MMAP AC_FUNC_FORK + # Some systems (e.g. Solaris) have `socketpair' in libsocket. + AC_SEARCH_LIBS(socketpair, socket) AC_CHECK_FUNCS([fdwalk getrlimit pipe pipe2 poll socketpair sigaction \ ptrace64 sbrk setns sigaltstack sigprocmask \ setpgid setpgrp getrusage getauxval sigtimedwait]) diff --git a/gdbsupport/configure b/gdbsupport/configure index 9433ac41468..2c15e9df840 100755 --- a/gdbsupport/configure +++ b/gdbsupport/configure @@ -8151,6 +8151,63 @@ if test "x$ac_cv_func_fork_works" = xyes; then $as_echo "#define HAVE_WORKING_FORK 1" >>confdefs.h +fi + + # Some systems (e.g. Solaris) have `socketpair' in libsocket. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing socketpair" >&5 +$as_echo_n "checking for library containing socketpair... " >&6; } +if ${ac_cv_search_socketpair+:} 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 socketpair (); +int +main () +{ +return socketpair (); + ; + return 0; +} +_ACEOF +for ac_lib in '' socket; 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_socketpair=$ac_res +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext + if ${ac_cv_search_socketpair+:} false; then : + break +fi +done +if ${ac_cv_search_socketpair+:} false; then : + +else + ac_cv_search_socketpair=no +fi +rm conftest.$ac_ext +LIBS=$ac_func_search_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_socketpair" >&5 +$as_echo "$ac_cv_search_socketpair" >&6; } +ac_res=$ac_cv_search_socketpair +if test "$ac_res" != no; then : + test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" + fi for ac_func in fdwalk getrlimit pipe pipe2 poll socketpair sigaction \ -- 2.41.0