RISC OS paths in cross compiled source

Alex Macfarlane Smith archifishal at gmx.co.uk
Thu Jun 9 11:53:04 PDT 2005


In message <20050609184203.GT9763 at chiark.greenend.org.uk>
          Theo Markettos <theo at markettos.org.uk> wrote:

> I'm sure I've seen the answer to this, but I can't find it.  What does the
> cross compiler do when faced with RISC OS filenames like:
> #include "Fish:Haddock.h"
> when cross compiling code under Unix?  Is there any way to indicate the
> location of Fish: on the Unix filesystem?
> 
> [note this is the reverse of an issue I raised a while ago where I wanted to
> map /some/unix/path to riscos$Path.  I ought to submit a patch for that]
> 
> Theo
> 
(from the README in CVS)

RISC OS filename compatibility issues for the cross-compiler
------------------------------------------------------------

Since the cross-compiler is built to execute on a Unix-like file 
system,
it expects file naming conventions particular to that operating 
system.
However, since there is going to be a lot of source code out there 
that
makes use of some RISC OS pathname features, the pre-processor has 
been
fixed to cope with path variable names in file names.

When the pre-processor attempts to read an include statement like:
  #include <DeskLib:Wimp.h>
it will try to resolve the DeskLib reference against the environment 
variable
DESKLIB_PATH.  So you could install the DeskLib header files in a 
place
such as /home/riscos/libs/include/desklib.  To get GCC to search in 
that
directory for those headers, simply define the variable:
  $ export DESKLIB_PATH=/home/riscos/lib/include/desklib


Alex.
-- 
E-mail: alex at archifishal.co.uk
WWW:    http://www.archifishal.co.uk/
MSN:    archifishal at gmx.co.uk



More information about the gcc mailing list