SCsub 1.1 KB

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