aboutsummaryrefslogtreecommitdiff
path: root/scripts/output-format.sed
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/output-format.sed')
-rw-r--r--scripts/output-format.sed34
1 files changed, 34 insertions, 0 deletions
diff --git a/scripts/output-format.sed b/scripts/output-format.sed
new file mode 100644
index 0000000000..f083a0911c
--- /dev/null
+++ b/scripts/output-format.sed
@@ -0,0 +1,34 @@
+/ld.*[ ]-E[BL]/b f
+/collect.*[ ]-E[BL]/b f
+/OUTPUT_FORMAT[^)]*$/{N
+s/\n[ ]*/ /
+}
+t o
+: o
+s/^.*OUTPUT_FORMAT(\([^,]*\), \1, \1).*$/OUTPUT_FORMAT(\1)/
+t q
+s/^.*OUTPUT_FORMAT(\([^,]*\), \([^,]*\), \([^,]*\)).*$/\2,\3/
+t s
+s/^.*OUTPUT_FORMAT(\([^,)]*\).*$)/OUTPUT_FORMAT(\1)/
+t q
+d
+: s
+s/"//g
+G
+s/\n//
+s/^\([^,]*\),\([^,]*\),B/OUTPUT_FORMAT(\1)/p
+s/^\([^,]*\),\([^,]*\),L/OUTPUT_FORMAT(\2)/p
+/,/s/^/*** BUG in libc/scripts/output-format.sed *** /p
+q
+: q
+s/"//g
+p
+q
+: f
+s/^.*[ ]-E\([BL]\)[ ].*$/,\1/
+t h
+s/^.*[ ]-E\([BL]\)$/,\1/
+t h
+d
+: h
+h