Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Dave Murphy <wintermute2k4@ntlworld.com>
To: Daniel Jacobowitz <drow@false.org>
Cc: Eli Zaretskii <eliz@gnu.org>,  gdb-patches@sources.redhat.com
Subject: Re: [patch] Build arm-elf-gdb on mingw host
Date: Mon, 26 Sep 2005 04:46:00 -0000	[thread overview]
Message-ID: <43377D19.7050505@ntlworld.com> (raw)
In-Reply-To: <20050926035937.GA24565@nevyn.them.org>

Daniel Jacobowitz wrote:

>On Mon, Sep 26, 2005 at 06:46:10AM +0300, Eli Zaretskii wrote:
>  
>
>>>When building the bfd/doc directory under mingw/msys chew.c converts 
>>>line endings to crlf.  I've patched so the files are read as binary, 
>>>preventing this conversion.
>>>      
>>>
>>Why?  What's wrong with having the output from chew have CRLF line
>>endings on Windows?
>>    
>>
>
>Yeah, I'm wondering about this too.
>
>  
>
Sorry, I should have said that under mingw/msys files read in text mode 
have line endings converted. There are numerous places in chew.c where 
it checks for a newline character with expressions like "while (at (tos, 
idx) == '\n')", see skip_white_and_stars(src,  idx), 
strip_trailing_newlines(),  remove_noncomments (src, dst), 
outputdots(),  courierize(),  bulletize(), copy_past_newline (ptr, idx, 
dst), kill_bogus_lines(), indent(), skip_past_newline () and  nextword 
(string, word). It seemed easier to just read the input files as binary 
and suppress the conversion rather than make all the code deal with the 
"/r/n" sequence.

Without the supression we get the following error when building in bfd/doc

./chew.exe -f ../../../../gdb/bfd/doc/doc.str 
<../../../../gdb/bfd/doc/../mmo.c >mmo.tmp
/bin/sh ../../../../gdb/bfd/doc/../../move-if-change mmo.tmp mmo.texi
restore=: && backupdir=".am$$" && \
am__cwd=`pwd` && cd ../../../../gdb/bfd/doc && \
rm -rf $backupdir && mkdir $backupdir && \
for f in ../../../../gdb/bfd/doc/bfd.info 
../../../../gdb/bfd/doc/bfd.info-[0-9] 
../../../../gdb/bfd/doc/bfd.info-[0-9][0-9] ../../../../gdb
/bfd/doc/bfd.i[0-9] ../../../../gdb/bfd/doc/bfd.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 ../../../../gdb/bfd/doc \
 -o ../../../../gdb/bfd/doc/bfd.info ../../../../gdb/bfd/doc/bfd.texinfo; \
then \
  rc=0; \
  cd ../../../../gdb/bfd/doc; \
else \
  rc=$?; \
  cd ../../../../gdb/bfd/doc && \
  $restore $backupdir/* `echo "./../../../../gdb/bfd/doc/bfd.info" | sed 
's|[^/]*$||'`; \
fi; \
rm -rf $backupdir; exit $rc
 section mapping'.ss reference to nonexistent node `mmo
 a New Hash Table Type'.ference to nonexistent node `Deriving
makeinfo: Removing output file `../../../../gdb/bfd/doc/bfd.info' due to 
errors; use --force to preserve.
make[2]: *** [../../../../gdb/bfd/doc/bfd.info] Error 2

This is due to @xref{mmo section mapping}.crossing a line boundary on 
line 67 of mmo.c

>>>SIGTRAP isn't defined in the MinGW headers, I patched remote-sim.c to 
>>>define this if it's not defined.
>>>      
>>>
>>I don't think this is a good idea.  It is much better (and widely
>>practiced) to #ifdef away portions of code that use SIGTRAP, like
>>this:
>>
>>    #ifdef SIGTRAP
>>    ... code that depends on SIGTRAP ...
>>    #endif
>>    
>>
>
>In this case, unfortunately, it's a bit more complicated to fix.  You
>can find a similar workaround patch from Paul Brook in the archives,
>and my discussion (with Mark?) about it.  The gdb<->sim interface uses
>"signals", meaning the host signal numbers.  And without SIGTRAP we
>can't step or breakpoint.  Thus, a lot of files in sim already define
>SIGTRAP.
>
>They ought to be converted to the relatively new "gdb/signals.h" header
>in include/, but the simulators are also concerned with actual host
>signals in places, so a simple search and replace isn't right either.
>It's going to take a little investigation to fix this properly.
>
>  
>
 From a brief look at the sources it appeared to me that it was a signal 
being passed internally between gdb and the simulator. I'll have a look 
for the previous discussions.

Dave


  reply	other threads:[~2005-09-26  4:46 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-09-25 23:23 Dave Murphy
2005-09-26  3:46 ` Eli Zaretskii
2005-09-26  3:59   ` Daniel Jacobowitz
2005-09-26  4:46     ` Dave Murphy [this message]
2005-09-26 13:23       ` Daniel Jacobowitz
2005-09-26 14:09         ` Christopher Faylor
2005-09-26 14:14           ` Daniel Jacobowitz
2005-09-26 14:26             ` Christopher Faylor
2005-09-26 14:31               ` Daniel Jacobowitz
2005-09-26 15:41                 ` Christopher Faylor
2005-09-26 19:18                 ` Eli Zaretskii
2006-04-08 20:21               ` Daniel Jacobowitz
2006-04-10 16:51                 ` Christopher Faylor
2006-04-10 16:58                   ` Daniel Jacobowitz
2005-09-26 19:16             ` Eli Zaretskii
2005-09-27  2:02               ` Christopher Faylor
2005-09-26 19:13           ` Eli Zaretskii
2005-09-26 19:08       ` Eli Zaretskii

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=43377D19.7050505@ntlworld.com \
    --to=wintermute2k4@ntlworld.com \
    --cc=drow@false.org \
    --cc=eliz@gnu.org \
    --cc=gdb-patches@sources.redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox