# Makefile for scpm translations

LANGUAGES=bg cs de es fi fr hu it ja km nb nl pl pt pt_BR ru sk uk zh_CN zh_TW af ar bn bs ca cy da el en_GB en_US et gl gu he hi hr id ka ko lo lt mk mr pa ro sl sr sv ta tr vi xh zu

%.mo:	scpm_lib.po scpm_cli.po
	msgcat scpm_cli.po scpm_lib.po scpm_groups.po | msgfmt -o $@ -

all:
	for i in $(LANGUAGES) ; do $(MAKE) -C $$i -f ../Makefile scpm.mo ; done

update:	update_cli update_lib update_groups

scpm_cli.pot: ../src/cli
	xgettext -C --no-location -o scpm_cli.pot ../src/cli/help_texts.h ../src/cli/*.cc

scpm_lib.pot: ../src/main ../src/modules ../src/scdb
	./extract_strings '../src/{main,modules,scdb}' | \
	xgettext -C --keyword=LOGERR:1 --keyword=LOGTRANS:1 --keyword=Print:1 \
		--keyword=AddEntry:2 --no-location -o scpm_lib.pot -

scpm_groups.pot: ../lib
	./extract_group_strings > scpm_groups.pot

update_cli:	scpm_cli.pot
	for i in $(LANGUAGES) ; do \
		msgmerge  -o merged.po $$i/scpm_cli.po scpm_cli.pot ; \
		mv -f merged.po $$i/scpm_cli.po ; \
		rm -f merged.po ; \
	done

update_lib:	scpm_lib.pot
	for i in $(LANGUAGES) ; do \
		msgmerge  -o merged.po $$i/scpm_lib.po scpm_lib.pot ; \
		mv -f merged.po $$i/scpm_lib.po ; \
		rm -f merged.po ; \
	done

update_groups:	scpm_groups.pot
	for i in $(LANGUAGES) ; do \
		msgmerge  -o merged.po $$i/scpm_groups.po scpm_groups.pot ; \
		mv -f merged.po $$i/scpm_groups.po ; \
		rm -f merged.po ; \
	done

install:	all
	for i in $(LANGUAGES) ; do \
		mkdir -p $(PREFIX)/usr/share/locale/$$i/LC_MESSAGES ; \
		install -m 644 $$i/scpm.mo $(PREFIX)/usr/share/locale/$$i/LC_MESSAGES/scpm.mo ; \
	done

uninstall:
	rm -f $(PREFIX)/usr/share/locale/*/LC_MESSAGES/scpm.mo

clean:
	for i in $(LANGUAGES) ; do rm -f $$i/scpm.mo ; done
