From patchwork Mon Aug 27 12:44:57 2007 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stefan Huelswitt X-Patchwork-Id: 12518 Received: from [80.237.132.19] (helo=wp012.webpack.hosteurope.de) by www.linuxtv.org with esmtp (Exim 4.63) (envelope-from ) id 1IPdz7-0005PC-Hx for vdr@linuxtv.org; Mon, 27 Aug 2007 14:46:25 +0200 Received: from ip114.236.reserved.ish.de ([62.143.236.114] helo=video.local.muempf.de); authenticated by wp012.webpack.hosteurope.de running ExIM using esmtpsa (TLSv1:DES-CBC3-SHA:168) id 1IPdya-00056k-Qe; Mon, 27 Aug 2007 14:45:52 +0200 Received: from video.local.muempf.de (localhost [127.0.0.1]) by video.local.muempf.de (8.12.6/8.12.6/SuSE Linux 0.6) with ESMTP id l7RCivXk002440 for ; Mon, 27 Aug 2007 14:44:57 +0200 Received: (from news@localhost) by video.local.muempf.de (8.12.6/8.12.6/Submit) id l7RCivIJ002439 for vdr@linuxtv.org; Mon, 27 Aug 2007 14:44:57 +0200 To: vdr@linuxtv.org Path: not-for-mail From: s.huelswitt@gmx.de (Stefan Huelswitt) Newsgroups: local.linux.vdr Date: Mon, 27 Aug 2007 12:44:57 +0000 (UTC) Organization: Home, sweet home Lines: 64 Sender: nathan@gmx.de Message-ID: NNTP-Posting-Host: master.local.muempf.de Mime-Version: 1.0 X-Trace: video.local.muempf.de 1188218697 31619 192.168.1.1 (27 Aug 2007 12:44:57 GMT) X-Complaints-To: s.huelswitt@gmx.de NNTP-Posting-Date: Mon, 27 Aug 2007 12:44:57 +0000 (UTC) X-Newsreader: knews 1.0b.1 X-bounce-key: webpack.hosteurope.de;s.huelswitt@gmx.de;1188218785;a179f843; Subject: [vdr] [vdr 1.5.9] i18n makefile rules X-BeenThere: vdr@linuxtv.org X-Mailman-Version: 2.1.9 Precedence: list Reply-To: VDR Mailing List List-Id: VDR Mailing List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Aug 2007 12:46:25 -0000 Status: O X-Status: X-Keywords: X-UID: 13950 Hi, I dislike that current vdr remakes/copies the language file everytime even nothing has changed. The attached patch implements a (may be) more sophisticated way. Regards. --- vdr-1.5.9-orig/Makefile 2007-08-25 10:52:17.000000000 +0200 +++ vdr-1.5.9/Makefile 2007-08-27 14:40:07.000000000 +0200 @@ -76,6 +76,7 @@ endif all: vdr i18n +.PHONY: i18n # Implicit rules: @@ -106,25 +107,24 @@ PODIR = po LOCALEDIR = locale I18Npo = $(wildcard $(PODIR)/*.po) -I18Nmo = $(addsuffix .mo, $(foreach file, $(I18Npo), $(basename $(file)))) -I18Ndirs = $(notdir $(foreach file, $(I18Npo), $(basename $(file)))) +I18Nmsgs = $(addprefix $(LOCALEDIR)/,$(addsuffix /LC_MESSAGES/vdr.mo,$(notdir $(foreach file, $(wildcard $(PODIR)/*.po), $(basename $(file)))))) I18Npot = $(PODIR)/vdr.pot %.mo: %.po msgfmt -c -o $@ $< -$(I18Npot): $(wildcard *.c) - xgettext -C -cTRANSLATORS --no-wrap -F -k -ktr -ktrNOOP --msgid-bugs-address='' -o $@ $(wildcard *.c) +$(I18Npot): $(shell grep -l '\(tr\|trNOOP\)(\".*\")' *.c) + xgettext -C -cTRANSLATORS --no-wrap -F -k -ktr -ktrNOOP --msgid-bugs-address='' -o $@ $^ -$(I18Npo): $(I18Npot) +%.po: $(I18Npot) msgmerge -U --no-wrap -F --backup=none -q $@ $< + @touch $@ -i18n: $(I18Nmo) - @mkdir -p $(LOCALEDIR) - for i in $(I18Ndirs); do\ - mkdir -p $(LOCALEDIR)/$$i/LC_MESSAGES;\ - cp $(PODIR)/$$i.mo $(LOCALEDIR)/$$i/LC_MESSAGES/vdr.mo;\ - done +$(I18Nmsgs): $(LOCALEDIR)/%/LC_MESSAGES/vdr.mo: $(PODIR)/%.mo + @mkdir -p $(dir $@) + cp $< $@ + +i18n: $(I18Nmsgs) install-i18n: @mkdir -p $(DESTDIR)$(LOCDIR)