12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- #!/usr/bin/env python
- Import('env')
- android_files = [
- 'os_android.cpp',
- 'file_access_android.cpp',
- 'audio_driver_opensl.cpp',
- 'file_access_jandroid.cpp',
- 'dir_access_jandroid.cpp',
- 'thread_jandroid.cpp',
- 'net_socket_android.cpp',
- 'audio_driver_jandroid.cpp',
- 'java_godot_lib_jni.cpp',
- 'java_class_wrapper.cpp',
- 'java_godot_wrapper.cpp',
- 'java_godot_io_wrapper.cpp',
- 'jni_utils.cpp',
- 'android_keys_utils.cpp',
- 'plugin/godot_plugin_jni.cpp',
- #'power_android.cpp'
- ]
- env_android = env.Clone()
- android_objects = []
- for x in android_files:
- android_objects.append(env_android.SharedObject(x))
- env_thirdparty = env_android.Clone()
- env_thirdparty.disable_warnings()
- android_objects.append(env_thirdparty.SharedObject('#thirdparty/misc/ifaddrs-android.cc'))
- lib = env_android.add_shared_library("#bin/libgodot", [android_objects], SHLIBSUFFIX=env["SHLIBSUFFIX"])
- lib_arch_dir = ''
- if env['android_arch'] == 'armv7':
- lib_arch_dir = 'armeabi-v7a'
- elif env['android_arch'] == 'arm64v8':
- lib_arch_dir = 'arm64-v8a'
- elif env['android_arch'] == 'x86':
- lib_arch_dir = 'x86'
- elif env['android_arch'] == 'x86_64':
- lib_arch_dir = 'x86_64'
- else:
- print('WARN: Architecture not suitable for embedding into APK; keeping .so at \\bin')
- if lib_arch_dir != '':
- if env['target'] == 'release':
- lib_type_dir = 'release'
- else: # release_debug, debug
- lib_type_dir = 'debug'
- out_dir = '#platform/android/java/lib/libs/' + lib_type_dir + '/' + lib_arch_dir
- env_android.Command(out_dir + '/libgodot_android.so', '#bin/libgodot' + env['SHLIBSUFFIX'], Move("$TARGET", "$SOURCE"))
- stl_lib_path = str(env['ANDROID_NDK_ROOT']) + '/sources/cxx-stl/llvm-libc++/libs/' + lib_arch_dir + '/libc++_shared.so'
- env_android.Command(out_dir + '/libc++_shared.so', stl_lib_path, Copy("$TARGET", "$SOURCE"))
|