1# 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 9!ifndef VIMRUNTIME 10VIMRUNTIME = ..\..\runtime 11!endif 12 13# get LANGUAGES, MOFILES and MOCONVERTED 14!include Make_all.mak 15 16PACKAGE = vim 17VIM = ..\vim 18 19# Correct the following line for the directory where gettext et al is installed 20GETTEXT_PATH = H:\gettext.0.14.4\bin 21 22MSGFMT = $(GETTEXT_PATH)\msgfmt -v 23XGETTEXT = $(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: 40 set OLD_PO_FILE_INPUT=yes 41 $(MSGFMT) -o $@ $< 42 43all: $(MOFILES) $(MOCONVERTED) 44 45PO_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 56PO_VIM_INPUTLIST = \ 57 ..\..\runtime\optwin.vim 58 59PO_VIM_JSLIST = \ 60 optwin.js 61 62files: $(PO_INPUTLIST) $(PO_VIM_INPUTLIST) 63 $(LS) $(LSFLAGS) $(PO_INPUTLIST) > .\files 64 echo $(PO_VIM_JSLIST)>> .\files 65 66first_time: files 67 $(VIM) -u NONE --not-a-term -S tojavascript.vim $(LANGUAGE).pot $(PO_VIM_INPUTLIST) 68 set OLD_PO_FILE_INPUT=yes 69 set OLD_PO_FILE_OUTPUT=yes 70 $(XGETTEXT) --default-domain=$(LANGUAGE) --add-comments --keyword=_ --keyword=N_ --keyword=NGETTEXT:1,2 --files-from=.\files 71 $(VIM) -u NONE --not-a-term -S fixfilenames.vim $(LANGUAGE).pot $(PO_VIM_INPUTLIST) 72 $(RM) *.js 73 74$(PACKAGE).pot: files 75 $(VIM) -u NONE --not-a-term -S tojavascript.vim $(PACKAGE).pot $(PO_VIM_INPUTLIST) 76 set OLD_PO_FILE_INPUT=yes 77 set OLD_PO_FILE_OUTPUT=yes 78 $(XGETTEXT) --default-domain=$(PACKAGE) --add-comments --keyword=_ --keyword=N_ --keyword=NGETTEXT:1,2 --files-from=.\files 79 $(MV) $(PACKAGE).po $(PACKAGE).pot 80 $(VIM) -u NONE --not-a-term -S fixfilenames.vim $(PACKAGE).pot $(PO_VIM_INPUTLIST) 81 $(RM) *.js 82 83# Don't add a dependency here, we only want to update the .po files manually 84$(LANGUAGES): 85 @$(MAKE) -nologo -f Make_mvc.mak $(PACKAGE).pot GETTEXT_PATH=$(GETTEXT_PATH) 86 $(CP) $@.po $@.po.orig 87 $(MV) $@.po $@.po.old 88 $(MSGMERGE) $@.po.old $(PACKAGE).pot -o $@.po 89 $(RM) $@.po.old 90 91install: 92 if not exist $(INSTALLDIR) $(MKD) $(INSTALLDIR) 93 $(CP) $(LANGUAGE).mo $(INSTALLDIR)\$(PACKAGE).mo 94 95install-all: all 96 FOR %%l IN ($(LANGUAGES)) DO @IF NOT EXIST $(VIMRUNTIME)\lang\%%l\LC_MESSAGES $(MKD) $(VIMRUNTIME)\lang\%%l\LC_MESSAGES 97 FOR %%l IN ($(LANGUAGES)) DO @$(CP) %%l.mo $(VIMRUNTIME)\lang\%%l\LC_MESSAGES\$(PACKAGE).mo 98 99clean: 100 $(RM) *.mo 101 $(RM) *.pot 102 $(RM) files 103