Pre defined #defines for different cross compilers ?

Dan Kegel dank@kegel.com
Sat Sep 27 20:13:00 GMT 2003


Anton Erasmus wrote:
> Where can I get a list of the different predefines defined
> by different cross compiler versions of gcc ?
> For example __CYGWIN32__ is defined in the cygwin
> version of gcc. __unix__ under at least the linux version og
> gcc.

gcc reads the predefined symbols from the "specs" file.  I
usually do "locate specs | grep gcc | grep 'specs$'" to
find the specs files for all the gcc's installed on a computer.  e.g.
on my home machine, it's
/usr/lib/gcc-lib/i386-redhat-linux/3.2.2/specs
/usr/lib/gcc-lib/i386-redhat-linux7/2.96/specs
on my work machine, it finds 24 versions of gcc (!).
Searching through those files for -DFOO finds a whole
bunch of sometimes-predefined symbols.  The specs files
come from the gcc source tree in a somewhat convoluted way
from the files in the 'config' directory.  If you have the
gcc sources, try
   $ cd gcc/gcc/config
   $ find . -type f | xargs grep -e -D
and you'll probably find what you're looking for.
- Dan

-- 
Dan Kegel
http://www.kegel.com
http://counter.li.org/cgi-bin/runscript/display-person.cgi?user=78045


------
Want more information?  See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com



More information about the crossgcc mailing list