> On Thu, Feb 24, 2022 at 2:49 PM Jose E. Marchesi
> <jose.march...@oracle.com> wrote:
>>
>>
>> > On Wed, Feb 23, 2022 at 8:56 PM Jose E. Marchesi
>> > <jose.march...@oracle.com> wrote:
>> >>
>> >> This patch changes the build machinery in order to disable the build
>> >> of GCOV (both compiler and libgcc) in bpf-*-* targets.  The reason for
>> >> this change is that BPF is (currently) too restricted in order to
>> >> support the coverage instrumentalization.
>> >>
>> >> Tested in bpf-unknown-none and x86_64-linux-gnu targets.
>> >
>> > LGTM.
>>
>> Thanks.
>>
>> Is this OK for gcc 12 as well?  If yes, what is the proper branch other
>> than master?
>
> gcc 12 is still master.

Committed to master.
Thanks!

>> >> 2022-02-23  Jose E. Marchesi  <jose.march...@oracle.com>
>> >>
>> >> gcc/ChangeLog
>> >>
>> >>         PR target/104656
>> >>         * configure.ac: --disable-gcov if targetting bpf-*.
>> >>         * configure: Regenerate.
>> >>
>> >> libgcc/ChangeLog
>> >>
>> >>         PR target/104656
>> >>         * configure.ac: --disable-gcov if targetting bpf-*.
>> >>         * configure: Regenerate.
>> >> ---
>> >>  gcc/configure       | 14 +++++++++++---
>> >>  gcc/configure.ac    | 10 +++++++++-
>> >>  libgcc/configure    | 31 +++++++++++++++++++------------
>> >>  libgcc/configure.ac | 17 ++++++++++++-----
>> >>  4 files changed, 51 insertions(+), 21 deletions(-)
>> >>
>> >> diff --git a/gcc/configure b/gcc/configure
>> >> index 258b17a226e..22eb3451e3d 100755
>> >> --- a/gcc/configure
>> >> +++ b/gcc/configure
>> >> @@ -8085,12 +8085,20 @@ fi
>> >>  if test "${enable_gcov+set}" = set; then :
>> >>    enableval=$enable_gcov;
>> >>  else
>> >> -  enable_gcov=yes
>> >> +  case $target in
>> >> +       bpf-*-*)
>> >> +         enable_gcov=no
>> >> +       ;;
>> >> +       *)
>> >> +         enable_gcov=yes
>> >> +       ;;
>> >> +     esac
>> >>  fi
>> >>
>> >>
>> >>
>> >>
>> >> +
>> >>  # Check whether --with-specs was given.
>> >>  if test "${with_specs+set}" = set; then :
>> >>    withval=$with_specs; CONFIGURE_SPECS=$withval
>> >> @@ -19659,7 +19667,7 @@ else
>> >>    lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
>> >>    lt_status=$lt_dlunknown
>> >>    cat > conftest.$ac_ext <<_LT_EOF
>> >> -#line 19662 "configure"
>> >> +#line 19670 "configure"
>> >>  #include "confdefs.h"
>> >>
>> >>  #if HAVE_DLFCN_H
>> >> @@ -19765,7 +19773,7 @@ else
>> >>    lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
>> >>    lt_status=$lt_dlunknown
>> >>    cat > conftest.$ac_ext <<_LT_EOF
>> >> -#line 19768 "configure"
>> >> +#line 19776 "configure"
>> >>  #include "confdefs.h"
>> >>
>> >>  #if HAVE_DLFCN_H
>> >> diff --git a/gcc/configure.ac b/gcc/configure.ac
>> >> index 06750cee977..20da90901f8 100644
>> >> --- a/gcc/configure.ac
>> >> +++ b/gcc/configure.ac
>> >> @@ -1041,7 +1041,15 @@ AC_SUBST(enable_shared)
>> >>
>> >>  AC_ARG_ENABLE(gcov,
>> >>  [  --disable-gcov          don't provide libgcov and related host tools],
>> >> -[], [enable_gcov=yes])
>> >> +[], [case $target in
>> >> +       bpf-*-*)
>> >> +         enable_gcov=no
>> >> +       ;;
>> >> +       *)
>> >> +         enable_gcov=yes
>> >> +       ;;
>> >> +     esac])
>> >> +
>> >>  AC_SUBST(enable_gcov)
>> >>
>> >>  AC_ARG_WITH(specs,
>> >> diff --git a/libgcc/configure b/libgcc/configure
>> >> index 4919a56f518..52bf25d4e94 100755
>> >> --- a/libgcc/configure
>> >> +++ b/libgcc/configure
>> >> @@ -630,6 +630,7 @@ LIPO
>> >>  AR
>> >>  toolexeclibdir
>> >>  toolexecdir
>> >> +enable_gcov
>> >>  target_subdir
>> >>  host_subdir
>> >>  build_subdir
>> >> @@ -653,7 +654,6 @@ build_cpu
>> >>  build
>> >>  with_aix_soname
>> >>  enable_vtable_verify
>> >> -enable_gcov
>> >>  enable_shared
>> >>  libgcc_topdir
>> >>  target_alias
>> >> @@ -701,7 +701,6 @@ with_target_subdir
>> >>  with_cross_host
>> >>  with_ld
>> >>  enable_shared
>> >> -enable_gcov
>> >>  enable_vtable_verify
>> >>  with_aix_soname
>> >>  enable_version_specific_runtime_libs
>> >> @@ -709,6 +708,7 @@ with_toolexeclibdir
>> >>  with_slibdir
>> >>  enable_maintainer_mode
>> >>  with_build_libsubdir
>> >> +enable_gcov
>> >>  enable_largefile
>> >>  enable_decimal_float
>> >>  with_system_libunwind
>> >> @@ -1342,12 +1342,12 @@ Optional Features:
>> >>    --disable-FEATURE       do not include FEATURE (same as 
>> >> --enable-FEATURE=no)
>> >>    --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
>> >>    --disable-shared        don't provide a shared libgcc
>> >> -  --disable-gcov          don't provide libgcov and related host tools
>> >>    --enable-vtable-verify    Enable vtable verification feature
>> >>    --enable-version-specific-runtime-libs    Specify that runtime 
>> >> libraries should be installed in a compiler-specific directory
>> >>    --enable-maintainer-mode
>> >>                            enable make rules and dependencies not useful 
>> >> (and
>> >>                            sometimes confusing) to the casual installer
>> >> +  --disable-gcov          don't provide libgcov and related host tools
>> >>    --disable-largefile     omit support for large files
>> >>    --enable-decimal-float={no,yes,bid,dpd}
>> >>                         enable decimal float extension to C.  Selecting 
>> >> 'bid'
>> >> @@ -2252,15 +2252,6 @@ fi
>> >>
>> >>
>> >>
>> >> -# Check whether --enable-gcov was given.
>> >> -if test "${enable_gcov+set}" = set; then :
>> >> -  enableval=$enable_gcov;
>> >> -else
>> >> -  enable_gcov=yes
>> >> -fi
>> >> -
>> >> -
>> >> -
>> >>  # Check whether --enable-vtable-verify was given.
>> >>  if test "${enable_vtable_verify+set}" = set; then :
>> >>    enableval=$enable_vtable_verify; case "$enableval" in
>> >> @@ -2713,6 +2704,22 @@ fi
>> >>  target_subdir=${target_noncanonical}
>> >>
>> >>
>> >> +# Check whether --enable-gcov was given.
>> >> +if test "${enable_gcov+set}" = set; then :
>> >> +  enableval=$enable_gcov;
>> >> +else
>> >> +  case $target in
>> >> +       bpf-*-*)
>> >> +         enable_gcov=no
>> >> +       ;;
>> >> +       *)
>> >> +         enable_gcov=yes
>> >> +       ;;
>> >> +     esac
>> >> +fi
>> >> +
>> >> +
>> >> +
>> >>  # Calculate toolexeclibdir
>> >>  # Also toolexecdir, though it's only used in toolexeclibdir
>> >>  case ${version_specific_libs} in
>> >> diff --git a/libgcc/configure.ac b/libgcc/configure.ac
>> >> index 13a80b2551b..6f0b67c2adc 100644
>> >> --- a/libgcc/configure.ac
>> >> +++ b/libgcc/configure.ac
>> >> @@ -68,11 +68,6 @@ AC_ARG_ENABLE(shared,
>> >>  ], [enable_shared=yes])
>> >>  AC_SUBST(enable_shared)
>> >>
>> >> -AC_ARG_ENABLE(gcov,
>> >> -[  --disable-gcov          don't provide libgcov and related host tools],
>> >> -[], [enable_gcov=yes])
>> >> -AC_SUBST(enable_gcov)
>> >> -
>> >>  AC_ARG_ENABLE(vtable-verify,
>> >>  [  --enable-vtable-verify    Enable vtable verification feature ],
>> >>  [case "$enableval" in
>> >> @@ -163,6 +158,18 @@ ACX_NONCANONICAL_HOST
>> >>  ACX_NONCANONICAL_TARGET
>> >>  GCC_TOPLEV_SUBDIRS
>> >>
>> >> +AC_ARG_ENABLE(gcov,
>> >> +[  --disable-gcov          don't provide libgcov and related host tools],
>> >> +[], [case $target in
>> >> +       bpf-*-*)
>> >> +         enable_gcov=no
>> >> +       ;;
>> >> +       *)
>> >> +         enable_gcov=yes
>> >> +       ;;
>> >> +     esac])
>> >> +AC_SUBST(enable_gcov)
>> >> +
>> >>  # Calculate toolexeclibdir
>> >>  # Also toolexecdir, though it's only used in toolexeclibdir
>> >>  case ${version_specific_libs} in
>> >> --
>> >> 2.11.0
>> >>

Reply via email to