Some Makefile changes still laying around.
[blender.git] / po / Makefile
index 4bafba8a6e63accbf326e6223350c47ef72520e6..425efbc08b3a99b3ce4295ad196a44704bb8e560 100644 (file)
@@ -1,3 +1,5 @@
+# -*- mode: gnumakefile; tab-width: 8; indent-tabs-mode: t; -*-
+# vim: tabstop=8
 # $Id$
 #
 # ***** BEGIN GPL LICENSE BLOCK *****
 #
 # This program is distributed in the hope that it will be useful,
 # but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 # GNU General Public License for more details.
 #
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software Foundation,
-# Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+# Inc., 59 Temple Place - Suite 330, Boston, MA         02111-1307, USA.
 #
 # The Original Code is Copyright (C) 2002 by Stichting Blender Foundation,
 # Amsterdam, the Netherlands.
 # All rights reserved.
 #
-# The Original Code is: revision 1.1
+# The Original Code is: revision 1.3
 #
-# Contributor(s): Wouter van Heyst
+# Contributor(s): Wouter van Heyst, GSR
 #
 # ***** END GPL LICENSE BLOCK *****
 #
-# po Makefile for blender. Compiles the translations and places them
+# po Makefile for blender. Compiles the translations in the place
 # where release can pick them up.
 
+PO_FILES = $(wildcard *.po)
+
+LINGUAS = $(basename $(PO_FILES))
+
 SOURCEDIR = blender/po
 
 include nan_definitions.mk
 
-LINGUAS = ar bg ca cs de el es fi fr hr it ja ko nl pl pt_BR ro ru sr sr@Latn sv uk zh_CN
-
 ifeq ($(OS), darwin)
-DIR = $(OCGDIR)/bin/blender.app/Contents/Resources/locale/$@/LC_MESSAGES/
+  DIR = $(OCGDIR)/bin/blender.app/Contents/Resources/locale/
 else
-DIR = $(OCGDIR)/bin/.blender/locale/$@/LC_MESSAGES/
+  DIR = $(OCGDIR)/bin/.blender/locale/
 endif
 
-all debug:: $(LINGUAS)
+LINGUAS_DEST= $(foreach LINGUA, $(LINGUAS),$(DIR)$(LINGUA)/LC_MESSAGES/blender.mo)
 
-clean::
-ifeq ($(OS), darwin)
-       rm -rf $(OCGDIR)/bin/blender.app/Contents/Resources/locale/
-else
-       rm -rf $(OCGDIR)/bin/.blender/locale/
-endif
+$(DIR)%/LC_MESSAGES/blender.mo: %.po
+       mkdir -p $(@D)
+       msgfmt -o $@ $<
+       @cmp $@ $(NANBLENDERHOME)/bin/.blender/locale/$(basename $<)/LC_MESSAGES/blender.mo \
+          || ( echo Mismatch between generated and commited $(basename $<).mo catalog && \
+               rm -f $@ && false )
 
-$(LINGUAS):
-       mkdir -p $(DIR)
-       msgfmt -o $(DIR)/blender.mo $@.po
+all debug:: $(LINGUAS_DEST)
+#      Just trigger the deps
+
+clean::
+       rm -rf $(DIR)