This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils 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: Binutils is broken with -j N


On Sat, May 21, 2005 at 02:27:41PM -0700, H. J. Lu wrote:
> On Sat, May 21, 2005 at 02:09:12PM -0700, H. J. Lu wrote:
> > This patch
> > 
> > http://sourceware.org/ml/binutils/2005-05/msg00582.html
> > 
> > doesn't support -j N. I got
> > 
> > make[3]: Entering directory `/export/build/linux/binutils-debug/build-i686-linux/ld'
> > Making info in po
> > make[4]: Entering directory `/export/build/linux/binutils-debug/build-i686-linux/ld/po'
> > make[4]: Nothing to be done for `info'.
> > make[4]: Leaving directory `/export/build/linux/binutils-debug/build-i686-linux/ld/po'
> > make[4]: Entering directory `/export/build/linux/binutils-debug/build-i686-linux/ld'
> > ln -s /export/linux/src/binutils/binutils/ld/gen-doc.texi ./configdoc.texi >/dev/null 2>&1 \
> >   || ln /export/linux/src/binutils/binutils/ld/gen-doc.texi ./configdoc.texi >/dev/null 2>&1 \
> >   || cp /export/linux/src/binutils/binutils/ld/gen-doc.texi ./configdoc.texi
> > rm -f ldver.texi
> > eval `grep '^ *VERSION=' /export/linux/src/binutils/binutils/ld/../bfd/configure`; \
> >   echo "@set VERSION $VERSION" > ldver.texi
> > restore=: && backupdir=".am$$" && \
> > am__cwd=`pwd` && cd /export/linux/src/binutils/binutils/ld && \
> > rm -rf $backupdir && mkdir $backupdir && \
> > for f in /export/linux/src/binutils/binutils/ld/ld.info /export/linux/src/binutils/binutils/ld/ld.info-[0-9] /export/linux/src/binutils/binutils/ld/ld.info-[0-9][0-9] /export/linux/src/binutils/binutils/ld/ld.i[0-9] /export/linux/src/binutils/binutils/ld/ld.i[0-9][0-9]; do \
> >   if test -f $f; then mv $f $backupdir; restore=mv; else :; fi; \
> > done; \
> > cd "$am__cwd"; \
> > if makeinfo --split-size=5000000 -I /export/linux/src/binutils/binutils/ld -I /export/linux/src/binutils/binutils/ld/../bfd/doc  -I /export/linux/src/binutils/binutils/ld \
> >  -o /export/linux/src/binutils/binutils/ld/ld.info /export/linux/src/binutils/binutils/ld/ld.texinfo; \
> > then \
> >   rc=0; \
> >   cd /export/linux/src/binutils/binutils/ld; \
> > else \
> >   rc=$?; \
> >   cd /export/linux/src/binutils/binutils/ld && \
> >   $restore $backupdir/* `echo ".//export/linux/src/binutils/binutils/ld/ld.info" | sed 's|[^/]*$||'`; \
> > fi; \
> > rm -rf $backupdir; exit $rc
> > make[4]: Leaving directory `/export/build/linux/binutils-debug/build-i686-linux/ld'
> > ln -s /export/linux/src/binutils/binutils/ld/gen-doc.texi ./configdoc.texi >/dev/null 2>&1 \
> >   || ln /export/linux/src/binutils/binutils/ld/gen-doc.texi ./configdoc.texi >/dev/null 2>&1 \
> >   || cp /export/linux/src/binutils/binutils/ld/gen-doc.texi ./configdoc.texi
> > cp: `/export/linux/src/binutils/binutils/ld/gen-doc.texi' and `./configdoc.texi' are the same file
> > make[3]: *** [configdoc.texi] Error 1
> > make[3]: Leaving directory `/export/build/linux/binutils-debug/build-i686-linux/ld'
> > make[2]: *** [all-ld] Error 2
> > make[2]: *** Waiting for unfinished jobs....
> > 
> > 
> 
> The problem is "info" isn't a direct target. Make may start "info" and
> "ld.1" at the same time. I will check in this patch to fix it.
> 
> 
> H.J.
> ---
> 2005-05-21  H.J. Lu  <hongjiu.lu@intel.com>
> 
> 	* Makefile.am (ld.1): Depend on "info".
> 	* Makefile.in: Regenerated.
> 

This is the real patch I checked in.


H.J.
----
Index: Makefile.am
===================================================================
RCS file: /cvs/src/src/ld/Makefile.am,v
retrieving revision 1.177
retrieving revision 1.179
diff -u -p -r1.177 -r1.179
--- Makefile.am	19 May 2005 23:49:51 -0000	1.177
+++ Makefile.am	21 May 2005 22:22:19 -0000	1.179
@@ -1644,7 +1644,9 @@ ld.dvi: $(srcdir)/ld.texinfo configdoc.t
 # Build the man page from the texinfo file
 # The sed command removes the no-adjust Nroff command so that
 # the man output looks standard.
-ld.1: $(srcdir)/ld.texinfo configdoc.texi ldver.texi
+# It depends on "info" instead of "configdoc.texi ldver.texi" to
+# support parallel build.
+ld.1: $(srcdir)/ld.texinfo info
 	touch $@
 	-$(TEXI2POD) $(MANCONF) < $(srcdir)/ld.texinfo > ld.pod
 	-($(POD2MAN) ld.pod | \


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