summaryrefslogtreecommitdiffstats
path: root/src/po/Make_ming.mak
diff options
context:
space:
mode:
Diffstat (limited to 'src/po/Make_ming.mak')
-rw-r--r--src/po/Make_ming.mak128
1 files changed, 128 insertions, 0 deletions
diff --git a/src/po/Make_ming.mak b/src/po/Make_ming.mak
new file mode 100644
index 0000000..5e9428f
--- /dev/null
+++ b/src/po/Make_ming.mak
@@ -0,0 +1,128 @@
+# Makefile for the Vim message translations for mingw32
+#
+# Eduardo F. Amatria <eferna1@platea.pntic.mec.es>
+#
+# Read the README_ming.txt file before using it.
+#
+# Use at your own risk but with care, it could even kill your canary.
+#
+# Previous to all you must have the environment variable LANGUAGE set to your
+# language (xx) and add it to the next three lines.
+#
+
+ifndef VIMRUNTIME
+ifeq (sh.exe, $(SHELL))
+VIMRUNTIME = ..\..\runtime
+else
+VIMRUNTIME = ../../runtime
+endif
+endif
+
+# get LANGUAGES, MOFILES and MOCONVERTED
+include Make_all.mak
+
+PACKAGE = vim
+ifeq (sh.exe, $(SHELL))
+VIM = ..\vim
+else
+VIM = ../vim
+endif
+
+# Uncomment one of the lines below or modify it to put the path to your
+# gettex binaries; I use the first
+#GETTEXT_PATH = C:/gettext.win32/bin/
+#GETTEXT_PATH = C:/gettext-0.10.35-w32/win32/Release/
+#GETTEXT_PATH = C:/cygwin/bin/
+
+ifeq (sh.exe, $(SHELL))
+MSGFMT = set OLD_PO_FILE_INPUT=yes && $(GETTEXT_PATH)msgfmt -v
+XGETTEXT = set OLD_PO_FILE_INPUT=yes && set OLD_PO_FILE_OUTPUT=yes && $(GETTEXT_PATH)xgettext
+MSGMERGE = set OLD_PO_FILE_INPUT=yes && set OLD_PO_FILE_OUTPUT=yes && $(GETTEXT_PATH)msgmerge
+else
+MSGFMT = LANG=C OLD_PO_FILE_INPUT=yes $(GETTEXT_PATH)msgfmt -v
+XGETTEXT = LANG=C OLD_PO_FILE_INPUT=yes OLD_PO_FILE_OUTPUT=yes $(GETTEXT_PATH)xgettext
+MSGMERGE = LANG=C OLD_PO_FILE_INPUT=yes OLD_PO_FILE_OUTPUT=yes $(GETTEXT_PATH)msgmerge
+endif
+
+ifeq (sh.exe, $(SHELL))
+MV = move
+CP = copy
+RM = del
+MKD = mkdir
+else
+MV = mv -f
+CP = cp -f
+RM = rm -f
+MKD = mkdir -p
+endif
+
+.SUFFIXES:
+.SUFFIXES: .po .mo .pot
+.PHONY: first_time all install install-all clean $(LANGUAGES)
+
+.po.mo:
+ $(MSGFMT) -o $@ $<
+
+all: $(MOFILES) $(MOCONVERTED)
+
+PO_INPUTLIST = \
+ $(wildcard ../*.c) \
+ ../if_perl.xs \
+ ../GvimExt/gvimext.cpp \
+ ../errors.h \
+ ../globals.h \
+ ../if_py_both.h \
+ ../vim.h \
+ gvim.desktop.in \
+ vim.desktop.in
+
+PO_VIM_INPUTLIST = \
+ ../../runtime/optwin.vim
+
+PO_VIM_JSLIST = \
+ optwin.js
+
+first_time: $(PO_INPUTLIST) $(PO_VIM_INPUTLIST)
+ $(VIM) -u NONE --not-a-term -S tojavascript.vim $(LANGUAGE).pot $(PO_VIM_INPUTLIST)
+ $(XGETTEXT) --default-domain=$(LANGUAGE) \
+ --add-comments --keyword=_ --keyword=N_ --keyword=NGETTEXT:1,2 $(PO_INPUTLIST) $(PO_VIM_JSLIST)
+ $(VIM) -u NONE --not-a-term -S fixfilenames.vim $(LANGUAGE).pot $(PO_VIM_INPUTLIST)
+ $(RM) *.js
+
+$(PACKAGE).pot: $(PO_INPUTLIST) $(PO_VIM_INPUTLIST)
+ $(VIM) -u NONE --not-a-term -S tojavascript.vim $(PACKAGE).pot $(PO_VIM_INPUTLIST)
+ $(XGETTEXT) --default-domain=$(PACKAGE) \
+ --add-comments --keyword=_ --keyword=N_ --keyword=NGETTEXT:1,2 $(PO_INPUTLIST) $(PO_VIM_JSLIST)
+ $(MV) $(PACKAGE).po $(PACKAGE).pot
+ $(VIM) -u NONE --not-a-term -S fixfilenames.vim $(PACKAGE).pot $(PO_VIM_INPUTLIST)
+ $(RM) *.js
+
+# Don't add a dependency here, we only want to update the .po files manually
+$(LANGUAGES):
+ @$(MAKE) -f Make_ming.mak $(PACKAGE).pot GETTEXT_PATH=$(GETTEXT_PATH)
+ $(CP) $@.po $@.po.orig
+ $(MV) $@.po $@.po.old
+ $(MSGMERGE) $@.po.old $(PACKAGE).pot -o $@.po
+ $(RM) $@.po.old
+
+install:
+ $(MKD) $(VIMRUNTIME)\lang\$(LANGUAGE)
+ $(MKD) $(VIMRUNTIME)\lang\$(LANGUAGE)\LC_MESSAGES
+ $(CP) $(LANGUAGE).mo $(VIMRUNTIME)\lang\$(LANGUAGE)\LC_MESSAGES\$(PACKAGE).mo
+
+ifeq (sh.exe, $(SHELL))
+install-all: all
+ FOR %%l IN ($(LANGUAGES)) DO @IF NOT EXIST $(VIMRUNTIME)\lang\%%l $(MKD) $(VIMRUNTIME)\lang\%%l
+ FOR %%l IN ($(LANGUAGES)) DO @IF NOT EXIST $(VIMRUNTIME)\lang\%%l\LC_MESSAGES $(MKD) $(VIMRUNTIME)\lang\%%l\LC_MESSAGES
+ FOR %%l IN ($(LANGUAGES)) DO @$(CP) %%l.mo $(VIMRUNTIME)\lang\%%l\LC_MESSAGES\$(PACKAGE).mo
+else
+install-all: all
+ for TARGET in $(LANGUAGES); do \
+ $(MKD) $(VIMRUNTIME)/lang/$$TARGET/LC_MESSAGES ; \
+ $(CP) $$TARGET.mo $(VIMRUNTIME)/lang/$$TARGET/LC_MESSAGES/$(PACKAGE).mo ; \
+ done
+endif
+
+clean:
+ $(RM) *.mo
+ $(RM) *.pot