This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC 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]

[Bug bootstrap/14316] collect2 doesnt build on windows hosts


------- Additional Comments From ian at wasabisystems dot com  2004-03-19 22:50 -------
Subject: Re:  collect2 doesnt build on windows hosts

> How does one determine if there are header files to fix for a particular host 
> and target? (and/or where does gcc determine this?)

To be pedantic, the host, as such, is irrelevant.  The header files
are for the target.  The fixincl program will run on the build system.

The fixincl program will be run on the header files in the directories
named by the Makefile variables SYSTEM_HEADER_DIR and
OTHER_FIXINCLUDES_DIRS.

On a native configuration, where host == target, SYSTEM_HEADER_DIR is
/usr/include.

On a cross configuration, where host != target:
  * if you configure with --with-sysroot, SYSTEM_HEADER_DIR is
    usr/include under the specified sysroot.
  * if you do not configure with --with-sysroot, SYSTEM_HEADER_DIR is,
    more or less, $(prefix)/$(target)/sys-include, or in other
    words something like /usr/local/avr/sys-include

I think OTHER_FIXINCLUDES_DIRS is always empty, but I suppose you
might specify it on the command line when you run make.

You can use --with-headers when you run configure to name a directory
containing header files for your target.  This is only supported when
configuring a cross-compiler.  If you do this, the configure process
will copy the header files to the $(target)/sys-include directory, and
later on fixincl will be run on them.

Ian


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14316


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