Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 1 | # 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 Moolenaar | 0138062 | 2015-12-29 16:04:42 +0100 | [diff] [blame] | 13 | ifndef VIMRUNTIME |
Bram Moolenaar | 8889a5c | 2017-11-02 19:27:36 +0100 | [diff] [blame^] | 14 | ifeq (sh.exe, $(SHELL)) |
Bram Moolenaar | 0138062 | 2015-12-29 16:04:42 +0100 | [diff] [blame] | 15 | VIMRUNTIME = ..\..\runtime |
Bram Moolenaar | 8889a5c | 2017-11-02 19:27:36 +0100 | [diff] [blame^] | 16 | else |
| 17 | VIMRUNTIME = ../../runtime |
| 18 | endif |
Bram Moolenaar | 0138062 | 2015-12-29 16:04:42 +0100 | [diff] [blame] | 19 | endif |
| 20 | |
Bram Moolenaar | a3ffd9c | 2005-07-21 21:03:15 +0000 | [diff] [blame] | 21 | LANGUAGES = \ |
| 22 | af \ |
| 23 | ca \ |
| 24 | cs \ |
Bram Moolenaar | 0138062 | 2015-12-29 16:04:42 +0100 | [diff] [blame] | 25 | cs.cp1250 \ |
Bram Moolenaar | a3ffd9c | 2005-07-21 21:03:15 +0000 | [diff] [blame] | 26 | de \ |
| 27 | en_GB \ |
Bram Moolenaar | 446cb83 | 2008-06-24 21:56:24 +0000 | [diff] [blame] | 28 | eo \ |
Bram Moolenaar | a3ffd9c | 2005-07-21 21:03:15 +0000 | [diff] [blame] | 29 | es \ |
Bram Moolenaar | 446cb83 | 2008-06-24 21:56:24 +0000 | [diff] [blame] | 30 | fi \ |
Bram Moolenaar | a3ffd9c | 2005-07-21 21:03:15 +0000 | [diff] [blame] | 31 | fr \ |
| 32 | ga \ |
| 33 | it \ |
| 34 | ja \ |
Bram Moolenaar | 0138062 | 2015-12-29 16:04:42 +0100 | [diff] [blame] | 35 | ja.euc-jp \ |
| 36 | ja.sjis \ |
Bram Moolenaar | a3ffd9c | 2005-07-21 21:03:15 +0000 | [diff] [blame] | 37 | ko \ |
Bram Moolenaar | 0138062 | 2015-12-29 16:04:42 +0100 | [diff] [blame] | 38 | ko.UTF-8 \ |
| 39 | nb \ |
| 40 | nl \ |
Bram Moolenaar | a3ffd9c | 2005-07-21 21:03:15 +0000 | [diff] [blame] | 41 | no \ |
| 42 | pl \ |
Bram Moolenaar | 0138062 | 2015-12-29 16:04:42 +0100 | [diff] [blame] | 43 | pl.cp1250 \ |
| 44 | pl.UTF-8 \ |
Bram Moolenaar | e37d50a | 2008-08-06 17:06:04 +0000 | [diff] [blame] | 45 | pt_BR \ |
Bram Moolenaar | a3ffd9c | 2005-07-21 21:03:15 +0000 | [diff] [blame] | 46 | ru \ |
Bram Moolenaar | 0138062 | 2015-12-29 16:04:42 +0100 | [diff] [blame] | 47 | ru.cp1251 \ |
Bram Moolenaar | a3ffd9c | 2005-07-21 21:03:15 +0000 | [diff] [blame] | 48 | sk \ |
Bram Moolenaar | 0138062 | 2015-12-29 16:04:42 +0100 | [diff] [blame] | 49 | sk.cp1250 \ |
Bram Moolenaar | a3ffd9c | 2005-07-21 21:03:15 +0000 | [diff] [blame] | 50 | sv \ |
| 51 | uk \ |
Bram Moolenaar | 0138062 | 2015-12-29 16:04:42 +0100 | [diff] [blame] | 52 | uk.cp1251 \ |
Bram Moolenaar | a3ffd9c | 2005-07-21 21:03:15 +0000 | [diff] [blame] | 53 | vi \ |
| 54 | zh_CN \ |
Bram Moolenaar | 0138062 | 2015-12-29 16:04:42 +0100 | [diff] [blame] | 55 | zh_CN.cp936 \ |
| 56 | zh_CN.UTF-8 \ |
Bram Moolenaar | a3ffd9c | 2005-07-21 21:03:15 +0000 | [diff] [blame] | 57 | zh_TW \ |
| 58 | zh_TW.UTF-8 \ |
| 59 | |
| 60 | MOFILES = \ |
| 61 | af.mo \ |
| 62 | ca.mo \ |
Bram Moolenaar | 0138062 | 2015-12-29 16:04:42 +0100 | [diff] [blame] | 63 | cs.cp1250.mo \ |
Bram Moolenaar | a3ffd9c | 2005-07-21 21:03:15 +0000 | [diff] [blame] | 64 | cs.mo \ |
| 65 | de.mo \ |
| 66 | en_GB.mo \ |
Bram Moolenaar | 446cb83 | 2008-06-24 21:56:24 +0000 | [diff] [blame] | 67 | eo.mo \ |
Bram Moolenaar | a3ffd9c | 2005-07-21 21:03:15 +0000 | [diff] [blame] | 68 | es.mo \ |
Bram Moolenaar | 446cb83 | 2008-06-24 21:56:24 +0000 | [diff] [blame] | 69 | fi.mo \ |
Bram Moolenaar | a3ffd9c | 2005-07-21 21:03:15 +0000 | [diff] [blame] | 70 | fr.mo \ |
| 71 | ga.mo \ |
| 72 | it.mo \ |
Bram Moolenaar | 0138062 | 2015-12-29 16:04:42 +0100 | [diff] [blame] | 73 | ja.euc-jp.mo \ |
Bram Moolenaar | a3ffd9c | 2005-07-21 21:03:15 +0000 | [diff] [blame] | 74 | ja.mo \ |
Bram Moolenaar | 0138062 | 2015-12-29 16:04:42 +0100 | [diff] [blame] | 75 | ja.sjis.mo \ |
Bram Moolenaar | a3ffd9c | 2005-07-21 21:03:15 +0000 | [diff] [blame] | 76 | ko.mo \ |
Bram Moolenaar | 0138062 | 2015-12-29 16:04:42 +0100 | [diff] [blame] | 77 | ko.UTF-8.mo \ |
| 78 | nb.mo \ |
| 79 | nl.mo \ |
Bram Moolenaar | a3ffd9c | 2005-07-21 21:03:15 +0000 | [diff] [blame] | 80 | no.mo \ |
Bram Moolenaar | 0138062 | 2015-12-29 16:04:42 +0100 | [diff] [blame] | 81 | pl.cp1250.mo \ |
Bram Moolenaar | a3ffd9c | 2005-07-21 21:03:15 +0000 | [diff] [blame] | 82 | pl.mo \ |
Bram Moolenaar | 0138062 | 2015-12-29 16:04:42 +0100 | [diff] [blame] | 83 | pl.UTF-8.mo \ |
Bram Moolenaar | e37d50a | 2008-08-06 17:06:04 +0000 | [diff] [blame] | 84 | pt_BR.mo \ |
Bram Moolenaar | 0138062 | 2015-12-29 16:04:42 +0100 | [diff] [blame] | 85 | ru.cp1251.mo \ |
Bram Moolenaar | a3ffd9c | 2005-07-21 21:03:15 +0000 | [diff] [blame] | 86 | ru.mo \ |
Bram Moolenaar | 0138062 | 2015-12-29 16:04:42 +0100 | [diff] [blame] | 87 | sk.cp1250.mo \ |
Bram Moolenaar | a3ffd9c | 2005-07-21 21:03:15 +0000 | [diff] [blame] | 88 | sk.mo \ |
| 89 | sv.mo \ |
Bram Moolenaar | 0138062 | 2015-12-29 16:04:42 +0100 | [diff] [blame] | 90 | uk.cp1251.mo \ |
Bram Moolenaar | a3ffd9c | 2005-07-21 21:03:15 +0000 | [diff] [blame] | 91 | uk.mo \ |
| 92 | vi.mo \ |
Bram Moolenaar | a3ffd9c | 2005-07-21 21:03:15 +0000 | [diff] [blame] | 93 | zh_CN.mo \ |
Bram Moolenaar | 0138062 | 2015-12-29 16:04:42 +0100 | [diff] [blame] | 94 | zh_CN.cp936.mo \ |
| 95 | zh_CN.UTF-8.mo \ |
Bram Moolenaar | a3ffd9c | 2005-07-21 21:03:15 +0000 | [diff] [blame] | 96 | zh_TW.mo \ |
Bram Moolenaar | 0138062 | 2015-12-29 16:04:42 +0100 | [diff] [blame] | 97 | zh_TW.UTF-8.mo \ |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 98 | |
| 99 | PACKAGE = 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 Moolenaar | 8889a5c | 2017-11-02 19:27:36 +0100 | [diff] [blame^] | 107 | ifeq (sh.exe, $(SHELL)) |
Bram Moolenaar | 0138062 | 2015-12-29 16:04:42 +0100 | [diff] [blame] | 108 | MSGFMT = set OLD_PO_FILE_INPUT=yes && $(GETTEXT_PATH)msgfmt -v |
| 109 | XGETTEXT = set OLD_PO_FILE_INPUT=yes && set OLD_PO_FILE_OUTPUT=yes && $(GETTEXT_PATH)xgettext |
| 110 | MSGMERGE = set OLD_PO_FILE_INPUT=yes && set OLD_PO_FILE_OUTPUT=yes && $(GETTEXT_PATH)msgmerge |
Bram Moolenaar | 8889a5c | 2017-11-02 19:27:36 +0100 | [diff] [blame^] | 111 | else |
| 112 | MSGFMT = LANG=C OLD_PO_FILE_INPUT=yes $(GETTEXT_PATH)msgfmt -v |
| 113 | XGETTEXT = LANG=C OLD_PO_FILE_INPUT=yes OLD_PO_FILE_OUTPUT=yes $(GETTEXT_PATH)xgettext |
| 114 | MSGMERGE = LANG=C OLD_PO_FILE_INPUT=yes OLD_PO_FILE_OUTPUT=yes $(GETTEXT_PATH)msgmerge |
| 115 | endif |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 116 | |
Bram Moolenaar | 8889a5c | 2017-11-02 19:27:36 +0100 | [diff] [blame^] | 117 | ifeq (sh.exe, $(SHELL)) |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 118 | MV = move |
| 119 | CP = copy |
| 120 | RM = del |
| 121 | MKD = mkdir |
Bram Moolenaar | 8889a5c | 2017-11-02 19:27:36 +0100 | [diff] [blame^] | 122 | else |
| 123 | MV = mv -f |
| 124 | CP = cp -f |
| 125 | RM = rm -f |
| 126 | MKD = mkdir -p |
| 127 | endif |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 128 | |
| 129 | .SUFFIXES: |
| 130 | .SUFFIXES: .po .mo .pot |
| 131 | .PHONY: first_time all install clean $(LANGUAGES) |
| 132 | |
| 133 | .po.mo: |
| 134 | $(MSGFMT) -o $@ $< |
| 135 | |
| 136 | all: $(MOFILES) |
| 137 | |
| 138 | first_time: |
| 139 | $(XGETTEXT) --default-domain=$(LANGUAGE) \ |
Bram Moolenaar | 8889a5c | 2017-11-02 19:27:36 +0100 | [diff] [blame^] | 140 | --add-comments --keyword=_ --keyword=N_ $(wildcard ../*.c) ../if_perl.xs ../GvimExt/gvimext.cpp $(wildcard ../globals.h) ../if_py_both.h |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 141 | |
| 142 | $(LANGUAGES): |
| 143 | $(XGETTEXT) --default-domain=$(PACKAGE) \ |
Bram Moolenaar | 8889a5c | 2017-11-02 19:27:36 +0100 | [diff] [blame^] | 144 | --add-comments --keyword=_ --keyword=N_ $(wildcard ../*.c) ../if_perl.xs ../GvimExt/gvimext.cpp $(wildcard ../globals.h) ../if_py_both.h |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 145 | $(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 | |
| 151 | install: |
| 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 Moolenaar | 8889a5c | 2017-11-02 19:27:36 +0100 | [diff] [blame^] | 156 | ifeq (sh.exe, $(SHELL)) |
Bram Moolenaar | 0138062 | 2015-12-29 16:04:42 +0100 | [diff] [blame] | 157 | install-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 Moolenaar | 8889a5c | 2017-11-02 19:27:36 +0100 | [diff] [blame^] | 161 | else |
| 162 | install-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 |
| 167 | endif |
Bram Moolenaar | 0138062 | 2015-12-29 16:04:42 +0100 | [diff] [blame] | 168 | |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 169 | clean: |
| 170 | $(RM) *.mo |
| 171 | $(RM) *.pot |
| 172 | |
| 173 | |