OSDN Git Service

Protect __P in math.h and floatingpoint.h.
authorian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 26 May 1994 16:23:31 +0000 (16:23 +0000)
committerian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 26 May 1994 16:23:31 +0000 (16:23 +0000)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7350 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/fixinc.svr4

index 8695892..7dbf671 100755 (executable)
@@ -1379,6 +1379,38 @@ if [ \! -z "$file_to_fix" ]; then
   rm -f /tmp/$base
 fi
 
+# Solaris math.h and floatingpoint.h define __P without protection,
+# which conflicts with the fixproto definition.  The fixproto
+# definition and the Solaris definition are used the same way.
+for file in math.h floatingpoint.h; do
+  base=`basename $file`
+  if [ -r ${LIB}/$file ]; then
+    file_to_fix=${LIB}/$file
+  else
+    if [ -r ${INPUT}/$file ]; then
+      file_to_fix=${INPUT}/$file
+    else
+      file_to_fix=""
+    fi
+  fi
+  if [ \! -z "$file_to_fix" ]; then
+    echo Checking $file_to_fix
+    sed -e '/^#define[         ]*__P/i\
+#ifndef __P'\
+        -e '/^#define[         ]*__P/a\
+#endif' $file_to_fix > /tmp/$base
+    if cmp $file_to_fix /tmp/$base >/dev/null 2>&1; then \
+      true
+    else
+      echo Fixed $file_to_fix
+      rm -f ${LIB}/$file
+      cp /tmp/$base ${LIB}/$file
+      chmod a+r ${LIB}/$file
+    fi
+   rm -f /tmp/$base
+  fi
+done
+
 echo 'Removing unneeded directories:'
 cd $LIB
 files=`find . -type d -print | sort -r`