blob: cd84c1b49d4c5324f96a35c5948c94286c832afe [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001# Makefile for the Vim message translations for mingw32
2#
3# Eduardo F. Amatria <eferna1@platea.pntic.mec.es>
4#
5# Read the README_ming.txt file before using it.
6#
7# Use at your own risk but with care, it could even kill your canary.
8#
9# Previous to all you must have the environment variable LANGUAGE set to your
10# language (xx) and add it to the next three lines.
11#
12
Bram Moolenaar01380622015-12-29 16:04:42 +010013ifndef VIMRUNTIME
Bram Moolenaar8889a5c2017-11-02 19:27:36 +010014ifeq (sh.exe, $(SHELL))
Bram Moolenaar01380622015-12-29 16:04:42 +010015VIMRUNTIME = ..\..\runtime
Bram Moolenaar8889a5c2017-11-02 19:27:36 +010016else
17VIMRUNTIME = ../../runtime
18endif
Bram Moolenaar01380622015-12-29 16:04:42 +010019endif
20
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000021LANGUAGES = \
22 af \
23 ca \
24 cs \
Bram Moolenaar01380622015-12-29 16:04:42 +010025 cs.cp1250 \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000026 de \
27 en_GB \
Bram Moolenaar446cb832008-06-24 21:56:24 +000028 eo \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000029 es \
Bram Moolenaar446cb832008-06-24 21:56:24 +000030 fi \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000031 fr \
32 ga \
33 it \
34 ja \
Bram Moolenaar01380622015-12-29 16:04:42 +010035 ja.euc-jp \
36 ja.sjis \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000037 ko \
Bram Moolenaar01380622015-12-29 16:04:42 +010038 ko.UTF-8 \
39 nb \
40 nl \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000041 no \
42 pl \
Bram Moolenaar01380622015-12-29 16:04:42 +010043 pl.cp1250 \
44 pl.UTF-8 \
Bram Moolenaare37d50a2008-08-06 17:06:04 +000045 pt_BR \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000046 ru \
Bram Moolenaar01380622015-12-29 16:04:42 +010047 ru.cp1251 \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000048 sk \
Bram Moolenaar01380622015-12-29 16:04:42 +010049 sk.cp1250 \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000050 sv \
51 uk \
Bram Moolenaar01380622015-12-29 16:04:42 +010052 uk.cp1251 \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000053 vi \
54 zh_CN \
Bram Moolenaar01380622015-12-29 16:04:42 +010055 zh_CN.cp936 \
56 zh_CN.UTF-8 \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000057 zh_TW \
58 zh_TW.UTF-8 \
59
60MOFILES = \
61 af.mo \
62 ca.mo \
Bram Moolenaar01380622015-12-29 16:04:42 +010063 cs.cp1250.mo \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000064 cs.mo \
65 de.mo \
66 en_GB.mo \
Bram Moolenaar446cb832008-06-24 21:56:24 +000067 eo.mo \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000068 es.mo \
Bram Moolenaar446cb832008-06-24 21:56:24 +000069 fi.mo \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000070 fr.mo \
71 ga.mo \
72 it.mo \
Bram Moolenaar01380622015-12-29 16:04:42 +010073 ja.euc-jp.mo \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000074 ja.mo \
Bram Moolenaar01380622015-12-29 16:04:42 +010075 ja.sjis.mo \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000076 ko.mo \
Bram Moolenaar01380622015-12-29 16:04:42 +010077 ko.UTF-8.mo \
78 nb.mo \
79 nl.mo \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000080 no.mo \
Bram Moolenaar01380622015-12-29 16:04:42 +010081 pl.cp1250.mo \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000082 pl.mo \
Bram Moolenaar01380622015-12-29 16:04:42 +010083 pl.UTF-8.mo \
Bram Moolenaare37d50a2008-08-06 17:06:04 +000084 pt_BR.mo \
Bram Moolenaar01380622015-12-29 16:04:42 +010085 ru.cp1251.mo \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000086 ru.mo \
Bram Moolenaar01380622015-12-29 16:04:42 +010087 sk.cp1250.mo \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000088 sk.mo \
89 sv.mo \
Bram Moolenaar01380622015-12-29 16:04:42 +010090 uk.cp1251.mo \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000091 uk.mo \
92 vi.mo \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000093 zh_CN.mo \
Bram Moolenaar01380622015-12-29 16:04:42 +010094 zh_CN.cp936.mo \
95 zh_CN.UTF-8.mo \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000096 zh_TW.mo \
Bram Moolenaar01380622015-12-29 16:04:42 +010097 zh_TW.UTF-8.mo \
Bram Moolenaar071d4272004-06-13 20:20:40 +000098
99PACKAGE = vim
100
101# Uncomment one of the lines below or modify it to put the path to your
102# gettex binaries; I use the first
103#GETTEXT_PATH = C:/gettext.win32/bin/
104#GETTEXT_PATH = C:/gettext-0.10.35-w32/win32/Release/
105#GETTEXT_PATH = C:/cygwin/bin/
106
Bram Moolenaar8889a5c2017-11-02 19:27:36 +0100107ifeq (sh.exe, $(SHELL))
Bram Moolenaar01380622015-12-29 16:04:42 +0100108MSGFMT = set OLD_PO_FILE_INPUT=yes && $(GETTEXT_PATH)msgfmt -v
109XGETTEXT = set OLD_PO_FILE_INPUT=yes && set OLD_PO_FILE_OUTPUT=yes && $(GETTEXT_PATH)xgettext
110MSGMERGE = set OLD_PO_FILE_INPUT=yes && set OLD_PO_FILE_OUTPUT=yes && $(GETTEXT_PATH)msgmerge
Bram Moolenaar8889a5c2017-11-02 19:27:36 +0100111else
112MSGFMT = LANG=C OLD_PO_FILE_INPUT=yes $(GETTEXT_PATH)msgfmt -v
113XGETTEXT = LANG=C OLD_PO_FILE_INPUT=yes OLD_PO_FILE_OUTPUT=yes $(GETTEXT_PATH)xgettext
114MSGMERGE = LANG=C OLD_PO_FILE_INPUT=yes OLD_PO_FILE_OUTPUT=yes $(GETTEXT_PATH)msgmerge
115endif
Bram Moolenaar071d4272004-06-13 20:20:40 +0000116
Bram Moolenaar8889a5c2017-11-02 19:27:36 +0100117ifeq (sh.exe, $(SHELL))
Bram Moolenaar071d4272004-06-13 20:20:40 +0000118MV = move
119CP = copy
120RM = del
121MKD = mkdir
Bram Moolenaar8889a5c2017-11-02 19:27:36 +0100122else
123MV = mv -f
124CP = cp -f
125RM = rm -f
126MKD = mkdir -p
127endif
Bram Moolenaar071d4272004-06-13 20:20:40 +0000128
129.SUFFIXES:
130.SUFFIXES: .po .mo .pot
131.PHONY: first_time all install clean $(LANGUAGES)
132
133.po.mo:
134 $(MSGFMT) -o $@ $<
135
136all: $(MOFILES)
137
138first_time:
139 $(XGETTEXT) --default-domain=$(LANGUAGE) \
Bram Moolenaar8889a5c2017-11-02 19:27:36 +0100140 --add-comments --keyword=_ --keyword=N_ $(wildcard ../*.c) ../if_perl.xs ../GvimExt/gvimext.cpp $(wildcard ../globals.h) ../if_py_both.h
Bram Moolenaar071d4272004-06-13 20:20:40 +0000141
142$(LANGUAGES):
143 $(XGETTEXT) --default-domain=$(PACKAGE) \
Bram Moolenaar8889a5c2017-11-02 19:27:36 +0100144 --add-comments --keyword=_ --keyword=N_ $(wildcard ../*.c) ../if_perl.xs ../GvimExt/gvimext.cpp $(wildcard ../globals.h) ../if_py_both.h
Bram Moolenaar071d4272004-06-13 20:20:40 +0000145 $(MV) $(PACKAGE).po $(PACKAGE).pot
146 $(CP) $@.po $@.po.orig
147 $(MV) $@.po $@.po.old
148 $(MSGMERGE) $@.po.old $(PACKAGE).pot -o $@.po
149 $(RM) $@.po.old
150
151install:
152 $(MKD) $(VIMRUNTIME)\lang\$(LANGUAGE)
153 $(MKD) $(VIMRUNTIME)\lang\$(LANGUAGE)\LC_MESSAGES
154 $(CP) $(LANGUAGE).mo $(VIMRUNTIME)\lang\$(LANGUAGE)\LC_MESSAGES\$(PACKAGE).mo
155
Bram Moolenaar8889a5c2017-11-02 19:27:36 +0100156ifeq (sh.exe, $(SHELL))
Bram Moolenaar01380622015-12-29 16:04:42 +0100157install-all: all
158 FOR %%l IN ($(LANGUAGES)) DO @IF NOT EXIST $(VIMRUNTIME)\lang\%%l $(MKD) $(VIMRUNTIME)\lang\%%l
159 FOR %%l IN ($(LANGUAGES)) DO @IF NOT EXIST $(VIMRUNTIME)\lang\%%l\LC_MESSAGES $(MKD) $(VIMRUNTIME)\lang\%%l\LC_MESSAGES
160 FOR %%l IN ($(LANGUAGES)) DO @$(CP) %%l.mo $(VIMRUNTIME)\lang\%%l\LC_MESSAGES\$(PACKAGE).mo
Bram Moolenaar8889a5c2017-11-02 19:27:36 +0100161else
162install-all: all
163 for TARGET in $(LANGUAGES); do \
164 $(MKD) $(VIMRUNTIME)/lang/$$TARGET/LC_MESSAGES ; \
165 $(CP) $$TARGET.mo $(VIMRUNTIME)/lang/$$TARGET/LC_MESSAGES/$(PACKAGE).mo ; \
166 done
167endif
Bram Moolenaar01380622015-12-29 16:04:42 +0100168
Bram Moolenaar071d4272004-06-13 20:20:40 +0000169clean:
170 $(RM) *.mo
171 $(RM) *.pot
172
173