This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] Fix a nonfatal build error


This patch fixes the cause of the following build output during a
non-bootstrap build:

make[2]: Entering directory
`/home/patrick/code/gcc-build/x86_64-unknown-linux-gnu/libgcc'
# If this is the top-level multilib, build all the other
# multilibs.
# Early copyback; see "all" above for the rationale.  The
# early copy is necessary so that the gcc -B options find
# the right startup files when linking shared libgcc.
/bin/bash ../../../gcc/libgcc/../mkinstalldirs ../.././gcc
parts="crtbegin.o crtbeginS.o crtbeginT.o crtend.o crtendS.o
vtv_start.o vtv_end.o vtv_start_preinit.o vtv_end_preinit.o
crtprec32.o crtprec64.o crtprec80.o crtfastmath.o";
                \
        for file in $parts; do                                  \
          rm -f ../.././gcc/$file;              \
          /usr/bin/install -c -m 644 $file ../.././gcc/;        \
          case $file in                                         \
            *.a)                                                \
              ranlib ../.././gcc/$file ;;       \
          esac;                                                 \
        done
/usr/bin/install: cannot stat ‘vtv_start.o’: No such file or directory
/usr/bin/install: cannot stat ‘vtv_end.o’: No such file or directory
/usr/bin/install: cannot stat ‘vtv_start_preinit.o’: No such file or directory
/usr/bin/install: cannot stat ‘vtv_end_preinit.o’: No such file or directory

The vtv_*.o files are only built when vtable verification is enabled
(--enable-vtable-verify) and are otherwise nonexistent.  Therefore
these object files should only be added to $(EXTRA_PARTS)
when vtable verification is enabled.

2014-01-11  Patrick Palka  <patrick@parcs.ath.cx>

        * config.host (extra_parts): Don't include vtv_*.o objects unless
        vtable verification is enabled.

--- a/libgcc/config.host
+++ b/libgcc/config.host
@@ -209,7 +209,10 @@ case ${host} in
   ;;
 *-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu | *-*-knetbsd*-gnu |
*-*-gnu* | *-*-kopensolaris*-gnu)
   tmake_file="$tmake_file t-crtstuff-pic t-libgcc-pic t-eh-dw2-dip
t-slibgcc t-slibgcc-gld t-slibgcc-elf-ver t-linux"
-  extra_parts="crtbegin.o crtbeginS.o crtbeginT.o crtend.o crtendS.o
vtv_start.o vtv_end.o vtv_start_preinit.o vtv_end_preinit.o"
+  extra_parts="crtbegin.o crtbeginS.o crtbeginT.o crtend.o crtendS.o"
+  if test $enable_vtable_verify = yes; then
+    extra_parts="$extra_parts vtv_start.o vtv_end.o
vtv_start_preinit.o vtv_end_preinit.o"
+  fi
   ;;
 *-*-lynxos*)
   tmake_file="$tmake_file t-lynx $cpu_type/t-crtstuff t-crtstuff-pic
t-libgcc-pic"


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]