SCsub 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. #!/usr/bin/env python
  2. Import("env")
  3. ios_lib = [
  4. "godot_ios.mm",
  5. "os_ios.mm",
  6. "main.m",
  7. "app_delegate.mm",
  8. "view_controller.mm",
  9. "ios.mm",
  10. "vulkan_context_ios.mm",
  11. "display_server_ios.mm",
  12. "joypad_ios.mm",
  13. "godot_view.mm",
  14. "tts_ios.mm",
  15. "display_layer.mm",
  16. "godot_app_delegate.m",
  17. "godot_view_renderer.mm",
  18. "device_metrics.m",
  19. "keyboard_input_view.mm",
  20. "key_mapping_ios.mm",
  21. ]
  22. env_ios = env.Clone()
  23. ios_lib = env_ios.add_library("ios", ios_lib)
  24. # (iOS) Enable module support
  25. env_ios.Append(CCFLAGS=["-fmodules", "-fcxx-modules"])
  26. def combine_libs(target=None, source=None, env=None):
  27. lib_path = target[0].srcnode().abspath
  28. if "osxcross" in env:
  29. libtool = "$IOS_TOOLCHAIN_PATH/usr/bin/${ios_triple}libtool"
  30. else:
  31. libtool = "$IOS_TOOLCHAIN_PATH/usr/bin/libtool"
  32. env.Execute(
  33. libtool + ' -static -o "' + lib_path + '" ' + " ".join([('"' + lib.srcnode().abspath + '"') for lib in source])
  34. )
  35. combine_command = env_ios.Command("#bin/libgodot" + env_ios["LIBSUFFIX"], [ios_lib] + env_ios["LIBS"], combine_libs)