> 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? >> 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 >>