blob: bdb6dcce49a90f8c61d7dffa9fc39beb0ff1feb2 [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001# Makefile for the Vim message translations for MSVC
2# (based on make_ming.mak)
3#
4# Mike Williams <mrw@eandem.co.uk>
5#
6# Please read README_mvc.txt before using this file.
7#
8
Bram Moolenaar01380622015-12-29 16:04:42 +01009!ifndef VIMRUNTIME
10VIMRUNTIME = ..\..\runtime
11!endif
12
Bram Moolenaar167fb6d2023-05-23 15:27:51 +010013# get LANGUAGES, MOFILES, MOCONVERTED and others
Bram Moolenaara4a29342018-06-24 15:52:56 +020014!include Make_all.mak
Bram Moolenaar071d4272004-06-13 20:20:40 +000015
16PACKAGE = vim
Bram Moolenaarfa573352020-09-04 13:53:00 +020017VIM = ..\vim
Bram Moolenaar071d4272004-06-13 20:20:40 +000018
Bram Moolenaar41317732010-08-02 21:43:29 +020019# Correct the following line for the directory where gettext et al is installed
20GETTEXT_PATH = H:\gettext.0.14.4\bin
Bram Moolenaar071d4272004-06-13 20:20:40 +000021
Bram Moolenaar01380622015-12-29 16:04:42 +010022MSGFMT = $(GETTEXT_PATH)\msgfmt -v
Bram Moolenaar071d4272004-06-13 20:20:40 +000023XGETTEXT = $(GETTEXT_PATH)\xgettext
24MSGMERGE = $(GETTEXT_PATH)\msgmerge
25
26MV = move
27CP = copy
28RM = del
29MKD = mkdir
30LS = dir
31
32LSFLAGS = /b /on /l /s
33
34INSTALLDIR = $(VIMRUNTIME)\lang\$(LANGUAGE)\LC_MESSAGES
35
36.SUFFIXES:
37.SUFFIXES: .po .mo .pot
38
39.po.mo:
Bram Moolenaar01380622015-12-29 16:04:42 +010040 set OLD_PO_FILE_INPUT=yes
Bram Moolenaar071d4272004-06-13 20:20:40 +000041 $(MSGFMT) -o $@ $<
42
Bram Moolenaara4a29342018-06-24 15:52:56 +020043all: $(MOFILES) $(MOCONVERTED)
Bram Moolenaar071d4272004-06-13 20:20:40 +000044
Bram Moolenaarfa573352020-09-04 13:53:00 +020045PO_INPUTLIST = \
46 ..\*.c \
47 ..\if_perl.xs \
48 ..\GvimExt\gvimext.cpp \
49 ..\errors.h \
50 ..\globals.h \
51 ..\if_py_both.h \
52 ..\vim.h \
53 gvim.desktop.in \
54 vim.desktop.in
55
Bram Moolenaar167fb6d2023-05-23 15:27:51 +010056files: $(PO_INPUTLIST)
Bram Moolenaarfa573352020-09-04 13:53:00 +020057 $(LS) $(LSFLAGS) $(PO_INPUTLIST) > .\files
Bram Moolenaar071d4272004-06-13 20:20:40 +000058
59first_time: files
Bram Moolenaarfa573352020-09-04 13:53:00 +020060 $(VIM) -u NONE --not-a-term -S tojavascript.vim $(LANGUAGE).pot $(PO_VIM_INPUTLIST)
Bram Moolenaar01380622015-12-29 16:04:42 +010061 set OLD_PO_FILE_INPUT=yes
62 set OLD_PO_FILE_OUTPUT=yes
Bram Moolenaar167fb6d2023-05-23 15:27:51 +010063 $(XGETTEXT) --default-domain=$(LANGUAGE) --add-comments --keyword=_ --keyword=N_ --keyword=NGETTEXT:1,2 --files-from=.\files $(PO_VIM_JSLIST)
Bram Moolenaarfa573352020-09-04 13:53:00 +020064 $(VIM) -u NONE --not-a-term -S fixfilenames.vim $(LANGUAGE).pot $(PO_VIM_INPUTLIST)
65 $(RM) *.js
Bram Moolenaar071d4272004-06-13 20:20:40 +000066
Bram Moolenaarfa573352020-09-04 13:53:00 +020067$(PACKAGE).pot: files
68 $(VIM) -u NONE --not-a-term -S tojavascript.vim $(PACKAGE).pot $(PO_VIM_INPUTLIST)
Bram Moolenaar01380622015-12-29 16:04:42 +010069 set OLD_PO_FILE_INPUT=yes
70 set OLD_PO_FILE_OUTPUT=yes
Bram Moolenaar167fb6d2023-05-23 15:27:51 +010071 $(XGETTEXT) --default-domain=$(PACKAGE) --add-comments --keyword=_ --keyword=N_ --keyword=NGETTEXT:1,2 --files-from=.\files $(PO_VIM_JSLIST)
Bram Moolenaar071d4272004-06-13 20:20:40 +000072 $(MV) $(PACKAGE).po $(PACKAGE).pot
Bram Moolenaarfa573352020-09-04 13:53:00 +020073 $(VIM) -u NONE --not-a-term -S fixfilenames.vim $(PACKAGE).pot $(PO_VIM_INPUTLIST)
74 $(RM) *.js
75
76# Don't add a dependency here, we only want to update the .po files manually
77$(LANGUAGES):
78 @$(MAKE) -nologo -f Make_mvc.mak $(PACKAGE).pot GETTEXT_PATH=$(GETTEXT_PATH)
Bram Moolenaar071d4272004-06-13 20:20:40 +000079 $(CP) $@.po $@.po.orig
80 $(MV) $@.po $@.po.old
81 $(MSGMERGE) $@.po.old $(PACKAGE).pot -o $@.po
82 $(RM) $@.po.old
83
84install:
85 if not exist $(INSTALLDIR) $(MKD) $(INSTALLDIR)
86 $(CP) $(LANGUAGE).mo $(INSTALLDIR)\$(PACKAGE).mo
87
Bram Moolenaar01380622015-12-29 16:04:42 +010088install-all: all
89 FOR %%l IN ($(LANGUAGES)) DO @IF NOT EXIST $(VIMRUNTIME)\lang\%%l\LC_MESSAGES $(MKD) $(VIMRUNTIME)\lang\%%l\LC_MESSAGES
90 FOR %%l IN ($(LANGUAGES)) DO @$(CP) %%l.mo $(VIMRUNTIME)\lang\%%l\LC_MESSAGES\$(PACKAGE).mo
91
Bram Moolenaar071d4272004-06-13 20:20:40 +000092clean:
93 $(RM) *.mo
94 $(RM) *.pot
Bram Moolenaarfa573352020-09-04 13:53:00 +020095 $(RM) files