SCsub 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. import shutil
  2. Import('env')
  3. android_files = [
  4. 'os_android.cpp',
  5. 'godot_android.cpp',
  6. 'file_access_android.cpp',
  7. 'dir_access_android.cpp',
  8. 'audio_driver_opensl.cpp',
  9. 'file_access_jandroid.cpp',
  10. 'dir_access_jandroid.cpp',
  11. 'thread_jandroid.cpp',
  12. 'audio_driver_jandroid.cpp',
  13. 'ifaddrs_android.cpp',
  14. 'android_native_app_glue.c',
  15. 'java_glue.cpp',
  16. 'cpu-features.c',
  17. 'java_class_wrapper.cpp'
  18. ]
  19. #env.Depends('#core/math/vector3.h', 'vector3_psp.h')
  20. #obj = env.SharedObject('godot_android.cpp')
  21. env_android = env.Clone()
  22. if env['target'] == "profile":
  23. env_android.Append(CPPFLAGS=['-DPROFILER_ENABLED'])
  24. android_objects=[]
  25. for x in android_files:
  26. android_objects.append( env_android.SharedObject( x ) )
  27. prog = None
  28. abspath=env.Dir(".").abspath
  29. pp_basein = open(abspath+"/project.properties.template","rb")
  30. pp_baseout = open(abspath+"/java/project.properties","wb")
  31. pp_baseout.write( pp_basein.read() )
  32. refcount=1
  33. for x in env.android_source_modules:
  34. pp_baseout.write("android.library.reference."+str(refcount)+"="+x+"\n")
  35. refcount+=1
  36. pp_baseout.close()
  37. pp_basein = open(abspath+"/AndroidManifest.xml.template","rb")
  38. pp_baseout = open(abspath+"/java/AndroidManifest.xml","wb")
  39. manifest = pp_basein.read()
  40. manifest = manifest.replace("$$ADD_APPLICATION_CHUNKS$$",env.android_manifest_chunk)
  41. manifest = manifest.replace("$$ADD_PERMISSION_CHUNKS$$",env.android_permission_chunk)
  42. manifest = manifest.replace("$$ADD_APPATTRIBUTE_CHUNKS$$",env.android_appattributes_chunk)
  43. pp_baseout.write( manifest )
  44. for x in env.android_source_files:
  45. shutil.copy(x,abspath+"/java/src/com/android/godot")
  46. for x in env.android_module_libraries:
  47. shutil.copy(x,abspath+"/java/libs")
  48. env_android.SharedLibrary("#bin/libgodot",[android_objects],SHLIBSUFFIX=env["SHLIBSUFFIX"])
  49. #env.Command('#bin/libgodot_android.so', '#platform/android/libgodot_android.so', Copy('bin/libgodot_android.so', 'platform/android/libgodot_android.so'))