aboutsummaryrefslogtreecommitdiff
path: root/gprofng
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2022-03-15 08:52:30 -0700
committerH.J. Lu <hjl.tools@gmail.com>2022-03-16 06:43:24 -0700
commita8b34706ef017a2032a78892a8595d36029f85a3 (patch)
tree0d27772419e172fad7c6b1209caba2bdda3602b5 /gprofng
parentc5edd3b8847f118bd022c473b126695fb39f6412 (diff)
downloadfsf-binutils-gdb-a8b34706ef017a2032a78892a8595d36029f85a3.zip
fsf-binutils-gdb-a8b34706ef017a2032a78892a8595d36029f85a3.tar.gz
fsf-binutils-gdb-a8b34706ef017a2032a78892a8595d36029f85a3.tar.bz2
gprofng: Don't hardcode -Wno-nonnull-compare
Use -Wno-nonnull-compare only if it is supported. PR gprof/28969 * libcollector/Makefile.am (AM_CFLAGS): Replace -Wno-nonnull-compare with GPROFNG_NO_NONNULL_COMPARE_CFLAGS. * libcollector/configure.ac (GPROFNG_NO_NONNULL_COMPARE_CFLAGS): New AC_SUBST for -Wno-nonnull-compare. * libcollector/Makefile.in: Regenerate. * libcollector/aclocal.m4: Likewise. * libcollector/configure: Likewise.
Diffstat (limited to 'gprofng')
-rw-r--r--gprofng/libcollector/Makefile.am2
-rw-r--r--gprofng/libcollector/Makefile.in3
-rw-r--r--gprofng/libcollector/aclocal.m41
-rwxr-xr-xgprofng/libcollector/configure64
-rw-r--r--gprofng/libcollector/configure.ac3
5 files changed, 69 insertions, 4 deletions
diff --git a/gprofng/libcollector/Makefile.am b/gprofng/libcollector/Makefile.am
index a41b920..901d9a5 100644
--- a/gprofng/libcollector/Makefile.am
+++ b/gprofng/libcollector/Makefile.am
@@ -41,7 +41,7 @@ CSOURCES = \
collector.c \
$(NULL)
-AM_CFLAGS = $(GPROFNG_CFLAGS) -Wno-nonnull-compare
+AM_CFLAGS = $(GPROFNG_CFLAGS) $(GPROFNG_NO_NONNULL_COMPARE_CFLAGS)
AM_CPPFLAGS = $(GPROFNG_CPPFLAGS) -I.. -I$(srcdir) \
-I$(srcdir)/../common -I$(srcdir)/../src \
-I$(srcdir)/../../include
diff --git a/gprofng/libcollector/Makefile.in b/gprofng/libcollector/Makefile.in
index f9ed2d9..55039aa 100644
--- a/gprofng/libcollector/Makefile.in
+++ b/gprofng/libcollector/Makefile.in
@@ -324,6 +324,7 @@ ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
FGREP = @FGREP@
+GPROFNG_NO_NONNULL_COMPARE_CFLAGS = @GPROFNG_NO_NONNULL_COMPARE_CFLAGS@
GPROFNG_VARIANT = @GPROFNG_VARIANT@
GREP = @GREP@
INSTALL = @INSTALL@
@@ -437,7 +438,7 @@ CSOURCES = \
collector.c \
$(NULL)
-AM_CFLAGS = $(GPROFNG_CFLAGS) -Wno-nonnull-compare
+AM_CFLAGS = $(GPROFNG_CFLAGS) $(GPROFNG_NO_NONNULL_COMPARE_CFLAGS)
AM_CPPFLAGS = $(GPROFNG_CPPFLAGS) -I.. -I$(srcdir) \
-I$(srcdir)/../common -I$(srcdir)/../src \
-I$(srcdir)/../../include
diff --git a/gprofng/libcollector/aclocal.m4 b/gprofng/libcollector/aclocal.m4
index b269c73..2d13dba 100644
--- a/gprofng/libcollector/aclocal.m4
+++ b/gprofng/libcollector/aclocal.m4
@@ -1230,6 +1230,7 @@ AC_SUBST([am__untar])
m4_include([../../config/depstand.m4])
m4_include([../../config/lead-dot.m4])
m4_include([../../config/override.m4])
+m4_include([../../config/warnings.m4])
m4_include([../../libtool.m4])
m4_include([../../ltoptions.m4])
m4_include([../../ltsugar.m4])
diff --git a/gprofng/libcollector/configure b/gprofng/libcollector/configure
index 887d271..5a85365 100755
--- a/gprofng/libcollector/configure
+++ b/gprofng/libcollector/configure
@@ -634,6 +634,7 @@ am__EXEEXT_TRUE
LTLIBOBJS
LIBOBJS
CLOCK_GETTIME_LINK
+GPROFNG_NO_NONNULL_COMPARE_CFLAGS
GPROFNG_VARIANT
CXXCPP
OTOOL64
@@ -12014,7 +12015,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 12017 "configure"
+#line 12018 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -12120,7 +12121,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 12123 "configure"
+#line 12124 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -15438,6 +15439,65 @@ case "${target}" in
esac
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+GPROFNG_NO_NONNULL_COMPARE_CFLAGS=
+save_CFLAGS="$CFLAGS"
+for real_option in -Wno-nonnull-compare; do
+ # Do the check with the no- prefix removed since gcc silently
+ # accepts any -Wno-* option on purpose
+ case $real_option in
+ -Wno-*) option=-W`expr x$real_option : 'x-Wno-\(.*\)'` ;;
+ *) option=$real_option ;;
+ esac
+ as_acx_Woption=`$as_echo "acx_cv_prog_cc_warning_$option" | $as_tr_sh`
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports $option" >&5
+$as_echo_n "checking whether $CC supports $option... " >&6; }
+if eval \${$as_acx_Woption+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ CFLAGS="$option"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ eval "$as_acx_Woption=yes"
+else
+ eval "$as_acx_Woption=no"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
+fi
+eval ac_res=\$$as_acx_Woption
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+ if test `eval 'as_val=${'$as_acx_Woption'};$as_echo "$as_val"'` = yes; then :
+ GPROFNG_NO_NONNULL_COMPARE_CFLAGS="$GPROFNG_NO_NONNULL_COMPARE_CFLAGS${GPROFNG_NO_NONNULL_COMPARE_CFLAGS:+ }$real_option"
+fi
+ done
+CFLAGS="$save_CFLAGS"
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+
+
+
clock_gettime_link=
# At least for glibc, clock_gettime is in librt. But don't
# pull that in if it still doesn't give us the function we want. This
diff --git a/gprofng/libcollector/configure.ac b/gprofng/libcollector/configure.ac
index bc8c3f1..d82733f 100644
--- a/gprofng/libcollector/configure.ac
+++ b/gprofng/libcollector/configure.ac
@@ -54,6 +54,9 @@ case "${target}" in
esac
AC_SUBST(GPROFNG_VARIANT)
+ACX_PROG_CC_WARNING_OPTS([-Wno-nonnull-compare], [GPROFNG_NO_NONNULL_COMPARE_CFLAGS])
+AC_SUBST(GPROFNG_NO_NONNULL_COMPARE_CFLAGS)
+
clock_gettime_link=
# At least for glibc, clock_gettime is in librt. But don't
# pull that in if it still doesn't give us the function we want. This