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 | a4a2934 | 2018-06-24 15:52:56 +0200 | [diff] [blame^] | 21 | # get LANGUAGES, MOFILES and MOCONVERTED |
| 22 | include Make_all.mak |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 23 | |
| 24 | PACKAGE = vim |
| 25 | |
| 26 | # Uncomment one of the lines below or modify it to put the path to your |
| 27 | # gettex binaries; I use the first |
| 28 | #GETTEXT_PATH = C:/gettext.win32/bin/ |
| 29 | #GETTEXT_PATH = C:/gettext-0.10.35-w32/win32/Release/ |
| 30 | #GETTEXT_PATH = C:/cygwin/bin/ |
| 31 | |
Bram Moolenaar | 8889a5c | 2017-11-02 19:27:36 +0100 | [diff] [blame] | 32 | ifeq (sh.exe, $(SHELL)) |
Bram Moolenaar | 0138062 | 2015-12-29 16:04:42 +0100 | [diff] [blame] | 33 | MSGFMT = set OLD_PO_FILE_INPUT=yes && $(GETTEXT_PATH)msgfmt -v |
| 34 | XGETTEXT = set OLD_PO_FILE_INPUT=yes && set OLD_PO_FILE_OUTPUT=yes && $(GETTEXT_PATH)xgettext |
| 35 | 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] | 36 | else |
| 37 | MSGFMT = LANG=C OLD_PO_FILE_INPUT=yes $(GETTEXT_PATH)msgfmt -v |
| 38 | XGETTEXT = LANG=C OLD_PO_FILE_INPUT=yes OLD_PO_FILE_OUTPUT=yes $(GETTEXT_PATH)xgettext |
| 39 | MSGMERGE = LANG=C OLD_PO_FILE_INPUT=yes OLD_PO_FILE_OUTPUT=yes $(GETTEXT_PATH)msgmerge |
| 40 | endif |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 41 | |
Bram Moolenaar | 8889a5c | 2017-11-02 19:27:36 +0100 | [diff] [blame] | 42 | ifeq (sh.exe, $(SHELL)) |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 43 | MV = move |
| 44 | CP = copy |
| 45 | RM = del |
| 46 | MKD = mkdir |
Bram Moolenaar | 8889a5c | 2017-11-02 19:27:36 +0100 | [diff] [blame] | 47 | else |
| 48 | MV = mv -f |
| 49 | CP = cp -f |
| 50 | RM = rm -f |
| 51 | MKD = mkdir -p |
| 52 | endif |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 53 | |
| 54 | .SUFFIXES: |
| 55 | .SUFFIXES: .po .mo .pot |
| 56 | .PHONY: first_time all install clean $(LANGUAGES) |
| 57 | |
| 58 | .po.mo: |
| 59 | $(MSGFMT) -o $@ $< |
| 60 | |
Bram Moolenaar | a4a2934 | 2018-06-24 15:52:56 +0200 | [diff] [blame^] | 61 | all: $(MOFILES) $(MOCONVERTED) |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 62 | |
| 63 | first_time: |
| 64 | $(XGETTEXT) --default-domain=$(LANGUAGE) \ |
Bram Moolenaar | c36651b | 2018-04-29 12:22:56 +0200 | [diff] [blame] | 65 | --add-comments --keyword=_ --keyword=N_ --keyword=NGETTEXT:1,2 $(wildcard ../*.c) ../if_perl.xs ../GvimExt/gvimext.cpp $(wildcard ../globals.h) ../if_py_both.h ../vim.h |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 66 | |
| 67 | $(LANGUAGES): |
| 68 | $(XGETTEXT) --default-domain=$(PACKAGE) \ |
Bram Moolenaar | c36651b | 2018-04-29 12:22:56 +0200 | [diff] [blame] | 69 | --add-comments --keyword=_ --keyword=N_ --keyword=NGETTEXT:1,2 $(wildcard ../*.c) ../if_perl.xs ../GvimExt/gvimext.cpp $(wildcard ../globals.h) ../if_py_both.h ../vim.h |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 70 | $(MV) $(PACKAGE).po $(PACKAGE).pot |
| 71 | $(CP) $@.po $@.po.orig |
| 72 | $(MV) $@.po $@.po.old |
| 73 | $(MSGMERGE) $@.po.old $(PACKAGE).pot -o $@.po |
| 74 | $(RM) $@.po.old |
| 75 | |
| 76 | install: |
| 77 | $(MKD) $(VIMRUNTIME)\lang\$(LANGUAGE) |
| 78 | $(MKD) $(VIMRUNTIME)\lang\$(LANGUAGE)\LC_MESSAGES |
| 79 | $(CP) $(LANGUAGE).mo $(VIMRUNTIME)\lang\$(LANGUAGE)\LC_MESSAGES\$(PACKAGE).mo |
| 80 | |
Bram Moolenaar | 8889a5c | 2017-11-02 19:27:36 +0100 | [diff] [blame] | 81 | ifeq (sh.exe, $(SHELL)) |
Bram Moolenaar | 0138062 | 2015-12-29 16:04:42 +0100 | [diff] [blame] | 82 | install-all: all |
| 83 | FOR %%l IN ($(LANGUAGES)) DO @IF NOT EXIST $(VIMRUNTIME)\lang\%%l $(MKD) $(VIMRUNTIME)\lang\%%l |
| 84 | FOR %%l IN ($(LANGUAGES)) DO @IF NOT EXIST $(VIMRUNTIME)\lang\%%l\LC_MESSAGES $(MKD) $(VIMRUNTIME)\lang\%%l\LC_MESSAGES |
| 85 | 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] | 86 | else |
| 87 | install-all: all |
| 88 | for TARGET in $(LANGUAGES); do \ |
| 89 | $(MKD) $(VIMRUNTIME)/lang/$$TARGET/LC_MESSAGES ; \ |
| 90 | $(CP) $$TARGET.mo $(VIMRUNTIME)/lang/$$TARGET/LC_MESSAGES/$(PACKAGE).mo ; \ |
| 91 | done |
| 92 | endif |
Bram Moolenaar | 0138062 | 2015-12-29 16:04:42 +0100 | [diff] [blame] | 93 | |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 94 | clean: |
| 95 | $(RM) *.mo |
| 96 | $(RM) *.pot |
| 97 | |
| 98 | |