This is the mail archive of the gcc-patches@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] |
PR/15082 was opened in reference to an apparent problem with the PATH_MAX macro, but after some investigation I determined that fixincludes was not being run when building cross compilers for (at least) sparc-sun-solaris2.8, i386-pc-solaris2.8 and sparc64-sun-solaris2.8. With some guidance from Eric Botcazou, I tracked this down to what seems to be a problem with the patch to Makefile.in rev 1.959 where a new rule (install-gcc-tooldir) was added but never referenced. It looks like a diagnostic "sleep 1" command was left in instead of being replaced by a recusive call to make that new rule. When building the cross compiler, some elements of the installed tree must be in place when the compiler is actually built. The "sys-include" directory is one of these elements, but as it stands, it cannot be found because the makefiles use an indirect path that references another element of the installed tree which is not yet in place. For example, on my install, the build is using indirect path #1 (below) which, after "make install", resolves to absolute path #2. However, the "lib/gcc/sparc-sun-solaris2.8/3.4.0" part of the path has is not created until the "make install" step, so the "sys-include" directory is never found when building the compiler, so fixincludes has no system headers to operate on, and as a result it issues a warning about that fact and moves on with an absolute minimal set of "fixed" headers. 1: /opt/gcc-3.4.0-cross/sparc-sun-solaris2.8/lib/gcc/sparc-sun-solaris2.8/3.4.0/../../../../sparc-sun-solaris2.8/sys-include 2: /opt/gcc-3.4.0-cross/sparc-sun-solaris2.8/sparc-sun-solaris2.8/sys-include The unreferenced "install-gcc-tooldir" rule makes the direct prefix of path #1 and, if called instead of "sleep 1", causes fixincludes to work and the cross compilers to be built with the right fixed headers. Using the attached patch, I have successfully built cross compilers with properly fixed includes targeting sparc-sun-solaris2.8, i386-pc-solaris2.8, and sparc64-sun-solaris2.8. -- ------------------------------------------------------------------ Brad Spencer - spencer@infointeractive.com - "It's quite nice..." Systems Architect | InfoInterActive Corp. | A Canadian AOL Company
Attachment:
gcc-3.4.0-cross-fixinc-sys-include.patch
Description: Text document
Attachment:
gcc-3.4.0-cross-fixinc-sys-include.ChangeLog
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |