embed_folder_js.py 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3. from __future__ import unicode_literals, print_function
  4. import os
  5. import argparse
  6. SKIP_EXT = (".dll", ".py", ".icf", ".py", ".js", ".ogg")
  7. def do(src, dest):
  8. def listdir(path, data):
  9. for f in os.listdir(path):
  10. if path != ".":
  11. full = path + "/" + f
  12. else:
  13. full = f
  14. if os.path.isdir(full):
  15. listdir(full, data)
  16. else:
  17. ext = os.path.splitext(f)[1]
  18. if ext not in SKIP_EXT:
  19. data.append(full)
  20. files = []
  21. listdir(src, files)
  22. print(files)
  23. s = ""
  24. for f in files:
  25. s = s + " --embed " + f
  26. cmd = "python \"" + os.environ["EMSCRIPTEN"] + \
  27. "/tools/file_packager.py\" test --lz4 --js-output=\"%s\" %s" % (
  28. dest, s)
  29. print(cmd)
  30. os.system(cmd)
  31. if __name__ == "__main__":
  32. parser = argparse.ArgumentParser(
  33. description="embedding folder into one js file")
  34. parser.add_argument("-s", "--src", help="source folder", default=".")
  35. parser.add_argument(
  36. "-o", "--output", help="destination js file", default="data.js")
  37. args = parser.parse_args()
  38. output = os.path.relpath(args.output, args.src)
  39. os.chdir(args.src)
  40. do(".", output)