This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
RE: Broken build: bfd.info does not compile.
- From: "Blanc, Nicolas" <nicolas dot blanc at intel dot com>
- To: nick clifton <nickc at redhat dot com>
- Cc: "gdb-patches at sourceware dot org" <gdb-patches at sourceware dot org>
- Date: Tue, 16 Apr 2013 16:39:33 +0000
- Subject: RE: Broken build: bfd.info does not compile.
- References: <388084C8C1E6A64FA36AD1D656E4856619DEB4D2 at IRSMSX102 dot ger dot corp dot intel dot com> <516D6060 dot 6040208 at redhat dot com>
Hi Nick,
> Could there have been a problem with your build system (or maybe the bfd
> Makefile) ? If you clean out the bfd build directory and then rebuild does the problem go away ?
Unfortunately no. The code compile fine on my system up to check-in a46b9c7 -- same for my colleagues.
> The Miscellaneos node should be defined in the bfd/doc/bfdt.texi file in your build tree. This is include by the bfd.texinfo file at line 219.
Actually, I have two bfdt.texi files: one in my build tree and one in my source tree. They differ though -- see the details below.
Does this ring a bell with you?
Cheers,
Nicolas
bfdt.texi:
==========
$ diff ~/gdb/bfd/doc/bfdt.texi ~/build/gdb-7.6/bfd/doc/bfdt.texi
0a1
> @node typedef bfd, Error reporting, BFD front end, BFD front end
288a290
> @node Error reporting, Miscellaneous, typedef bfd, BFD front end
319a322
> bfd_error_missing_dso,
458a462
> @node Miscellaneous, Memory Usage, Error reporting, BFD front end
826,879d829
<
< @example
< struct bfd_preserve
< @{
< void *marker;
< void *tdata;
< flagword flags;
< const struct bfd_arch_info *arch_info;
< struct bfd_section *sections;
< struct bfd_section *section_last;
< unsigned int section_count;
< struct bfd_hash_table section_htab;
< @};
<
< @end example
< @findex bfd_preserve_save
< @subsubsection @code{bfd_preserve_save}
< @strong{Synopsis}
< @example
< bfd_boolean bfd_preserve_save (bfd *, struct bfd_preserve *);
< @end example
< @strong{Description}@*
< When testing an object for compatibility with a particular
< target back-end, the back-end object_p function needs to set
< up certain fields in the bfd on successfully recognizing the
< object. This typically happens in a piecemeal fashion, with
< failures possible at many points. On failure, the bfd is
< supposed to be restored to its initial state, which is
< virtually impossible. However, restoring a subset of the bfd
< state works in practice. This function stores the subset and
< reinitializes the bfd.
<
< @findex bfd_preserve_restore
< @subsubsection @code{bfd_preserve_restore}
< @strong{Synopsis}
< @example
< void bfd_preserve_restore (bfd *, struct bfd_preserve *);
< @end example
< @strong{Description}@*
< This function restores bfd state saved by bfd_preserve_save.
< If MARKER is non-NULL in struct bfd_preserve then that block
< and all subsequently bfd_alloc'd memory is freed.
<
< @findex bfd_preserve_finish
< @subsubsection @code{bfd_preserve_finish}
< @strong{Synopsis}
< @example
< void bfd_preserve_finish (bfd *, struct bfd_preserve *);
< @end example
< @strong{Description}@*
< This function should be called when the bfd state saved by
< bfd_preserve_save is no longer needed. ie. when the back-end
< object_p function returns with success.
<
This is my git log:
===================
~/gdb/$ git log --oneline | head -n 8
6488eb6 PR ld/12494 * bfd/elf32-avr.c: Consider all sections to determine if linker relaxation can safely delete a ret after a call/jmp
2a90302 gdb/testsuite/ * gdb.server/server-kill.exp (tstatus): Permit also ECONNRESET response.
a46b9c7 * bfd.c (typedef bfd, Error reporting, Miscellaneous): Add INODEs.
e1680b9 Avoid potencially-stale errno usage.
2ea5f4d gdb/ * NEWS: Mention new btrace RSP packets.
32175db * symmisc.c (dump_msymbols): Cast fprintf_filtered argument to long.
22fdb0b daily update
64a7053 *** empty log message ***
This is my git status:
======================
~/gdb$ git status
# Not currently on any branch.
# Untracked files:
# (use "git add <file>..." to include in what will be committed)
#
# gdb/tags
# tags
nothing added to commit but untracked files present (use "git add" to track)
Then I compile GDB in this way:
===============================
~/build/gdb-7.6-upstream$ rm -rf *
~/build/gdb-7.6-upstream$ ~/gdb/configure
~/build/gdb-7.6-upstream$ make
This is the command that fails:
===============================
/build/gdb-7.6-upstream/bfd/doc$ makeinfo --split-size=5000000 --split-size=5000000 -I /users/nblanc/gdb/bfd/doc -o bfd.info `test -f 'bfd.texinfo' || echo '/users/nblanc/gdb/bfd/doc/'`bfd.texinfo
/users/nblanc/gdb/bfd/doc/bfd.texinfo:222: Prev reference to nonexistent node `Miscellaneous' (perhaps incorrect sectioning?).
/users/nblanc/gdb/bfd/doc/bfd.texinfo:201: Menu reference to nonexistent node `Miscellaneous' (perhaps incorrect sectioning?).
/users/nblanc/gdb/bfd/doc/bfd.texinfo:200: Menu reference to nonexistent node `Error reporting' (perhaps incorrect sectioning?).
/users/nblanc/gdb/bfd/doc/bfd.texinfo:199: Menu reference to nonexistent node `typedef bfd' (perhaps incorrect sectioning?).
makeinfo: Removing output file `bfd.info' due to errors; use --force to preserve.
This is my version of makeinfo:
===============================
~$ makeinfo --version
makeinfo (GNU texinfo) 4.13
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Intel GmbH
Dornacher Strasse 1
85622 Feldkirchen/Muenchen, Deutschland
Sitz der Gesellschaft: Feldkirchen bei Muenchen
Geschaeftsfuehrer: Christian Lamprechter, Hannes Schwaderer, Douglas Lusk
Registergericht: Muenchen HRB 47456
Ust.-IdNr./VAT Registration No.: DE129385895
Citibank Frankfurt a.M. (BLZ 502 109 00) 600119052