summaryrefslogtreecommitdiffstats
path: root/scripts/fixtext.sh
diff options
context:
space:
mode:
Diffstat (limited to '')
-rwxr-xr-xscripts/fixtext.sh10
1 files changed, 10 insertions, 0 deletions
diff --git a/scripts/fixtext.sh b/scripts/fixtext.sh
new file mode 100755
index 0000000..1f5c1ab
--- /dev/null
+++ b/scripts/fixtext.sh
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+# xgettext only processes literal strings. Someone with a poor sense of humor
+# decided to ignore strings in preprocessor lines. So we construct a fake
+# ".c" file with the definitions turned into literals.
+
+sed -e 's/")/");/' \
+ -e 's/^#define[ ]*\([^ ]*\)[ ]*gettext/char *\1 = gettext/' \
+ -e 's,^#define[ ]*\([^ ]*\)[ ]*\\,/* #define \1 */char *\1 = \\,' \
+ $*