diff gcc/config/vms/make-crtlmap.awk @ 111:04ced10e8804

gcc 7
author kono
date Fri, 27 Oct 2017 22:46:09 +0900
parents
children 84e7813d76e9
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/gcc/config/vms/make-crtlmap.awk	Fri Oct 27 22:46:09 2017 +0900
@@ -0,0 +1,55 @@
+# Generate the VMS crtl map
+#	Copyright (C) 2011-2017 Free Software Foundation, Inc.
+
+BEGIN {
+    is_first = 1;
+    maxlen=1;
+    maxlen_name="??"
+    prev=""
+    ORS=""
+}
+
+# Remove comment and blank lines.
+/^ *#/ || /^ *$/ {
+  next;
+}
+
+{
+    # Handle comma
+    if (!is_first)
+        print ",\n"
+    else
+        is_first = 0;
+
+    # Check the map is sorted
+    if ($0 <= prev)
+    {
+        print "Map not sorted!! (with name " $0 ")\n"
+        exit 1
+    }
+    prev = $0
+
+    # Compute the max of the identifier len.
+    l=length($1)
+    if (l > maxlen)
+    {
+        maxlen = l
+        maxlen_name = $1
+    }
+
+    print "{ \"" $1 "\", "
+    if (NF == 1)
+        print "0 }"
+    else
+    {
+	printf "VMS_CRTL_" $2
+	for (i = 3; i <= NF; i++)
+	    printf " | VMS_CRTL_" $i
+	printf " }"
+    }
+}
+
+END {
+    print "\n\n"
+    print "#define VMS_CRTL_MAXLEN " maxlen "  /*" maxlen_name " */\n"
+}