mirror of
https://github.com/godotengine/godot.git
synced 2024-12-15 10:12:40 +08:00
35ec0e9be7
See discussion in #43811, it was only implemented on iOS and even that implementation was fairly limited. This would best be provided as plugins for Android and iOS without cluttering the shared OS API.
43 lines
1.1 KiB
Python
43 lines
1.1 KiB
Python
#!/usr/bin/env python
|
|
|
|
Import("env")
|
|
|
|
iphone_lib = [
|
|
"godot_iphone.mm",
|
|
"os_iphone.mm",
|
|
"main.m",
|
|
"app_delegate.mm",
|
|
"view_controller.mm",
|
|
"ios.mm",
|
|
"vulkan_context_iphone.mm",
|
|
"display_server_iphone.mm",
|
|
"joypad_iphone.mm",
|
|
"godot_view.mm",
|
|
"display_layer.mm",
|
|
"godot_app_delegate.m",
|
|
"godot_view_renderer.mm",
|
|
"godot_view_gesture_recognizer.mm",
|
|
"device_metrics.m",
|
|
"keyboard_input_view.mm",
|
|
]
|
|
|
|
env_ios = env.Clone()
|
|
ios_lib = env_ios.add_library("iphone", iphone_lib)
|
|
|
|
# (iOS) Enable module support
|
|
env_ios.Append(CCFLAGS=["-fmodules", "-fcxx-modules"])
|
|
|
|
|
|
def combine_libs(target=None, source=None, env=None):
|
|
lib_path = target[0].srcnode().abspath
|
|
if "osxcross" in env:
|
|
libtool = "$IPHONEPATH/usr/bin/${ios_triple}libtool"
|
|
else:
|
|
libtool = "$IPHONEPATH/usr/bin/libtool"
|
|
env.Execute(
|
|
libtool + ' -static -o "' + lib_path + '" ' + " ".join([('"' + lib.srcnode().abspath + '"') for lib in source])
|
|
)
|
|
|
|
|
|
combine_command = env_ios.Command("#bin/libgodot" + env_ios["LIBSUFFIX"], [ios_lib] + env_ios["LIBS"], combine_libs)
|