aboutsummaryrefslogtreecommitdiff
path: root/gitk-git/Makefile
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2008-01-08 22:41:15 -0800
committerJunio C Hamano <gitster@pobox.com>2008-01-08 22:41:15 -0800
commitf85fd3f0d1213a2b714fddc7a834817aceeca932 (patch)
tree9bef45fea855ccfb77aef97c0cb187631b2bcd26 /gitk-git/Makefile
parentef40b3efe0764f7b56c2745601690e9cc12428d8 (diff)
parentf0c842681936ffd684aac3f0d8340c99780d5b53 (diff)
downloadgit-f85fd3f0d1213a2b714fddc7a834817aceeca932.tar.gz
git-f85fd3f0d1213a2b714fddc7a834817aceeca932.tar.xz
Merge branch 'master' of git://git.kernel.org/pub/scm/gitk/gitk
* 'master' of git://git.kernel.org/pub/scm/gitk/gitk: [PATCH] gitk: use user-configured background in view definition dialog [PATCH] gitk: Update German translation [PATCH] gitk: Update and fix Makefile gitk: Restore some widget options whose defaults changed in Tk 8.5 gitk: Recode de.po to UTF-8 [PATCH] gitk i18n: Recode gitk from latin1 to utf8 so that the (c) copyright character is valid utf8. [PATCH] gitk i18n: More markup -- various options menus [PATCH] gitk i18n: Initial German translation [PATCH] gitk i18n: Markup several strings for translation [PATCH] gitk i18n: Import msgcat for message string translation; load translation catalogs [PATCH] gitk i18n: Add Makefile with rules for po file creation and installation
Diffstat (limited to 'gitk-git/Makefile')
-rw-r--r--gitk-git/Makefile33
1 files changed, 31 insertions, 2 deletions
diff --git a/gitk-git/Makefile b/gitk-git/Makefile
index 9bc1e2408..61585045b 100644
--- a/gitk-git/Makefile
+++ b/gitk-git/Makefile
@@ -3,6 +3,11 @@ all::
prefix ?= $(HOME)
bindir ?= $(prefix)/bin
+sharedir ?= $(prefix)/share
+gitk_libdir ?= $(sharedir)/gitk/lib
+msgsdir ?= $(gitk_libdir)/msgs
+msgsdir_SQ = $(subst ','\'',$(msgsdir))
+
TCLTK_PATH ?= wish
INSTALL ?= install
RM ?= rm -f
@@ -11,19 +16,43 @@ DESTDIR_SQ = $(subst ','\'',$(DESTDIR))
bindir_SQ = $(subst ','\'',$(bindir))
TCLTK_PATH_SQ = $(subst ','\'',$(TCLTK_PATH))
+## po-file creation rules
+XGETTEXT ?= xgettext
+MSGFMT ?= msgfmt
+PO_TEMPLATE = po/gitk.pot
+ALL_POFILES = $(wildcard po/*.po)
+ALL_MSGFILES = $(subst .po,.msg,$(ALL_POFILES))
+
ifndef V
QUIET = @
QUIET_GEN = $(QUIET)echo ' ' GEN $@ &&
endif
-all:: gitk-wish
+all:: gitk-wish $(ALL_MSGFILES)
+
install:: all
$(INSTALL) gitk-wish '$(DESTDIR_SQ)$(bindir_SQ)'/gitk
+ $(INSTALL) -d '$(DESTDIR_SQ)$(msgsdir_SQ)'
+ $(foreach p,$(ALL_MSGFILES), $(INSTALL) $p '$(DESTDIR_SQ)$(msgsdir_SQ)' &&) true
+
+uninstall::
+ $(foreach p,$(ALL_MSGFILES), $(RM) '$(DESTDIR_SQ)$(msgsdir_SQ)'/$(notdir $p) &&) true
+ $(RM) '$(DESTDIR_SQ)$(bindir_SQ)'/gitk
+
clean::
- $(RM) gitk-wish
+ $(RM) gitk-wish po/*.msg
gitk-wish: gitk
$(QUIET_GEN)$(RM) $@ $@+ && \
sed -e '1,3s|^exec .* "$$0"|exec $(subst |,'\|',$(TCLTK_PATH_SQ)) "$$0"|' <gitk >$@+ && \
chmod +x $@+ && \
mv -f $@+ $@
+
+$(PO_TEMPLATE): gitk
+ $(XGETTEXT) -kmc -LTcl -o $@ gitk
+update-po:: $(PO_TEMPLATE)
+ $(foreach p, $(ALL_POFILES), echo Updating $p ; msgmerge -U $p $(PO_TEMPLATE) ; )
+$(ALL_MSGFILES): %.msg : %.po
+ @echo Generating catalog $@
+ $(MSGFMT) --statistics --tcl $< -l $(basename $(notdir $<)) -d $(dir $@)
+