https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81080

            Bug ID: 81080
           Summary: target libgcov not built with large file support
           Product: gcc
           Version: 7.1.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: gcov-profile
          Assignee: unassigned at gcc dot gnu.org
          Reporter: rguenth at gcc dot gnu.org
                CC: jsm28 at gcc dot gnu.org, marxin at gcc dot gnu.org
  Target Milestone: ---
            Target: x86_64-*-*

On x86_64 the 32bit libgcov runtime is not built with large file support.  It
seems we end up including tconfig.h which will simply source auto-host.h which
is _not_ appropriate (or enough) for multilibs?

It looks like the auto-target.h produced in libgcc/ is only included from
unwind-c.c though which seems kind-of odd (it's also odd that it includes
it _after_ tsystem.h ...)

The following seems to work to produce a
x86_64-unknown-linux-gnu/32/libgcc/libgcov.a with LFS support:

Index: configure.ac
===================================================================
--- configure.ac        (revision 249145)
+++ configure.ac        (working copy)
@@ -191,6 +191,8 @@ GCC_NO_EXECUTABLES
 AC_PROG_CC
 AC_PROG_CPP_WERROR

+AC_SYS_LARGEFILE
+
 AC_CHECK_SIZEOF([double])
 AC_CHECK_SIZEOF([long double])
 AS_VAR_ARITH([double_type_size], [$ac_cv_sizeof_double \* 8])
Index: libgcov.h
===================================================================
--- libgcov.h   (revision 249145)
+++ libgcov.h   (working copy)
@@ -38,6 +38,7 @@
 /* This path will be used by libgcov runtime.  */

 #include "tconfig.h"
+#include "auto-target.h"
 #include "tsystem.h"
 #include "coretypes.h"
 #include "tm.h"


Joseph, is the above a suitable fix?

Reply via email to