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]

Re: [build] Move unwinder to toplevel libgcc (v2)


On 08/11/2011 08:24 PM, H.J. Lu wrote:
On Thu, Aug 11, 2011 at 11:19 AM, H.J. Lu<hjl.tools@gmail.com> wrote:
On Thu, Aug 11, 2011 at 8:23 AM, Rainer Orth
<ro@cebitec.uni-bielefeld.de>  wrote:
Paolo Bonzini<bonzini@gnu.org> writes:

On 08/10/2011 06:05 PM, Rainer Orth wrote:
True: it is called once per multilib.

Just to doublecheck, are we sure that unwind.h is always the same?
Yep: it's unwind-generic.h for almost all targets, just a few arm
targets use config/arm/unwind-arm.h for all multilibs.

Patch doing rm -f is preapproved then.

Here's what I installed, after making libgcc/unwind-generic.h read-only, reconfiguring and rebuilding first without and with the patch and observe the bug gone on i386-pc-solaris2.10.

Rainer


2011-08-11 Rainer Orth<ro@CeBiTec.Uni-Bielefeld.DE>


* Makefile.in (install-unwind_h): Remove destination file first.

diff --git a/libgcc/Makefile.in b/libgcc/Makefile.in
--- a/libgcc/Makefile.in
+++ b/libgcc/Makefile.in
@@ -994,6 +994,7 @@ gcc-extra-parts:
  all: $(extra-parts)

  install-unwind_h:
+       rm -f $(gcc_objdir)/include/unwind.h
        cp unwind.h $(gcc_objdir)/include/unwind.h
        chmod a+r $(gcc_objdir)/include/unwind.h


It breaks bootstrap with "make -j12" on a 24 core Linux/x86-64 :


http://gcc.gnu.org/ml/gcc-regression/2011-08/msg00179.html

rm -f ../../.././gcc/include/unwind.h
cp unwind.h ../../.././gcc/include/unwind.h
rm -f ../.././gcc/include/unwind.h
chmod a+r ../../.././gcc/include/unwind.h
cp unwind.h ../.././gcc/include/unwind.h
chmod: cannot access `../../.././gcc/include/unwind.h': No such file
or directory
make[8]: *** [install-unwind_h] Error 1
make[8]: *** Waiting for unfinished jobs....
chmod a+r ../.././gcc/include/unwind.h

We may have a race condition here.

I opened:


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50047

Does the attached patch work?


Paolo

Attachment: Makefile.in
Description: Text document


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