SCsub 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. Import('env')
  2. def make_doc_header(target,source,env):
  3. src = source[0].srcnode().abspath
  4. dst = target[0].srcnode().abspath
  5. f = open(src,"rb")
  6. g = open(dst,"wb")
  7. buf = f.read()
  8. decomp_size = len(buf)
  9. import zlib
  10. buf = zlib.compress(buf)
  11. g.write("/* THIS FILE IS GENERATED DO NOT EDIT */\n")
  12. g.write("#ifndef _DOC_DATA_RAW_H\n")
  13. g.write("#define _DOC_DATA_RAW_H\n")
  14. g.write("static const int _doc_data_compressed_size="+str(len(buf))+";\n")
  15. g.write("static const int _doc_data_uncompressed_size="+str(decomp_size)+";\n")
  16. g.write("static const unsigned char _doc_data_compressed[]={\n")
  17. for i in range(len(buf)):
  18. g.write(str(ord(buf[i]))+",\n")
  19. g.write("};\n")
  20. g.write("#endif")
  21. if (env["tools"]=="yes"):
  22. reg_exporters_inc='#include "register_exporters.h"\n'
  23. reg_exporters='void register_exporters() {\n'
  24. for e in env.platform_exporters:
  25. env.tool_sources.append("#platform/"+e+"/export/export.cpp")
  26. reg_exporters+='\tregister_'+e+'_exporter();\n'
  27. reg_exporters_inc+='#include "platform/'+e+'/export/export.h"\n'
  28. reg_exporters+='}\n'
  29. f = open("register_exporters.cpp","wb")
  30. f.write(reg_exporters_inc)
  31. f.write(reg_exporters)
  32. f.close()
  33. env.Depends("#tools/editor/doc_data_compressed.h","#doc/base/classes.xml")
  34. env.Command("#tools/editor/doc_data_compressed.h","#doc/base/classes.xml",make_doc_header)
  35. #make_doc_header(env.File("#tools/editor/doc_data_raw.h").srcnode().abspath,env.File("#doc/base/classes.xml").srcnode().abspath,env)
  36. env.add_source_files(env.tool_sources,"*.cpp")
  37. Export('env')
  38. SConscript('icons/SCsub');
  39. SConscript('plugins/SCsub');
  40. SConscript('fileserver/SCsub');
  41. SConscript('io_plugins/SCsub');