summaryrefslogtreecommitdiffstats
path: root/Makefile
diff options
context:
space:
mode:
authorSebastian Reichel <sre@ring0.de>2018-06-28 21:35:23 +0200
committerSebastian Reichel <sre@ring0.de>2018-06-29 00:55:02 +0200
commit8e60fa48a8535da9eaa34ef35b5040c2eb68fc3b (patch)
treea19bdf74637b225eed75fdc084805c09df43c426 /Makefile
parentfb75ceb1c5a415cc6667043b1123e42586b1d9b1 (diff)
downloadserial-barcode-scanner-8e60fa48a8535da9eaa34ef35b5040c2eb68fc3b.tar.bz2
all: I18N support
This adds I18N support using standard gettext system together with an initial German translation. This can be used to search locales in some directory: Intl.bindtextdomain("shopsystem", "/home/sre/src/serial-barcode-scanner"); And this can be used to switch language at runtime: Intl.setlocale(LocaleCategory.ALL, "");
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile14
1 files changed, 13 insertions, 1 deletions
diff --git a/Makefile b/Makefile
index d551b6b..ee08cef 100644
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,18 @@
all:
@cd src && make --no-print-directory all
+gettext: locale/de/LC_MESSAGES/shopsystem.mo
+
+locale/de/LC_MESSAGES/shopsystem.mo: locale/de.po
+ install -d locale/de/LC_MESSAGES/
+ msgfmt -o $@ $<
+
+locale/%.po: locale/messages.pot
+ msgmerge -N --backup=off --update $@ $<
+
+locale/messages.pot: */*/*.vala
+ xgettext --language=vala --from-code=utf-8 --keyword=_ --escape --sort-output -o $@ */*/*.vala
+
clean:
@cd src && make --no-print-directory clean
@@ -14,4 +26,4 @@ shop.db: sql/tables.sql sql/views.sql sql/trigger.sql
sqlite3 shop.db < $$file; \
done
-.PHONY: all clean install
+.PHONY: all clean install gettext