make_header.py 996 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. import os;
  2. import glob;
  3. import string;
  4. #Generate include files
  5. f=open("theme_data.h","wb")
  6. f.write("// THIS FILE HAS BEEN AUTOGENERATED, DONT EDIT!!\n");
  7. f.write("\n\n");
  8. #Generate png image block
  9. pixmaps = glob.glob("*.png");
  10. pixmaps.sort();
  11. f.write("\n\n\n");
  12. for x in pixmaps:
  13. var_str=x[:-4]+"_png";
  14. f.write("static const unsigned char "+ var_str +"[]={\n");
  15. pngf=open(x,"rb");
  16. b=pngf.read(1);
  17. while(len(b)==1):
  18. f.write(hex(ord(b)))
  19. b=pngf.read(1);
  20. if (len(b)==1):
  21. f.write(",")
  22. f.write("\n};\n\n\n");
  23. pngf.close();
  24. #Generate shaders block
  25. shaders = glob.glob("*.gsl")
  26. shaders.sort();
  27. f.write("\n\n\n");
  28. for x in shaders:
  29. var_str=x[:-4]+"_shader_code";
  30. f.write("static const char *"+ var_str +"=\n");
  31. sf=open(x,"rb");
  32. b=sf.readline();
  33. while(b!=""):
  34. if (b.endswith("\r\n")):
  35. b=b[:-2]
  36. if (b.endswith("\n")):
  37. b=b[:-1]
  38. f.write(" \""+b)
  39. b=sf.readline();
  40. if (b!=""):
  41. f.write("\"\n")
  42. f.write("\";\n\n\n");
  43. sf.close();
  44. f.close();