Some cleanup, and update to make those files usable both as self-executables and...
[blender.git] / release / datafiles / datatoc.py
index 805d72056511a41623802fefa9fc559a991d878d..f1fce08d7dd18fabb6bde28e1e113cd6d7ebc12e 100755 (executable)
@@ -1,5 +1,6 @@
-#!/usr/bin/python3
-#
+#!/usr/bin/python
+# -*- coding: utf-8 -*-
+
 # ***** BEGIN GPL LICENSE BLOCK *****
 #
 # This program is free software; you can redistribute it and/or
@@ -14,7 +15,7 @@
 #
 # 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
 #
 # The Original Code is Copyright (C) 2009 Blender Foundation.
 # All rights reserved.
 #
 # ***** END GPL LICENCE BLOCK *****
 
+# <pep8 compliant>
+
 import sys
+import os
 
 if len(sys.argv) < 2:
-       print("Usage: datatoc <data_file>")
-       sys.exit(1)
+    sys.stdout.write("Usage: datatoc <data_file>\n")
+    sys.exit(1)
 
 filename = sys.argv[1]
 
 try:
-       fpin = open(filename, "rb");
+    fpin = open(filename, "rb")
 except:
-       print("Unable to open input <{0}>".format(sys.argv[1]))
-       sys.exit(1)
+    sys.stdout.write("Unable to open input %s\n" % sys.argv[1])
+    sys.exit(1)
 
-size = fpin.seek(0, 2)
+fpin.seek(0, os.SEEK_END)
+size = fpin.tell()
 fpin.seek(0)
 
-if filename[0] == ".":
-       filename = filename[1:]
+if filename[0:2] == "." + os.sep:
+    filename = filename[2:]
 
 cname = filename + ".c"
-print("Making C file <{0}>".format(cname))
+sys.stdout.write("Making C file <%s>\n" % cname)
 
+filename = filename.split("/")[-1].split("\\")[-1]
 filename = filename.replace(".", "_")
+sys.stdout.write("%d\n" % size)
 
 try:
-       fpout = open(cname, "w")
+    fpout = open(cname, "w")
 except:
-       print("Unable to open output <{0}>".format(cname))
-       sys.exit(1)
+    sys.stdout.write("Unable to open output %s\n" % cname)
+    sys.exit(1)
 
-fpout.write("/* DataToC output of file <{0}> */\n\n".format(filename))
-fpout.write("int datatoc_{0}_size= {1};\n".format(filename, size))
+fpout.write("/* DataToC output of file <%s> */\n\n" % filename)
+fpout.write("int datatoc_%s_size = %d;\n" % (filename, size))
 
-fpout.write("char datatoc_{0}[]= {{\n".format(filename))
+fpout.write("char datatoc_%s[] = {\n" % filename)
 
 while size > 0:
-       size -= 1
-       if size % 32 == 31:
-               fpout.write("\n")
-       
-       fpout.write("{0:3d},".format(ord(fpin.read(1))))
+    size -= 1
+    if size % 32 == 31:
+        fpout.write("\n")
+
+    fpout.write("%3d," % ord(fpin.read(1)))
 
 fpout.write("\n  0};\n\n")