From cc4ca46cc3cf447c26bf72fa88268ad970bccbff Mon Sep 17 00:00:00 2001
From: Přemysl Janouch
Date: Mon, 14 Jul 2014 20:39:01 +0200
Subject: Add a utility to extract a message catalogs
---
.gitignore | 1 +
Makefile | 9 +++++++--
kike-extract-messages.sh | 15 +++++++++++++++
3 files changed, 23 insertions(+), 2 deletions(-)
create mode 100755 kike-extract-messages.sh
diff --git a/.gitignore b/.gitignore
index 358d4ec..57cf17a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,6 +1,7 @@
# Build files
/zyklonb
/kike
+/kike.msg
# Qt Creator files
/ZyklonB.*
diff --git a/Makefile b/Makefile
index db6d657..59be4bf 100644
--- a/Makefile
+++ b/Makefile
@@ -1,12 +1,14 @@
SHELL = /bin/sh
CC = clang
-CFLAGS = -ggdb -Wall -Wextra -std=c99
+# -Wunused-function is pretty annoying here, as everything is static and not
+# all parts of common.c are used in all the executables
+CFLAGS = -ggdb -Wall -Wextra -std=c99 -Wno-unused-function
# -lpthread is only there for debugging (gdb & errno)
LDFLAGS = `pkg-config --libs libssl` -lpthread
.PHONY: all clean
-targets = zyklonb kike
+targets = zyklonb kike kike.msg
all: $(targets)
@@ -15,6 +17,9 @@ clean:
zyklonb: src/zyklonb.c src/common.c src/siphash.c
$(CC) src/zyklonb.c src/siphash.c -o $@ $(CFLAGS) $(LDFLAGS)
+
kike: src/kike.c src/common.c src/siphash.c
$(CC) src/kike.c src/siphash.c -o $@ $(CFLAGS) $(LDFLAGS)
+kike.msg: src/kike.c
+ $(SHELL) kike-extract-messages.sh < $< > $@
diff --git a/kike-extract-messages.sh b/kike-extract-messages.sh
new file mode 100755
index 0000000..9438695
--- /dev/null
+++ b/kike-extract-messages.sh
@@ -0,0 +1,15 @@
+#!/bin/sh
+LC_ALL=C exec awk '
+ BEGIN {
+ print "$quote \"";
+ print "$set 1";
+ }
+ /^\tIRC_(ERR|RPL)_[A-Z]+ *= *[0-9]+,?$/ {
+ match($3, /^[0-9]+/);
+ id[$1] = substr($3, RSTART, RLENGTH);
+ }
+ /^\t\[IRC_(ERR|RPL)_[A-Z]+\] *= *".*",?$/ {
+ z = substr($1, 2, length($1) - 2);
+ match($0, /".*"/);
+ print id[z] " " substr($0, RSTART, RLENGTH);
+ }'
--
cgit v1.2.3-70-g09d2