summaryrefslogtreecommitdiff
path: root/contrib/amd/scripts/fix-amd-map.in
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/amd/scripts/fix-amd-map.in')
-rwxr-xr-xcontrib/amd/scripts/fix-amd-map.in52
1 files changed, 52 insertions, 0 deletions
diff --git a/contrib/amd/scripts/fix-amd-map.in b/contrib/amd/scripts/fix-amd-map.in
new file mode 100755
index 0000000000000..6746462daa77b
--- /dev/null
+++ b/contrib/amd/scripts/fix-amd-map.in
@@ -0,0 +1,52 @@
+#!@PERL@
+#
+# fix an old-syntax amd map to new one
+#
+# takes any number of files on the command line, and produces
+# a fixed map on stdout.
+#
+# Package: am-utils-6.0
+# Author: Erez Zadok <ezk@cs.columbia.edu>
+#
+
+##############################################################################
+### MAINTAINER EDITABLE SECTION
+
+# Mappings of old names to new ones:
+# Update when needed, do not forget commas but not on the last entry!
+# For your convenience, this is the complete list of all OSs that were
+# supported by amd-upl102, in their old names:
+#
+# 386bsd acis43 aix3 aoi aux bsd43 bsd44 bsdi11
+# concentrix dgux fpx4 freebsd hcx hlh42 hpux irix3 irix4 irix5 isc3
+# linux mach2 mach3 netbsd news4 next osf1 pyrOSx riscix riscos
+# rtu6 sos3 sos4 sos5 stellix svr4 u2_2 u3_0 u4_0 u4_2 u4_3 u4_4
+# umax43 utek utx32 xinu43
+#
+%mappings = (
+ "sos4", "sunos4",
+ "sos5", "sunos5",
+ "freebsd", "freebsd2"
+);
+
+##############################################################################
+### DO NOT EDIT ANYTHING BELOW
+
+# This is a trivial parser and works as follows:
+# (1) read each line
+# (2) search of regexps that start with '=', continue with a word to replace
+# and end with a non-value name (whitespace, ';', or newline
+while (<>) {
+ # skip trivial lines
+ if ($_ =~ /^$/ || $_ =~ /^#/) {
+ print;
+ next;
+ }
+ # modify the line if needed
+ foreach $m (keys %mappings) {
+ $val = $mappings{$m};
+ $_ =~ s/=$m([^a-zA-Z0-9_])/=$val$1/g;
+ }
+ # print the (possibly) modified line
+ print;
+}