blob: 6973ad79c85ff70bb3224287a3157b42969fd47b [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 Moolenaar7dda86f2018-04-20 22:36:41 +020050 sr \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000051 sv \
52 uk \
Bram Moolenaar01380622015-12-29 16:04:42 +010053 uk.cp1251 \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000054 vi \
55 zh_CN \
Bram Moolenaar01380622015-12-29 16:04:42 +010056 zh_CN.cp936 \
57 zh_CN.UTF-8 \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000058 zh_TW \
59 zh_TW.UTF-8 \
60
61MOFILES = \
62 af.mo \
63 ca.mo \
Bram Moolenaar01380622015-12-29 16:04:42 +010064 cs.cp1250.mo \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000065 cs.mo \
66 de.mo \
67 en_GB.mo \
Bram Moolenaar446cb832008-06-24 21:56:24 +000068 eo.mo \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000069 es.mo \
Bram Moolenaar446cb832008-06-24 21:56:24 +000070 fi.mo \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000071 fr.mo \
72 ga.mo \
73 it.mo \
Bram Moolenaar01380622015-12-29 16:04:42 +010074 ja.euc-jp.mo \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000075 ja.mo \
Bram Moolenaar01380622015-12-29 16:04:42 +010076 ja.sjis.mo \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000077 ko.mo \
Bram Moolenaar01380622015-12-29 16:04:42 +010078 ko.UTF-8.mo \
79 nb.mo \
80 nl.mo \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000081 no.mo \
Bram Moolenaar01380622015-12-29 16:04:42 +010082 pl.cp1250.mo \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000083 pl.mo \
Bram Moolenaar01380622015-12-29 16:04:42 +010084 pl.UTF-8.mo \
Bram Moolenaare37d50a2008-08-06 17:06:04 +000085 pt_BR.mo \
Bram Moolenaar01380622015-12-29 16:04:42 +010086 ru.cp1251.mo \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000087 ru.mo \
Bram Moolenaar01380622015-12-29 16:04:42 +010088 sk.cp1250.mo \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000089 sk.mo \
Bram Moolenaar7dda86f2018-04-20 22:36:41 +020090 sr.mo \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000091 sv.mo \
Bram Moolenaar01380622015-12-29 16:04:42 +010092 uk.cp1251.mo \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000093 uk.mo \
94 vi.mo \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000095 zh_CN.mo \
Bram Moolenaar01380622015-12-29 16:04:42 +010096 zh_CN.cp936.mo \
97 zh_CN.UTF-8.mo \
Bram Moolenaara3ffd9c2005-07-21 21:03:15 +000098 zh_TW.mo \
Bram Moolenaar01380622015-12-29 16:04:42 +010099 zh_TW.UTF-8.mo \
Bram Moolenaar071d4272004-06-13 20:20:40 +0000100
101PACKAGE = vim
102
103# Uncomment one of the lines below or modify it to put the path to your
104# gettex binaries; I use the first
105#GETTEXT_PATH = C:/gettext.win32/bin/
106#GETTEXT_PATH = C:/gettext-0.10.35-w32/win32/Release/
107#GETTEXT_PATH = C:/cygwin/bin/
108
Bram Moolenaar8889a5c2017-11-02 19:27:36 +0100109ifeq (sh.exe, $(SHELL))
Bram Moolenaar01380622015-12-29 16:04:42 +0100110MSGFMT = set OLD_PO_FILE_INPUT=yes && $(GETTEXT_PATH)msgfmt -v
111XGETTEXT = set OLD_PO_FILE_INPUT=yes && set OLD_PO_FILE_OUTPUT=yes && $(GETTEXT_PATH)xgettext
112MSGMERGE = set OLD_PO_FILE_INPUT=yes && set OLD_PO_FILE_OUTPUT=yes && $(GETTEXT_PATH)msgmerge
Bram Moolenaar8889a5c2017-11-02 19:27:36 +0100113else
114MSGFMT = LANG=C OLD_PO_FILE_INPUT=yes $(GETTEXT_PATH)msgfmt -v
115XGETTEXT = LANG=C OLD_PO_FILE_INPUT=yes OLD_PO_FILE_OUTPUT=yes $(GETTEXT_PATH)xgettext
116MSGMERGE = LANG=C OLD_PO_FILE_INPUT=yes OLD_PO_FILE_OUTPUT=yes $(GETTEXT_PATH)msgmerge
117endif
Bram Moolenaar071d4272004-06-13 20:20:40 +0000118
Bram Moolenaar8889a5c2017-11-02 19:27:36 +0100119ifeq (sh.exe, $(SHELL))
Bram Moolenaar071d4272004-06-13 20:20:40 +0000120MV = move
121CP = copy
122RM = del
123MKD = mkdir
Bram Moolenaar8889a5c2017-11-02 19:27:36 +0100124else
125MV = mv -f
126CP = cp -f
127RM = rm -f
128MKD = mkdir -p
129endif
Bram Moolenaar071d4272004-06-13 20:20:40 +0000130
131.SUFFIXES:
132.SUFFIXES: .po .mo .pot
133.PHONY: first_time all install clean $(LANGUAGES)
134
135.po.mo:
136 $(MSGFMT) -o $@ $<
137
138all: $(MOFILES)
139
140first_time:
141 $(XGETTEXT) --default-domain=$(LANGUAGE) \
Bram Moolenaar228de1d2018-03-14 20:11:12 +0100142 --add-comments --keyword=_ --keyword=N_ --keyword=NGETTEXT:1,2 $(wildcard ../*.c) ../if_perl.xs ../GvimExt/gvimext.cpp $(wildcard ../globals.h) ../if_py_both.h
Bram Moolenaar071d4272004-06-13 20:20:40 +0000143
144$(LANGUAGES):
145 $(XGETTEXT) --default-domain=$(PACKAGE) \
Bram Moolenaar228de1d2018-03-14 20:11:12 +0100146 --add-comments --keyword=_ --keyword=N_ --keyword=NGETTEXT:1,2 $(wildcard ../*.c) ../if_perl.xs ../GvimExt/gvimext.cpp $(wildcard ../globals.h) ../if_py_both.h
Bram Moolenaar071d4272004-06-13 20:20:40 +0000147 $(MV) $(PACKAGE).po $(PACKAGE).pot
148 $(CP) $@.po $@.po.orig
149 $(MV) $@.po $@.po.old
150 $(MSGMERGE) $@.po.old $(PACKAGE).pot -o $@.po
151 $(RM) $@.po.old
152
153install:
154 $(MKD) $(VIMRUNTIME)\lang\$(LANGUAGE)
155 $(MKD) $(VIMRUNTIME)\lang\$(LANGUAGE)\LC_MESSAGES
156 $(CP) $(LANGUAGE).mo $(VIMRUNTIME)\lang\$(LANGUAGE)\LC_MESSAGES\$(PACKAGE).mo
157
Bram Moolenaar8889a5c2017-11-02 19:27:36 +0100158ifeq (sh.exe, $(SHELL))
Bram Moolenaar01380622015-12-29 16:04:42 +0100159install-all: all
160 FOR %%l IN ($(LANGUAGES)) DO @IF NOT EXIST $(VIMRUNTIME)\lang\%%l $(MKD) $(VIMRUNTIME)\lang\%%l
161 FOR %%l IN ($(LANGUAGES)) DO @IF NOT EXIST $(VIMRUNTIME)\lang\%%l\LC_MESSAGES $(MKD) $(VIMRUNTIME)\lang\%%l\LC_MESSAGES
162 FOR %%l IN ($(LANGUAGES)) DO @$(CP) %%l.mo $(VIMRUNTIME)\lang\%%l\LC_MESSAGES\$(PACKAGE).mo
Bram Moolenaar8889a5c2017-11-02 19:27:36 +0100163else
164install-all: all
165 for TARGET in $(LANGUAGES); do \
166 $(MKD) $(VIMRUNTIME)/lang/$$TARGET/LC_MESSAGES ; \
167 $(CP) $$TARGET.mo $(VIMRUNTIME)/lang/$$TARGET/LC_MESSAGES/$(PACKAGE).mo ; \
168 done
169endif
Bram Moolenaar01380622015-12-29 16:04:42 +0100170
Bram Moolenaar071d4272004-06-13 20:20:40 +0000171clean:
172 $(RM) *.mo
173 $(RM) *.pot
174
175