This is just a question. Hopefully someone can shed some light on what the fixincludes stage of "make install" does. I am making the assumption that the "make install" stage is where these headers get mangled or modified.
This is on Solaris 8 by the way. Once make install has finished its job I see symlinks down deep in strange places thus : $ ls -lap $DEST/lib/gcc/sparc-sun-solaris2.8/4.3.3/include-fixed/ | grep "^lrwx" lrwxrwxrwx 1 dclarke csw 28 Feb 7 17:19 X11 -> root/usr/openwin/include/X11/ lrwxrwxrwx 1 dclarke csw 22 Feb 7 17:19 Xm -> root/usr/dt/include/Xm/ lrwxrwxrwx 1 dclarke csw 29 Feb 7 17:19 kcms -> root/usr/openwin/include/kcms/ lrwxrwxrwx 1 dclarke csw 28 Feb 7 17:19 xil -> root/usr/openwin/include/xil/ These guys point to a dir entry called "root" which seems odd also but there it is. Way down deep in there I see this ( for example ) : $ ls -lap $DEST/lib/gcc/sparc-sun-solaris2.8/4.3.3/include-fixed/root/usr/openwin/include/X11/ total 166 drwxr-xr-x 3 dclarke csw 512 Feb 7 09:37 ./ drwxr-xr-x 5 dclarke csw 512 Feb 7 09:37 ../ drwxr-xr-x 2 dclarke csw 512 Feb 7 09:37 DPS/ -rw-r--r-- 1 dclarke csw 4087 Feb 7 09:37 Xfuncs.h -rw-r--r-- 1 dclarke csw 39002 Feb 7 09:37 Xlibint.h -rw-r--r-- 1 dclarke csw 6025 Feb 7 09:37 Xos.h -rw-r--r-- 1 dclarke csw 2980 Feb 7 09:37 Xosdefs.h -rw-r--r-- 1 dclarke csw 10184 Feb 7 09:37 Xthreads.h -rw-r--r-- 1 dclarke csw 8847 Feb 7 09:37 dni.h -rw-r--r-- 1 dclarke csw 8366 Feb 7 09:37 nmdefs.h That all looks to be copies of *standard* headers found in the OS vendors /usr/openwin/share/include/X11 area. What changed ? $ diff /usr/openwin/share/include/X11/Xlibint.h $DEST/lib/gcc/sparc-sun-solaris2.8/4.3.3/include-fixed/root/usr/openwin/include/X11/Xlibint.h 0a1,9 > /* DO NOT EDIT THIS FILE. > > It has been auto-edited by fixincludes from: > > "/usr/include/X11/Xlibint.h" > > This had to be done to correct non-standard usages in the > original, manufacturer supplied header file. */ > 882c891 < #ifdef sun /* added by SUNSOFT */ --- > #ifdef __sun__ /* added by SUNSOFT */ So the entire change is a comment and one line which both say "added by SUNSOFT" in them. Xfuncs.h is somewhat more interesting : < #if (__STDC__ && !defined(X_NOT_STDC_ENV) && !defined(sun) && !defined(macII) && !defined(apollo)) || defined(SVR4) || defined(hpux) || defined(_IBMR2) || defined(_SEQUENT_) --- > #if (__STDC__ && !defined(X_NOT_STDC_ENV) && !defined(__sun__) && !defined(macII) && !defined(apollo)) || defined(SVR4) || defined(hpux) || defined(_IBMR2) || defined(_SEQUENT_) 88c97 < #if !defined(X_NOT_STDC_ENV) && (!defined(sun) || defined(SVR4)) --- > #if !defined(X_NOT_STDC_ENV) && (!defined(__sun__) || defined(SVR4)) 96c105 < #if defined(SYSV) || defined(luna) || defined(sun) || defined(__sxg__) --- > #if defined(SYSV) || defined(luna) || defined(__sun__) || defined(__sxg__) $ It looks like anywhere you find the string "defined(sun)" you change it to "defined(__sun__)". That is an observation. But what did this ? Was it fixincludes or was it the mkheaders script ? and why ? -- Dennis Clarke