Get size_t typedef using gcc, not cc
authorIan Lance Taylor <ian@gcc.gnu.org>
Wed, 11 Aug 1993 13:22:45 +0000 (13:22 +0000)
committerIan Lance Taylor <ian@gcc.gnu.org>
Wed, 11 Aug 1993 13:22:45 +0000 (13:22 +0000)
From-SVN: r5133

gcc/Makefile.in
gcc/fixincludes

index a77df9cf6c82f7dee275871df4d9091287f300c0..fd308d159512a71a369e7c10a47fe5b7ec90d251 100644 (file)
@@ -1381,7 +1381,7 @@ stmp-headers: stmp-int-hdrs gfloat.h
        touch stmp-headers
 
 # Build fixed copies of system files.
-stmp-fixinc: $(srcdir)/$(FIXINCLUDES) gsyslimits.h
+stmp-fixinc: $(srcdir)/$(FIXINCLUDES) gsyslimits.h xgcc cpp
        rm -rf include
        mkdir include
        if [ x$(FIXINCLUDES) != xMakefile.in ]; \
@@ -1389,7 +1389,7 @@ stmp-fixinc: $(srcdir)/$(FIXINCLUDES) gsyslimits.h
          for dir in $(SYSTEM_HEADER_DIR) $(OTHER_FIXINCLUDES_DIRS); do \
            if [ -d $$dir ]; \
            then \
-             $(srcdir)/$(FIXINCLUDES) include $$dir $(srcdir); \
+             $(srcdir)/$(FIXINCLUDES) include $$dir $(srcdir) "`pwd`/xgcc -B`pwd`/"; \
            else true; fi; \
          done; \
        else true; \
index 1a2bdd39174f1b40690b5ffc891f1d31bd640270..e7a30dc7e6086dbdcd112fc821b181c4a4353b33 100755 (executable)
@@ -5,6 +5,9 @@
 
 # See README-fixinc for more information.
 
+# Command to run gcc.
+GCCCMD=${4-${GCCCMD-gcc}}
+
 # Directory where gcc sources (and sometimes special include files) live.
 # fixincludes doesn't use this, but fixinc.svr4 does, and I want to make
 # sure somebody doesn't try to use arg3 for something incompatible. -- gumby
@@ -340,14 +343,13 @@ for file in sys/types.h stdlib.h sys/stdtypes.h; do
 
   if [ -r ${LIB}/$file ]; then
     echo Fixing $file comment
-    # Extract the definition of SIZE_TYPE, if any.
+    # Get the definition of __SIZE_TYPE__, if any.
     # (This file must be called something.c).
-    echo "#include \"tm.h\"
-gobblegobble SIZE_TYPE" > ${LIB}/types.c
-    foo=`cd ${LIB}; cc -E -I${ORIGDIR} -I${SRCDIR} -I${SRCDIR}/config types.c | grep gobblegobble | sed -e "s/gobblegobble[    ]*//"`
+    echo "__SIZE_TYPE__" > ${LIB}/types.c
+    foo=`${GCCCMD} -E -P ${LIB}/types.c`
     rm -f ${LIB}/types.c
     # Default to our preferred type.
-    if [ "$foo" = SIZE_TYPE ]; then foo="unsigned long int"; else foo=`echo $foo | sed -e 's/^.*"\(.*\)".*$/\1/'`; fi
+    if [ "$foo" = __SIZE_TYPE__ ]; then foo="unsigned long int"; fi
     sed -e "s/typedef[         a-z_]*[         ]size_t/typedef $foo size_t/" ${LIB}/$file > ${LIB}/${file}.sed
     rm -f ${LIB}/$file; mv ${LIB}/${file}.sed ${LIB}/$file
     if cmp $file ${LIB}/$file >/dev/null 2>&1; then