rhodes 6.2.0 → 7.5.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/CONTRIBUTING.md +1 -1
- data/CREDITS +3 -1
- data/Gemfile +3 -0
- data/LICENSE +1 -1
- data/README.html +2 -2
- data/README.md +28 -23
- data/Rakefile +194 -101
- data/SECURITY.md +19 -0
- data/appveyor.yml +127 -47
- data/azure-pipelines.yml +67 -0
- data/bin/rhodes-setup +4 -4
- data/doc/application.txt +21 -0
- data/doc/oss/DeveloperNotes.md +1 -1
- data/doc/oss/WM_CE_Installation_And_Build_Guidelines.md +1 -1
- data/ext/extconf.rb +16 -3
- data/extensions/emdk3-manager/ext/platform/android/Rakefile +2 -0
- data/extensions/instrumentation/ext/platform/iphone/Instrumentation.xcodeproj/project.pbxproj +4 -4
- data/extensions/rhoconnect-push/ext/build.bat +1 -1
- data/extensions/rhoconnect-push/ext/rhoconnect-push/platform/android/Rakefile +18 -1
- data/extensions/rhoconnect-push/ext/rhoconnect-push/platform/android/src/com/rhomobile/rhoelements/ans/ANSManager.java +2 -2
- data/extensions/rhoelementsext/ext/rhoelementsext/platform/android/Rakefile +19 -1
- data/extensions/rhoelementsext/ext/rhoelementsext/platform/android/rhoelements_temp/src/com/rho/rhoelements/graphics/BatteryIndicator.java +14 -1
- data/lib/build/buildgem.rb +26 -0
- data/lib/build/jake.rb +7 -5
- data/lib/commonAPI/ConnectionChecking/ext/build.bat +1 -1
- data/lib/commonAPI/RubyServer/ext/RubyServer.xml +101 -0
- data/lib/commonAPI/RubyServer/ext/build +19 -0
- data/lib/commonAPI/RubyServer/ext/build.bat +29 -0
- data/lib/commonAPI/RubyServer/ext/platform/android/Rakefile +161 -0
- data/lib/commonAPI/RubyServer/ext/platform/android/ext_java.files +9 -0
- data/lib/commonAPI/RubyServer/ext/platform/android/ext_native.files +7 -0
- data/lib/commonAPI/RubyServer/ext/platform/iphone/Rakefile +20 -0
- data/lib/commonAPI/RubyServer/ext/platform/iphone/RubyServer.xcodeproj/project.pbxproj +322 -0
- data/lib/commonAPI/RubyServer/ext/platform/iphone/RubyServer_Prefix.pch +7 -0
- data/lib/commonAPI/RubyServer/ext/shared/RubyServerImpl.cpp +242 -0
- data/lib/commonAPI/RubyServer/ext.yml +21 -0
- data/lib/commonAPI/audiocapture/ext/build.bat +1 -1
- data/lib/commonAPI/audiocapture/ext/platform/android/src/com/rho/audiocapture/AudioCapture.java +4 -1
- data/lib/commonAPI/audiocapture/ext/platform/iphone/Audiocapture.xcodeproj/project.pbxproj +4 -4
- data/lib/commonAPI/audiocapture/ext/platform/iphone/Rakefile +9 -63
- data/lib/commonAPI/barcode/ext/barcode.xml +2 -6
- data/lib/commonAPI/barcode/ext/build +5 -0
- data/lib/commonAPI/barcode/ext/build.bat +1 -1
- data/lib/commonAPI/barcode/ext/platform/android/AndroidManifest.xml +16 -1
- data/lib/commonAPI/barcode/ext/platform/android/Rakefile +229 -0
- data/lib/commonAPI/barcode/ext/platform/android/additional_files/res/drawable/barcode_arrow_back.png +0 -0
- data/lib/commonAPI/barcode/ext/platform/android/additional_files/res/drawable/barcode_done.png +0 -0
- data/lib/commonAPI/barcode/ext/platform/android/additional_files/res/drawable/barcode_flash_off.png +0 -0
- data/lib/commonAPI/barcode/ext/platform/android/additional_files/res/drawable/barcode_flash_on.png +0 -0
- data/lib/commonAPI/barcode/ext/platform/android/additional_files/res/drawable/barcode_replay.png +0 -0
- data/lib/commonAPI/barcode/ext/platform/android/additional_files/res/drawable-hdpi/icon.png +0 -0
- data/lib/commonAPI/barcode/ext/platform/android/additional_files/res/layout/barcode_capture.xml +98 -0
- data/lib/commonAPI/barcode/ext/platform/android/additional_files/res/values/barcode_strings.xml +12 -0
- data/lib/commonAPI/barcode/ext/platform/android/additional_files/res/values/barcode_styles.xml +8 -0
- data/lib/commonAPI/barcode/ext/platform/android/additional_files/res/values/dimens.xml +5 -0
- data/lib/commonAPI/barcode/ext/platform/android/additional_files/res/values-w820dp/dimens.xml +6 -0
- data/lib/commonAPI/barcode/ext/platform/android/ext_java.files +11 -0
- data/lib/commonAPI/barcode/ext/platform/android/src/com/google/barcodereader/BarcodeCaptureActivity.java +667 -0
- data/lib/commonAPI/barcode/ext/platform/android/src/com/google/barcodereader/BarcodeFormats.java +64 -0
- data/lib/commonAPI/barcode/ext/platform/android/src/com/google/barcodereader/BarcodeGraphic.java +94 -0
- data/lib/commonAPI/barcode/ext/platform/android/src/com/google/barcodereader/BarcodeGraphicTracker.java +165 -0
- data/lib/commonAPI/barcode/ext/platform/android/src/com/google/barcodereader/BarcodeTrackerFactory.java +47 -0
- data/lib/commonAPI/barcode/ext/platform/android/src/com/google/barcodereader/ui/camera/CameraSource.java +1166 -0
- data/lib/commonAPI/barcode/ext/platform/android/src/com/google/barcodereader/ui/camera/CameraSourcePreview.java +189 -0
- data/lib/commonAPI/barcode/ext/platform/android/src/com/google/barcodereader/ui/camera/GraphicOverlay.java +309 -0
- data/lib/commonAPI/barcode/ext/platform/android/src/com/rho/barcode/BarcodeCommon.java +199 -0
- data/lib/commonAPI/barcode/ext/platform/android/src/com/rho/barcode/BarcodeFactory.java +89 -52
- data/lib/commonAPI/barcode/ext/platform/android/src/com/rho/barcode/BarcodeFactoryRhoListener.java +9 -1
- data/lib/commonAPI/barcode/ext/platform/android/src/com/rho/barcode/BarcodeRhoExtension.java +77 -9
- data/lib/commonAPI/barcode/ext/platform/android/src/com/rho/barcode/BarcodeSingleton.java +75 -23
- data/lib/commonAPI/barcode/ext/platform/android/src/com/rho/barcode/InternalAndroidBarcodeScanner.java +184 -0
- data/lib/commonAPI/barcode/ext/platform/android/src/com/rho/barcode/ZXingScanner.java +48 -180
- data/lib/commonAPI/barcode/ext/platform/android/src/com/rho/barcode/emdk3/EMDK3Scanner.java +8 -1
- data/lib/commonAPI/barcode/ext/platform/android/src/com/rho/barcode/emdk3/EMDK3ScannerSettings.java +4 -3
- data/lib/commonAPI/barcode/ext/platform/iphone/Barcode.xcodeproj/project.pbxproj +28 -56
- data/lib/commonAPI/barcode/ext/platform/iphone/Classes/BarcodeViewController.h +38 -10
- data/lib/commonAPI/barcode/ext/platform/iphone/Classes/BarcodeViewController.m +300 -22
- data/lib/commonAPI/barcode/ext/platform/iphone/Classes/BarcodeViewFactory.mm +6 -0
- data/lib/commonAPI/barcode/ext/platform/iphone/Classes/barcode.m +6 -2
- data/lib/commonAPI/barcode/ext/platform/iphone/Rakefile +9 -64
- data/lib/commonAPI/barcode/ext/platform/iphone/ZXingObjC/ZXingObjC/client/result/ZXResultParser.m +1 -1
- data/lib/commonAPI/barcode/ext/platform/iphone/ZXingObjC/ZXingObjC/datamatrix/decoder/ZXDataMatrixDecodedBitStreamParser.m +4 -4
- data/lib/commonAPI/barcode/ext/platform/iphone/ZXingObjC/ZXingObjC.xcodeproj/project.pbxproj +6 -6
- data/lib/commonAPI/barcode/ext/platform/iphone/impl/Barcode.m +7 -3
- data/lib/commonAPI/barcode/ext/platform/iphone/impl/BarcodeFactory.m +13 -0
- data/lib/commonAPI/barcode/ext/platform/iphone/impl/BarcodeSingleton.m +25 -3
- data/lib/commonAPI/barcode/ext/platform/qt/Barcode.pro +41 -37
- data/lib/commonAPI/barcode/ext/platform/qt/src/BarcodeDialogBuilder.h +2 -0
- data/lib/commonAPI/barcode/ext/platform/qt/src/BarcodeDialogView.cpp +6 -3
- data/lib/commonAPI/barcode/ext/platform/qt/src/BarcodeDialogView.h +1 -1
- data/lib/commonAPI/barcode/ext/platform/qt/src/qzxing/zxing/zxing/ZXing.h +5 -5
- data/lib/commonAPI/barcode/ext.yml +6 -1
- data/lib/commonAPI/bluetooth/ext/build.bat +1 -1
- data/lib/commonAPI/bluetooth/ext/platform/android/Rakefile +29 -10
- data/lib/commonAPI/bluetooth/ext/platform/android/src/com/rhomobile/rhodes/bluetooth/RhoBluetoothManagerNew.java +2 -0
- data/lib/commonAPI/bluetooth/ext/platform/iphone/Bluetooth.xcodeproj/project.pbxproj +6 -16
- data/lib/commonAPI/bluetooth/ext/platform/iphone/Rakefile +9 -62
- data/lib/commonAPI/bluetooth/ext/platform/qt/Bluetooth.pro +8 -11
- data/lib/commonAPI/bluetooth/ext/platform/qt/src/bluetooth/bluetoothserver.h +1 -1
- data/lib/commonAPI/clipboard/ext/build.bat +1 -1
- data/lib/commonAPI/clipboard/ext/platform/android/Rakefile +29 -10
- data/lib/commonAPI/clipboard/ext/platform/iphone/Clipboard.xcodeproj/project.pbxproj +4 -4
- data/lib/commonAPI/clipboard/ext/platform/iphone/Rakefile +9 -62
- data/lib/commonAPI/coreapi/RhoNativeTabbarApi.rb +1 -1
- data/lib/commonAPI/coreapi/RhoNotificationApi.rb +1 -1
- data/lib/commonAPI/coreapi/ext/Application.xml +2 -1
- data/lib/commonAPI/coreapi/ext/Notification.xml +47 -0
- data/lib/commonAPI/coreapi/ext/Timer.xml +21 -13
- data/lib/commonAPI/coreapi/ext/build +5 -0
- data/lib/commonAPI/coreapi/ext/build.bat +1 -1
- data/lib/commonAPI/coreapi/ext/platform/android/Rakefile +19 -12
- data/lib/commonAPI/coreapi/ext/platform/android/ext_java.files +2 -0
- data/lib/commonAPI/coreapi/ext/platform/android/src/com/rho/intent/IntentSingleton.java +21 -7
- data/lib/commonAPI/coreapi/ext/platform/android/src/com/rho/notification/AlarmReceiver.java +27 -0
- data/lib/commonAPI/coreapi/ext/platform/android/src/com/rho/notification/Notification.java +32 -12
- data/lib/commonAPI/coreapi/ext/platform/android/src/com/rho/notification/NotificationFactory.java +14 -1
- data/lib/commonAPI/coreapi/ext/platform/android/src/com/rho/notification/NotificationScheduler.java +260 -0
- data/lib/commonAPI/coreapi/ext/platform/android/src/com/rho/notification/NotificationSingleton.java +24 -2
- data/lib/commonAPI/coreapi/ext/platform/iphone/Coreapi.xcodeproj/project.pbxproj +27 -23
- data/lib/commonAPI/coreapi/ext/platform/iphone/cpp_based_impl/SystemImpl.mm +4 -2
- data/lib/commonAPI/coreapi/ext/platform/iphone/impl/IntentSingleton.m +2 -2
- data/lib/commonAPI/coreapi/ext/platform/iphone/impl/NotificationSingleton.h +1 -0
- data/lib/commonAPI/coreapi/ext/platform/iphone/impl/NotificationSingleton.m +236 -3
- data/lib/commonAPI/coreapi/ext/platform/qt/coreapi.pro +17 -16
- data/lib/commonAPI/coreapi/ext/platform/qt/src/CNativeToolbarImpl.cpp +1 -1
- data/lib/commonAPI/coreapi/ext/platform/qt/src/CNotificationImpl.cpp +7 -0
- data/lib/commonAPI/coreapi/ext/platform/wm/src/NetworkDetect.h +2 -2
- data/lib/commonAPI/coreapi/ext/platform/wm/src/NotificationImpl.cpp +7 -0
- data/lib/commonAPI/coreapi/ext/platform/wm/src/SystemImpl.cpp +1 -3
- data/lib/commonAPI/coreapi/ext/push.xml +10 -5
- data/lib/commonAPI/coreapi/ext/shared/ApplicationImpl.cpp +7 -2
- data/lib/commonAPI/coreapi/ext/shared/InitExtension.cpp +8 -8
- data/lib/commonAPI/coreapi/ext/shared/NetworkDetectBase.cpp +1 -1
- data/lib/commonAPI/coreapi/ext/shared/SystemImplBase.cpp +2 -0
- data/lib/commonAPI/coreapi/ext/system.xml +3 -0
- data/lib/commonAPI/coreapi/public/api/rhoapi.js +18 -8
- data/lib/commonAPI/devicesecurity/ext/DeviceSecurity.xml +2 -2
- data/lib/commonAPI/devicesecurity/ext/build.bat +1 -1
- data/lib/commonAPI/devicesecurity/ext/platform/android/Rakefile +19 -0
- data/lib/commonAPI/devicesecurity/ext/platform/iphone/DeviceSecurity.xcodeproj/project.pbxproj +20 -4
- data/lib/commonAPI/devicesecurity/ext/platform/iphone/Rakefile +9 -62
- data/lib/commonAPI/eventsource/ext/platform/iphone/Eventsource.xcodeproj/project.pbxproj +4 -4
- data/lib/commonAPI/eventsource/ext/platform/iphone/Rakefile +9 -64
- data/lib/commonAPI/hardwarekeys/ext/keycapture.xml +11 -9
- data/lib/commonAPI/hardwarekeys/ext/platform/android/src/com/rho/keycapture/KeyCaptureRhoListener.java +11 -1
- data/lib/commonAPI/hardwarekeys/ext/platform/android/src/com/rho/keycapture/KeyCaptureSingleton.java +14 -1
- data/lib/commonAPI/hardwarekeys/ext/platform/iphone/HardwareKeys.xcodeproj/project.pbxproj +4 -4
- data/lib/commonAPI/hardwarekeys/ext/platform/iphone/Rakefile +9 -62
- data/lib/commonAPI/hardwarekeys/ext/platform/iphone/impl/KeyCaptureSingleton.h +5 -3
- data/lib/commonAPI/hardwarekeys/ext/platform/iphone/impl/KeyCaptureSingleton.m +80 -67
- data/lib/commonAPI/indicators/ext/platform/iphone/Indicators.xcodeproj/project.pbxproj +4 -4
- data/lib/commonAPI/indicators/ext/platform/iphone/Rakefile +9 -62
- data/lib/commonAPI/javascriptvm/ext/platform/iphone/Javascriptvm.xcodeproj/project.pbxproj +4 -4
- data/lib/commonAPI/javascriptvm/ext/platform/iphone/Rakefile +9 -63
- data/lib/commonAPI/logCapture/ext/build.bat +1 -1
- data/lib/commonAPI/logCapture/ext/platform/iphone/LogCapture.xcodeproj/project.pbxproj +4 -4
- data/lib/commonAPI/logCapture/ext/platform/iphone/Rakefile +9 -62
- data/lib/commonAPI/mediacapture/ext/build +5 -0
- data/lib/commonAPI/mediacapture/ext/build.bat +1 -1
- data/lib/commonAPI/mediacapture/ext/camera.xml +4 -9
- data/lib/commonAPI/mediacapture/ext/platform/android/AndroidManifest_rhomobile.xml +1 -0
- data/lib/commonAPI/mediacapture/ext/platform/android/ApplicationFileProvider.erb +9 -0
- data/lib/commonAPI/mediacapture/ext/platform/android/adds/res/xml/image_fileprovider_paths.xml +4 -0
- data/lib/commonAPI/mediacapture/ext/platform/android/ext_java.files +1 -9
- data/lib/commonAPI/mediacapture/ext/platform/android/src/com/rho/camera/CameraExtension.java +0 -2
- data/lib/commonAPI/mediacapture/ext/platform/android/src/com/rho/camera/CameraFactory.java +19 -24
- data/lib/commonAPI/mediacapture/ext/platform/android/src/com/rho/camera/CameraObject.java +334 -664
- data/lib/commonAPI/mediacapture/ext/platform/android/src/com/rho/camera/CameraRhoListener.java +273 -425
- data/lib/commonAPI/mediacapture/ext/platform/android/src/com/rho/camera/{CameraSingletonObject.java → CameraSingleton.java} +68 -74
- data/lib/commonAPI/mediacapture/ext/platform/android/src/com/rho/videocapture/Videocapture.java +3 -1
- data/lib/commonAPI/mediacapture/ext/platform/iphone/Mediacapture.xcodeproj/project.pbxproj +4 -4
- data/lib/commonAPI/mediacapture/ext/platform/iphone/Rakefile +9 -62
- data/lib/commonAPI/mediacapture/ext/platform/qt/{MediaCapture.pro → Mediacapture.pro} +19 -33
- data/lib/commonAPI/mediacapture/ext/platform/qt/src/Camera_impl.cpp +1 -1
- data/lib/commonAPI/mediacapture/ext.yml +4 -1
- data/lib/commonAPI/mediaplayer/ext/platform/iphone/Mediaplayer.xcodeproj/project.pbxproj +4 -4
- data/lib/commonAPI/mediaplayer/ext/platform/iphone/Rakefile +9 -62
- data/lib/commonAPI/printing/ext/platform/iphone/Printing.xcodeproj/project.pbxproj +4 -4
- data/lib/commonAPI/printing/ext/platform/iphone/Rakefile +9 -62
- data/lib/commonAPI/printing_epson/ext/platform/iphone/PrintingEpson.xcodeproj/project.pbxproj +4 -4
- data/lib/commonAPI/printing_epson/ext/platform/iphone/Rakefile +9 -62
- data/lib/commonAPI/printing_zebra/ext/platform/android/Rakefile +18 -0
- data/lib/commonAPI/printing_zebra/ext/platform/android/src/com/rhomobile/printing/zebra/impl/ZebraPrintingProviderImpl.java +2 -1
- data/lib/commonAPI/printing_zebra/ext/platform/iphone/PrintingZebra.xcodeproj/project.pbxproj +4 -4
- data/lib/commonAPI/printing_zebra/ext/platform/iphone/Rakefile +9 -62
- data/lib/commonAPI/screenorientation/ext/platform/android/src/com/rho/screenorientation/ScreenOrientationRhoListener.java +2 -1
- data/lib/commonAPI/screenorientation/ext/platform/android/src/com/rho/screenorientation/ScreenOrientationSingleton.java +19 -6
- data/lib/commonAPI/screenorientation/ext/platform/iphone/Rakefile +9 -63
- data/lib/commonAPI/screenorientation/ext/platform/iphone/Screenorientation.xcodeproj/project.pbxproj +4 -4
- data/lib/commonAPI/sensor/ext/platform/android/src/com/rho/sensor/Sensor.java +4 -4
- data/lib/commonAPI/sensor/ext/platform/iphone/Rakefile +9 -62
- data/lib/commonAPI/sensor/ext/platform/iphone/Sensor.xcodeproj/project.pbxproj +4 -4
- data/lib/commonAPI/signature/ext/build.bat +8 -0
- data/lib/commonAPI/signature/ext/platform/iphone/Rakefile +9 -62
- data/lib/commonAPI/signature/ext/platform/iphone/signature.xcodeproj/project.pbxproj +4 -4
- data/lib/commonAPI/signature/ext/platform/qt/Signature.pro +26 -12
- data/lib/commonAPI/signature/ext.yml +0 -1
- data/lib/commonAPI/smartcradle/ext/build.bat +1 -1
- data/lib/commonAPI/websocket/ext/platform/iphone/Rakefile +9 -62
- data/lib/commonAPI/websocket/ext/platform/iphone/Websocket.xcodeproj/project.pbxproj +4 -4
- data/lib/extensions/Development/ext/build.bat +1 -1
- data/lib/extensions/Development/ext/platform/iphone/Development.xcodeproj/project.pbxproj +4 -4
- data/lib/extensions/Development/ext/platform/iphone/Rakefile +9 -62
- data/lib/extensions/applePush/ext/platform/iphone/ApplePush.xcodeproj/project.pbxproj +4 -4
- data/lib/extensions/applePush/ext/platform/iphone/Rakefile +9 -62
- data/lib/extensions/audiocapture/ext/audiocapture/platform/iphone/Audiocapture.xcodeproj/project.pbxproj +4 -4
- data/lib/extensions/audiocapture/ext/audiocapture/platform/iphone/Rakefile +9 -62
- data/lib/extensions/bigdecimal/ext/Rakefile +2 -2
- data/lib/extensions/bigdecimal/ext/bigdecimal.pro +9 -0
- data/lib/extensions/bigdecimal/ext/build +4 -0
- data/lib/extensions/bigdecimal/ext/build.bat +1 -1
- data/lib/extensions/bigdecimal/ext/iphone/Bigdecimal.xcodeproj/project.pbxproj +4 -4
- data/lib/extensions/bigdecimal/ext/iphone/Rakefile +9 -62
- data/lib/extensions/debugger/debugger.rb +331 -180
- data/lib/extensions/decrypt/ext/build.bat +1 -1
- data/lib/extensions/decrypt/ext/platform/android/Rakefile +19 -1
- data/lib/extensions/decrypt/ext/platform/iphone/Decrypt.xcodeproj/project.pbxproj +4 -4
- data/lib/extensions/decrypt/ext/platform/iphone/Rakefile +9 -62
- data/lib/extensions/decryptstub/ext/build.bat +1 -1
- data/lib/extensions/decryptstub/ext/platform/android/Rakefile +19 -0
- data/lib/extensions/decryptstub/ext/platform/iphone/Decryptstub.xcodeproj/project.pbxproj +10 -6
- data/lib/extensions/decryptstub/ext/platform/iphone/Rakefile +9 -62
- data/lib/extensions/digest/ext/Rakefile +2 -2
- data/lib/extensions/digest/ext/build +4 -0
- data/lib/extensions/digest/ext/build.bat +1 -1
- data/lib/extensions/digest/ext/digest.pro +9 -0
- data/lib/extensions/digest/ext/iphone/Digest.xcodeproj/project.pbxproj +4 -4
- data/lib/extensions/digest/ext/iphone/Rakefile +9 -62
- data/lib/extensions/digest-md5/ext/Rakefile +2 -2
- data/lib/extensions/digest-md5/ext/android/Rakefile +18 -0
- data/lib/extensions/digest-md5/ext/build +4 -0
- data/lib/extensions/digest-md5/ext/build.bat +1 -1
- data/lib/extensions/digest-md5/ext/digest-md5.pro +9 -0
- data/lib/extensions/digest-md5/ext/iphone/Dmd5.xcodeproj/project.pbxproj +4 -4
- data/lib/extensions/digest-md5/ext/iphone/Rakefile +9 -62
- data/lib/extensions/digest-sha1/ext/Rakefile +2 -2
- data/lib/extensions/digest-sha1/ext/android/Rakefile +18 -0
- data/lib/extensions/digest-sha1/ext/build +4 -0
- data/lib/extensions/digest-sha1/ext/build.bat +1 -1
- data/lib/extensions/digest-sha1/ext/digest-sha1.pro +9 -0
- data/lib/extensions/digest-sha1/ext/iphone/Dsha1.xcodeproj/project.pbxproj +4 -4
- data/lib/extensions/digest-sha1/ext/iphone/Rakefile +9 -62
- data/lib/extensions/digest-sha2/ext/Rakefile +2 -2
- data/lib/extensions/digest-sha2/ext/android/Rakefile +18 -0
- data/lib/extensions/digest-sha2/ext/build +4 -0
- data/lib/extensions/digest-sha2/ext/build.bat +1 -1
- data/lib/extensions/digest-sha2/ext/digest-sha2.pro +9 -0
- data/lib/extensions/digest-sha2/ext/iphone/Dsha2.xcodeproj/project.pbxproj +4 -4
- data/lib/extensions/digest-sha2/ext/iphone/Rakefile +9 -62
- data/lib/extensions/esri/ext/esri/platform/iphone/Classes/MapViewControllerESRI.h +19 -19
- data/lib/extensions/esri/ext/esri/platform/iphone/ESRI.xcodeproj/project.pbxproj +4 -4
- data/lib/extensions/esri/ext/esri/platform/iphone/Rakefile +9 -65
- data/lib/extensions/fcm-push/ext/android/ApplicationManifestAdds.erb +15 -17
- data/lib/extensions/fcm-push/ext/android/Rakefile +77 -34
- data/lib/extensions/fcm-push/ext/android/ext_java.files +0 -1
- data/lib/extensions/fcm-push/ext/android/src/com/rhomobile/rhodes/fcm/FCMFacade.java +13 -17
- data/lib/extensions/fcm-push/ext/android/src/com/rhomobile/rhodes/fcm/FCMIntentService.java +90 -67
- data/lib/extensions/fcm-push/ext/android/src/com/rhomobile/rhodes/fcm/FCMListener.java +0 -16
- data/lib/extensions/fcm-push/ext/iphone/Podfile +11 -0
- data/lib/extensions/fcm-push/ext/iphone/Rakefile +13 -66
- data/lib/extensions/fcm-push/ext/iphone/fcm-push.xcodeproj/project.pbxproj +99 -48
- data/lib/extensions/fcm-push/ext/iphone/impl/PushNotificationsReceiver.h +3 -1
- data/lib/extensions/fcm-push/ext/iphone/impl/PushNotificationsReceiver.mm +11 -4
- data/lib/extensions/fcm-push/ext/iphone/resources.txt +1 -0
- data/lib/extensions/fcm-push/ext.yml +6 -2
- data/lib/extensions/fcntl/ext/Rakefile +2 -2
- data/lib/extensions/fcntl/ext/build +4 -0
- data/lib/extensions/fcntl/ext/build.bat +1 -1
- data/lib/extensions/fcntl/ext/fcntl.pro +9 -0
- data/lib/extensions/fcntl/ext/iphone/Fcntl.xcodeproj/project.pbxproj +4 -4
- data/lib/extensions/fcntl/ext/iphone/Rakefile +9 -62
- data/lib/extensions/gcm-push/ext/android/Rakefile +19 -0
- data/lib/extensions/gmaps/ext/platform/android/ApplicationManifestAdds.erb +1 -0
- data/lib/extensions/gmaps/ext/platform/android/src/com/rhomobile/rhodes/gmaps/GMapActivity.java +12 -4
- data/lib/extensions/gmaps/ext.yml +3 -1
- data/lib/extensions/keyboard/ext/Keyboard.xml +28 -0
- data/lib/extensions/keyboard/ext/build +19 -0
- data/lib/extensions/keyboard/ext/build.bat +29 -0
- data/lib/extensions/keyboard/ext/platform/android/Rakefile +141 -0
- data/lib/extensions/keyboard/ext/platform/android/ext_java.files +9 -0
- data/lib/extensions/keyboard/ext/platform/android/ext_native.files +7 -0
- data/lib/extensions/keyboard/ext/platform/android/jni/Keyboard_impl.cpp +61 -0
- data/lib/extensions/keyboard/ext/platform/android/src/com/rho/keyboard/Keyboard.java +32 -0
- data/lib/extensions/keyboard/ext/platform/android/src/com/rho/keyboard/KeyboardFactory.java +18 -0
- data/lib/extensions/keyboard/ext/platform/android/src/com/rho/keyboard/KeyboardSingleton.java +29 -0
- data/lib/extensions/keyboard/ext/platform/iphone/Keyboard.xcodeproj/project.pbxproj +368 -0
- data/lib/extensions/keyboard/ext/platform/iphone/Keyboard_Prefix.pch +7 -0
- data/lib/extensions/keyboard/ext/platform/iphone/Rakefile +20 -0
- data/lib/extensions/keyboard/ext/platform/iphone/impl/Keyboard.h +14 -0
- data/lib/extensions/keyboard/ext/platform/iphone/impl/Keyboard.m +24 -0
- data/lib/extensions/keyboard/ext/platform/iphone/impl/KeyboardFactorySingleton.m +16 -0
- data/lib/extensions/keyboard/ext/platform/iphone/impl/KeyboardSetup.m +9 -0
- data/lib/extensions/keyboard/ext/platform/iphone/impl/KeyboardSingleton.h +17 -0
- data/lib/extensions/keyboard/ext/platform/iphone/impl/KeyboardSingleton.m +23 -0
- data/lib/extensions/keyboard/ext/platform/iphone/impl/readme.txt +7 -0
- data/lib/extensions/keyboard/ext/platform/qt/Keyboard.pro +68 -0
- data/lib/extensions/keyboard/ext/platform/qt/Makefile +473 -0
- data/lib/extensions/keyboard/ext/platform/qt/Makefile.Release +408 -0
- data/lib/extensions/keyboard/ext/platform/qt/Rakefile +39 -0
- data/lib/extensions/keyboard/ext/platform/qt/src/Keyboard_impl.cpp +99 -0
- data/lib/extensions/keyboard/ext/platform/uwp/Keyboard.props +18 -0
- data/lib/extensions/keyboard/ext/platform/uwp/Keyboard.vcxproj +197 -0
- data/lib/extensions/keyboard/ext/platform/uwp/Keyboard.vcxproj.filters +50 -0
- data/lib/extensions/keyboard/ext/platform/uwp/KeyboardImpl.csproj +119 -0
- data/lib/extensions/keyboard/ext/platform/uwp/KeyboardImpl.props +8 -0
- data/lib/extensions/keyboard/ext/platform/uwp/KeyboardImpl.targets +7 -0
- data/lib/extensions/keyboard/ext/platform/uwp/KeyboardLib.props +18 -0
- data/lib/extensions/keyboard/ext/platform/uwp/KeyboardLib.vcxproj +197 -0
- data/lib/extensions/keyboard/ext/platform/uwp/KeyboardLib.vcxproj.filters +58 -0
- data/lib/extensions/keyboard/ext/platform/uwp/src/Keyboard_impl.cpp +76 -0
- data/lib/extensions/keyboard/ext/platform/uwp/src/Keyboard_impl.cs +69 -0
- data/lib/extensions/keyboard/ext/platform/uwp/src/Properties/AssemblyInfo.cs +37 -0
- data/lib/extensions/keyboard/ext/platform/wm/Keyboard.sln +52 -0
- data/lib/extensions/keyboard/ext/platform/wm/Keyboard.vcproj +714 -0
- data/lib/extensions/keyboard/ext/platform/wm/Keyboard.vsprops +15 -0
- data/lib/extensions/keyboard/ext/platform/wm/src/Keyboard_impl.cpp +77 -0
- data/lib/extensions/keyboard/ext.yml +15 -0
- data/lib/extensions/openssl/ext/Rakefile +2 -2
- data/lib/extensions/openssl/ext/android/Rakefile +18 -0
- data/lib/extensions/openssl/ext/build +4 -0
- data/lib/extensions/openssl/ext/build.bat +1 -1
- data/lib/extensions/openssl/ext/iphone/Rakefile +9 -62
- data/lib/extensions/openssl/ext/iphone/openssl.xcodeproj/project.pbxproj +4 -4
- data/lib/extensions/openssl/ext/linux/extconf.h +65 -0
- data/lib/extensions/openssl/ext/openssl.pro +10 -0
- data/lib/extensions/openssl/ext/openssl_missing.c +4 -2
- data/lib/extensions/openssl/ext/ossl.h +3 -0
- data/lib/extensions/openssl/ext/ossl_x509cert.c +1 -1
- data/lib/extensions/openssl.so/ext/Rakefile +1 -1
- data/lib/extensions/openssl.so/ext/android/aarch64/libopenssl.so.a +0 -0
- data/lib/extensions/openssl.so/ext/android/armeabi/libopenssl.so.a +0 -0
- data/lib/extensions/openssl.so/ext/android/x86/libopenssl.so.a +0 -0
- data/lib/extensions/openssl.so/ext/build +4 -0
- data/lib/extensions/openssl.so/ext/iphone/OpenSSl.SDK/howtobuild.txt +2 -0
- data/lib/extensions/openssl.so/ext/iphone/OpenSSl.SDK/libcrypto.a +0 -0
- data/lib/extensions/{fcm-push/ext/iphone/Frameworks/FirebaseAnalytics.framework/FirebaseAnalytics → openssl.so/ext/iphone/OpenSSl.SDK/libcrypto_sim.a} +0 -0
- data/lib/extensions/openssl.so/ext/iphone/OpenSSl.SDK/libssl.a +0 -0
- data/lib/extensions/openssl.so/ext/iphone/OpenSSl.SDK/libssl_sim.a +0 -0
- data/lib/extensions/openssl.so/ext/iphone/Rakefile +30 -54
- data/lib/extensions/openssl.so/ext/iphone/Release-iphoneos/libopenssl.so.a +0 -0
- data/lib/extensions/openssl.so/ext/iphone/Release-iphonesimulator/libopenssl.so.a +0 -0
- data/lib/extensions/openssl.so/ext/iphone/openssl.xcodeproj/project.pbxproj +116 -10
- data/lib/extensions/openssl.so/ext/sources/include/openssl/__DECC_INCLUDE_EPILOGUE.H +9 -3
- data/lib/extensions/openssl.so/ext/sources/include/openssl/__DECC_INCLUDE_PROLOGUE.H +10 -4
- data/lib/extensions/openssl.so/ext/sources/include/openssl/asn1.h +13 -226
- data/lib/extensions/openssl.so/ext/sources/include/openssl/asn1err.h +256 -0
- data/lib/extensions/openssl.so/ext/sources/include/openssl/asn1t.h +24 -8
- data/lib/extensions/openssl.so/ext/sources/include/openssl/async.h +2 -24
- data/lib/extensions/openssl.so/ext/sources/include/openssl/asyncerr.h +42 -0
- data/lib/extensions/openssl.so/ext/sources/include/openssl/bio.h +89 -139
- data/lib/extensions/openssl.so/ext/sources/include/openssl/bioerr.h +124 -0
- data/lib/extensions/openssl.so/ext/sources/include/openssl/bn.h +75 -111
- data/lib/extensions/openssl.so/ext/sources/include/openssl/bnerr.h +100 -0
- data/lib/extensions/openssl.so/ext/sources/include/openssl/buffer.h +2 -17
- data/lib/extensions/openssl.so/ext/sources/include/openssl/buffererr.h +34 -0
- data/lib/extensions/openssl.so/ext/sources/include/openssl/cms.h +6 -179
- data/lib/extensions/openssl.so/ext/sources/include/openssl/cmserr.h +202 -0
- data/lib/extensions/openssl.so/ext/sources/include/openssl/comp.h +2 -21
- data/lib/extensions/openssl.so/ext/sources/include/openssl/comperr.h +44 -0
- data/lib/extensions/openssl.so/ext/sources/include/openssl/conf.h +2 -51
- data/lib/extensions/openssl.so/ext/sources/include/openssl/conferr.h +76 -0
- data/lib/extensions/openssl.so/ext/sources/include/openssl/crypto.h +27 -49
- data/lib/extensions/openssl.so/ext/sources/include/openssl/cryptoerr.h +57 -0
- data/lib/extensions/openssl.so/ext/sources/include/openssl/ct.h +2 -61
- data/lib/extensions/openssl.so/ext/sources/include/openssl/cterr.h +80 -0
- data/lib/extensions/openssl.so/ext/sources/include/openssl/dh.h +33 -54
- data/lib/extensions/openssl.so/ext/sources/include/openssl/dherr.h +88 -0
- data/lib/extensions/openssl.so/ext/sources/include/openssl/dsa.h +21 -60
- data/lib/extensions/openssl.so/ext/sources/include/openssl/dsaerr.h +72 -0
- data/lib/extensions/openssl.so/ext/sources/include/openssl/dtls1.h +7 -8
- data/lib/extensions/openssl.so/ext/sources/include/openssl/e_os2.h +21 -19
- data/lib/extensions/openssl.so/ext/sources/include/openssl/ec.h +187 -284
- data/lib/extensions/openssl.so/ext/sources/include/openssl/ecerr.h +275 -0
- data/lib/extensions/openssl.so/ext/sources/include/openssl/engine.h +5 -94
- data/lib/extensions/openssl.so/ext/sources/include/openssl/engineerr.h +111 -0
- data/lib/extensions/openssl.so/ext/sources/include/openssl/err.h +19 -5
- data/lib/extensions/openssl.so/ext/sources/include/openssl/evp.h +250 -180
- data/lib/extensions/openssl.so/ext/sources/include/openssl/evperr.h +205 -0
- data/lib/extensions/openssl.so/ext/sources/include/openssl/hmac.h +4 -2
- data/lib/extensions/openssl.so/ext/sources/include/openssl/kdf.h +51 -29
- data/lib/extensions/openssl.so/ext/sources/include/openssl/kdferr.h +55 -0
- data/lib/extensions/openssl.so/ext/sources/include/openssl/lhash.h +43 -19
- data/lib/extensions/openssl.so/ext/sources/include/openssl/modes.h +11 -6
- data/lib/extensions/openssl.so/ext/sources/include/openssl/obj_mac.h +632 -11
- data/lib/extensions/openssl.so/ext/sources/include/openssl/objects.h +3 -925
- data/lib/extensions/openssl.so/ext/sources/include/openssl/objectserr.h +42 -0
- data/lib/extensions/openssl.so/ext/sources/include/openssl/ocsp.h +21 -65
- data/lib/extensions/openssl.so/ext/sources/include/openssl/ocsperr.h +78 -0
- data/lib/extensions/openssl.so/ext/sources/include/openssl/opensslconf.h +36 -10
- data/lib/extensions/openssl.so/ext/sources/include/openssl/opensslv.h +3 -7
- data/lib/extensions/openssl.so/ext/sources/include/openssl/ossl_typ.h +8 -1
- data/lib/extensions/openssl.so/ext/sources/include/openssl/pem.h +13 -136
- data/lib/extensions/openssl.so/ext/sources/include/openssl/pem2.h +4 -11
- data/lib/extensions/openssl.so/ext/sources/include/openssl/pemerr.h +103 -0
- data/lib/extensions/openssl.so/ext/sources/include/openssl/pkcs12.h +1 -60
- data/lib/extensions/openssl.so/ext/sources/include/openssl/pkcs12err.h +81 -0
- data/lib/extensions/openssl.so/ext/sources/include/openssl/pkcs7.h +1 -86
- data/lib/extensions/openssl.so/ext/sources/include/openssl/pkcs7err.h +103 -0
- data/lib/extensions/openssl.so/ext/sources/include/openssl/rand.h +22 -34
- data/lib/extensions/openssl.so/ext/sources/include/openssl/rand_drbg.h +130 -0
- data/lib/extensions/openssl.so/ext/sources/include/openssl/randerr.h +94 -0
- data/lib/extensions/openssl.so/ext/sources/include/openssl/rsa.h +96 -173
- data/lib/extensions/openssl.so/ext/sources/include/openssl/rsaerr.h +167 -0
- data/lib/extensions/openssl.so/ext/sources/include/openssl/safestack.h +66 -23
- data/lib/extensions/openssl.so/ext/sources/include/openssl/srp.h +5 -1
- data/lib/extensions/openssl.so/ext/sources/include/openssl/ssl.h +706 -828
- data/lib/extensions/openssl.so/ext/sources/include/openssl/ssl3.h +49 -20
- data/lib/extensions/openssl.so/ext/sources/include/openssl/sslerr.h +773 -0
- data/lib/extensions/openssl.so/ext/sources/include/openssl/stack.h +8 -3
- data/lib/extensions/openssl.so/ext/sources/include/openssl/store.h +266 -1
- data/lib/extensions/openssl.so/ext/sources/include/openssl/storeerr.h +91 -0
- data/lib/extensions/openssl.so/ext/sources/include/openssl/symhacks.h +1 -16
- data/lib/extensions/openssl.so/ext/sources/include/openssl/tls1.h +350 -85
- data/lib/extensions/openssl.so/ext/sources/include/openssl/ts.h +25 -109
- data/lib/extensions/openssl.so/ext/sources/include/openssl/tserr.h +132 -0
- data/lib/extensions/openssl.so/ext/sources/include/openssl/txt_db.h +2 -2
- data/lib/extensions/openssl.so/ext/sources/include/openssl/ui.h +56 -66
- data/lib/extensions/openssl.so/ext/sources/include/openssl/uierr.h +65 -0
- data/lib/extensions/openssl.so/ext/sources/include/openssl/x509.h +36 -112
- data/lib/extensions/openssl.so/ext/sources/include/openssl/x509_vfy.h +85 -1
- data/lib/extensions/openssl.so/ext/sources/include/openssl/x509err.h +130 -0
- data/lib/extensions/openssl.so/ext/sources/include/openssl/x509v3.h +72 -141
- data/lib/extensions/openssl.so/ext/sources/include/openssl/x509v3err.h +162 -0
- data/lib/extensions/openssl.so.src/ext/android/Rakefile +18 -0
- data/lib/extensions/openssl.so.src/ext/build +4 -0
- data/lib/extensions/rawsensors/ext/rawsensors/platform/iphone/Rakefile +9 -62
- data/lib/extensions/rawsensors/ext/rawsensors/platform/iphone/Rawsensors.xcodeproj/project.pbxproj +4 -4
- data/lib/extensions/serialport/ext/build.bat +1 -1
- data/lib/extensions/serialport/ext/serialport.pro +11 -11
- data/lib/extensions/videocapture/ext/videocapture/platform/iphone/Rakefile +9 -62
- data/lib/extensions/videocapture/ext/videocapture/platform/iphone/Videocapture.xcodeproj/project.pbxproj +4 -4
- data/lib/extensions/zlib/ext/Rakefile +2 -2
- data/lib/extensions/zlib/ext/build +4 -0
- data/lib/extensions/zlib/ext/build.bat +1 -1
- data/lib/extensions/zlib/ext/gzlib.c +1 -1
- data/lib/extensions/zlib/ext/gzread.c +2 -2
- data/lib/extensions/zlib/ext/gzwrite.c +3 -3
- data/lib/extensions/zlib/ext/iphone/Rakefile +9 -62
- data/lib/extensions/zlib/ext/iphone/zlib.xcodeproj/project.pbxproj +4 -4
- data/lib/extensions/zlib/ext/zlib.c +5 -1
- data/lib/extensions/zlib/ext/zlib.pro +24 -16
- data/lib/framework/autocomplete/Rho.rb +6 -2
- data/lib/framework/autocomplete/Rhodes.rb +1 -1
- data/lib/framework/rho/rho.rb +9 -0
- data/lib/framework/rho/rhoapplication.rb +4 -0
- data/lib/framework/rhodes.rb +2 -2
- data/lib/framework/set.rb +799 -0
- data/lib/framework/version.rb +1 -1
- data/lib/rhodes.rb +2 -2
- data/platform/android/Rhodes/jni/include/rhodes/RhoClassFactory.h +7 -3
- data/platform/android/Rhodes/jni/include/rhodes/SecurityTokenGenerator.h +30 -0
- data/platform/android/Rhodes/jni/include/rhodes/details/rhojava.inc +1 -0
- data/platform/android/Rhodes/jni/include/rhodes/sslimpl.h +94 -6
- data/platform/android/Rhodes/jni/include/rhodes.h +6 -0
- data/platform/android/Rhodes/jni/src/JNIRhoRuby.cpp +1 -1
- data/platform/android/Rhodes/jni/src/JNIRhoRubyCppWrapper.cpp +510 -0
- data/platform/android/Rhodes/jni/src/MethodResultJni.cpp +4 -0
- data/platform/android/Rhodes/jni/src/RhoClassFactory.cpp +36 -1
- data/platform/android/Rhodes/jni/src/SecurityTokenGenerator.cpp +60 -0
- data/platform/android/Rhodes/jni/src/fileapi.cpp +319 -12
- data/platform/android/Rhodes/jni/src/mapview.cpp +4 -0
- data/platform/android/Rhodes/jni/src/rhodes.cpp +1 -0
- data/platform/android/Rhodes/jni/src/rhodesapp.cpp +18 -0
- data/platform/android/Rhodes/jni/src/sslimpl.cpp +317 -3
- data/platform/android/Rhodes/res/drawable/ic_notification.png +0 -0
- data/platform/android/Rhodes/res/xml/network_security_config.xml +7 -0
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/BaseActivity.java +24 -1
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/LocalFileProvider.java +18 -1
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/RhoMain.java +8 -0
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/RhoRubyArrayObjects.java +33 -0
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/RhoRubyClassObject.java +20 -0
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/RhoRubyObject.java +115 -0
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/RhoRubySingleton.java +85 -0
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/RhoRubyTypes.java +15 -0
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/RhodesActivity.java +3 -3
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/RhodesService.java +264 -176
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/SecurityTokenGenerator.java +57 -0
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/alert/StatusNotification.java +1 -1
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/extmanager/RhoExtManagerImpl.java +1 -1
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/geolocation/GeoLocation.java +14 -14
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/geolocation/GeoLocationImpl.java +25 -10
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/mainview/SimpleMainView.java +9 -2
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality.java +10 -1
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality01.java +20 -0
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality11.java +22 -1
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality26.java +153 -0
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionalityManager.java +4 -1
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/socket/RhoSocketImpl.java +10 -2
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/socket/SSLImpl.java +292 -20
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/uri/LocalFileHandler.java +21 -18
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/webview/GoogleWebView.java +20 -1
- data/platform/android/Rhodes/src/com/rhomobile/rhodes/webview/RhoWebViewClient.java +57 -1
- data/platform/android/build/CMakeLists.txt.erb +3 -33
- data/platform/android/build/CMakeListsExts.txt.erb +26 -0
- data/platform/android/build/Rakefile +30 -1
- data/platform/android/build/RhodesSRC_build.files +8 -0
- data/platform/android/build/aapt2_helper.rb +291 -0
- data/platform/android/build/android.rake +836 -468
- data/platform/android/build/android_studio_project_generator.rb +82 -0
- data/platform/android/build/android_tools.rb +147 -29
- data/platform/android/build/androidcommon.rb +115 -70
- data/platform/android/build/apk_builder.rb +42 -0
- data/platform/android/build/build_tools_finder.rb +46 -0
- data/platform/android/build/config.yml +5 -0
- data/platform/android/build/dex_builder.rb +88 -0
- data/platform/android/build/hostplatform.rb +9 -0
- data/platform/android/build/libcurl_build.files +1 -1
- data/platform/android/build/librhocommon_build.files +11 -0
- data/platform/android/build/librhodes_build.files +2 -0
- data/platform/android/build/manifest_generator.rb +10 -2
- data/platform/android/build/maven_deps_extractor.rb +143 -27
- data/platform/android/build/ndkwrapper.rb +157 -35
- data/platform/android/build/pom.erb +2 -2
- data/platform/android/proguard/proguard-base-rules.pro +27 -4
- data/platform/iphone/Classes/AppManager/AppManager.m +205 -158
- data/platform/iphone/Classes/Camera/PickImageDelegate.h +2 -0
- data/platform/iphone/Classes/Camera/PickImageDelegate.m +108 -23
- data/platform/iphone/Classes/CocoaServer/CCocoaServer.h +27 -0
- data/platform/iphone/Classes/CocoaServer/CCocoaServer.m +107 -0
- data/platform/iphone/Classes/CocoaServer/RhoHTTPConnection.h +16 -0
- data/platform/iphone/Classes/CocoaServer/RhoHTTPConnection.m +226 -0
- data/platform/iphone/Classes/MapView/GoogleGeocoder.h +3 -3
- data/platform/iphone/Classes/RhoAlert.m +2 -2
- data/platform/iphone/Classes/RhoMainViewStubImpl.h +38 -0
- data/platform/iphone/Classes/RhoMainViewStubImpl.m +88 -0
- data/platform/iphone/Classes/RhoUIWebView.h +6 -1
- data/platform/iphone/Classes/RhoUIWebView.m +15 -7
- data/platform/iphone/Classes/RhoWKWebView.h +6 -3
- data/platform/iphone/Classes/RhoWKWebView.mm +406 -0
- data/platform/iphone/Classes/RhoWebView.h +7 -7
- data/platform/iphone/Classes/RhoWebViewFabrique.h +1 -1
- data/platform/iphone/Classes/RhoWebViewFabrique.m +33 -16
- data/platform/iphone/Classes/Rhodes.h +7 -2
- data/platform/iphone/Classes/Rhodes.m +108 -19
- data/platform/iphone/Classes/SimpleMainView.m +24 -15
- data/platform/iphone/Classes/URLProtocol/CRhoURLProtocol.h +32 -3
- data/platform/iphone/Classes/URLProtocol/CRhoURLProtocol.m +96 -64
- data/platform/iphone/Classes/URLProtocol/CRhoWKURLProtocol.h +22 -0
- data/platform/iphone/Classes/URLProtocol/CRhoWKURLProtocol.m +246 -0
- data/platform/iphone/Classes/WebView.m +14 -2
- data/platform/iphone/Classes/rho/net/IPhoneNetRequest.mm +1 -1
- data/platform/iphone/CocoaHTTPServer/Core/Categories/DDData.h +14 -0
- data/platform/iphone/CocoaHTTPServer/Core/Categories/DDData.m +158 -0
- data/platform/iphone/CocoaHTTPServer/Core/Categories/DDNumber.h +12 -0
- data/platform/iphone/CocoaHTTPServer/Core/Categories/DDNumber.m +88 -0
- data/platform/iphone/CocoaHTTPServer/Core/Categories/DDRange.h +56 -0
- data/platform/iphone/CocoaHTTPServer/Core/Categories/DDRange.m +104 -0
- data/platform/iphone/CocoaHTTPServer/Core/HTTPAuthenticationRequest.h +45 -0
- data/platform/iphone/CocoaHTTPServer/Core/HTTPAuthenticationRequest.m +195 -0
- data/platform/iphone/CocoaHTTPServer/Core/HTTPConnection.h +120 -0
- data/platform/iphone/CocoaHTTPServer/Core/HTTPConnection.m +2708 -0
- data/platform/iphone/CocoaHTTPServer/Core/HTTPLogging.h +136 -0
- data/platform/iphone/CocoaHTTPServer/Core/HTTPMessage.h +48 -0
- data/platform/iphone/CocoaHTTPServer/Core/HTTPMessage.m +113 -0
- data/platform/iphone/CocoaHTTPServer/Core/HTTPResponse.h +149 -0
- data/platform/iphone/CocoaHTTPServer/Core/HTTPServer.h +205 -0
- data/platform/iphone/CocoaHTTPServer/Core/HTTPServer.m +772 -0
- data/platform/iphone/CocoaHTTPServer/Core/Mime/MultipartFormDataParser.h +65 -0
- data/platform/iphone/CocoaHTTPServer/Core/Mime/MultipartFormDataParser.m +529 -0
- data/platform/iphone/CocoaHTTPServer/Core/Mime/MultipartMessageHeader.h +33 -0
- data/platform/iphone/CocoaHTTPServer/Core/Mime/MultipartMessageHeader.m +86 -0
- data/platform/iphone/CocoaHTTPServer/Core/Mime/MultipartMessageHeaderField.h +23 -0
- data/platform/iphone/CocoaHTTPServer/Core/Mime/MultipartMessageHeaderField.m +211 -0
- data/platform/iphone/CocoaHTTPServer/Core/Responses/HTTPAsyncFileResponse.h +75 -0
- data/platform/iphone/CocoaHTTPServer/Core/Responses/HTTPAsyncFileResponse.m +405 -0
- data/platform/iphone/CocoaHTTPServer/Core/Responses/HTTPDataResponse.h +13 -0
- data/platform/iphone/CocoaHTTPServer/Core/Responses/HTTPDataResponse.m +79 -0
- data/platform/iphone/CocoaHTTPServer/Core/Responses/HTTPDynamicFileResponse.h +52 -0
- data/platform/iphone/CocoaHTTPServer/Core/Responses/HTTPDynamicFileResponse.m +292 -0
- data/platform/iphone/CocoaHTTPServer/Core/Responses/HTTPErrorResponse.h +9 -0
- data/platform/iphone/CocoaHTTPServer/Core/Responses/HTTPErrorResponse.m +38 -0
- data/platform/iphone/CocoaHTTPServer/Core/Responses/HTTPFileResponse.h +25 -0
- data/platform/iphone/CocoaHTTPServer/Core/Responses/HTTPFileResponse.m +237 -0
- data/platform/iphone/CocoaHTTPServer/Core/Responses/HTTPRedirectResponse.h +12 -0
- data/platform/iphone/CocoaHTTPServer/Core/Responses/HTTPRedirectResponse.m +73 -0
- data/platform/iphone/CocoaHTTPServer/Core/WebSocket.h +105 -0
- data/platform/iphone/CocoaHTTPServer/Core/WebSocket.m +791 -0
- data/platform/iphone/CocoaHTTPServer/Extensions/WebDAV/DAVConnection.h +7 -0
- data/platform/iphone/CocoaHTTPServer/Extensions/WebDAV/DAVConnection.m +160 -0
- data/platform/iphone/CocoaHTTPServer/Extensions/WebDAV/DAVResponse.h +11 -0
- data/platform/iphone/CocoaHTTPServer/Extensions/WebDAV/DAVResponse.m +372 -0
- data/platform/iphone/CocoaHTTPServer/Extensions/WebDAV/DELETEResponse.h +7 -0
- data/platform/iphone/CocoaHTTPServer/Extensions/WebDAV/DELETEResponse.m +49 -0
- data/platform/iphone/CocoaHTTPServer/Extensions/WebDAV/PUTResponse.h +8 -0
- data/platform/iphone/CocoaHTTPServer/Extensions/WebDAV/PUTResponse.m +69 -0
- data/platform/iphone/CocoaHTTPServer/LICENSE.txt +18 -0
- data/platform/iphone/CocoaHTTPServer/Vendor/CocoaAsyncSocket/About.txt +4 -0
- data/platform/iphone/CocoaHTTPServer/Vendor/CocoaAsyncSocket/GCDAsyncSocket.h +1226 -0
- data/platform/iphone/CocoaHTTPServer/Vendor/CocoaAsyncSocket/GCDAsyncSocket.m +8528 -0
- data/platform/iphone/CocoaHTTPServer/Vendor/CocoaLumberjack/About.txt +33 -0
- data/platform/iphone/CocoaHTTPServer/Vendor/CocoaLumberjack/DDASLLogger.h +41 -0
- data/platform/iphone/CocoaHTTPServer/Vendor/CocoaLumberjack/DDASLLogger.m +99 -0
- data/platform/iphone/CocoaHTTPServer/Vendor/CocoaLumberjack/DDAbstractDatabaseLogger.h +102 -0
- data/platform/iphone/CocoaHTTPServer/Vendor/CocoaLumberjack/DDAbstractDatabaseLogger.m +727 -0
- data/platform/iphone/CocoaHTTPServer/Vendor/CocoaLumberjack/DDFileLogger.h +334 -0
- data/platform/iphone/CocoaHTTPServer/Vendor/CocoaLumberjack/DDFileLogger.m +1353 -0
- data/platform/iphone/CocoaHTTPServer/Vendor/CocoaLumberjack/DDLog.h +601 -0
- data/platform/iphone/CocoaHTTPServer/Vendor/CocoaLumberjack/DDLog.m +1083 -0
- data/platform/iphone/CocoaHTTPServer/Vendor/CocoaLumberjack/DDTTYLogger.h +167 -0
- data/platform/iphone/CocoaHTTPServer/Vendor/CocoaLumberjack/DDTTYLogger.m +1479 -0
- data/platform/iphone/CocoaHTTPServer/Vendor/CocoaLumberjack/Extensions/ContextFilterLogFormatter.h +65 -0
- data/platform/iphone/CocoaHTTPServer/Vendor/CocoaLumberjack/Extensions/ContextFilterLogFormatter.m +191 -0
- data/platform/iphone/CocoaHTTPServer/Vendor/CocoaLumberjack/Extensions/DispatchQueueLogFormatter.h +116 -0
- data/platform/iphone/CocoaHTTPServer/Vendor/CocoaLumberjack/Extensions/DispatchQueueLogFormatter.m +251 -0
- data/platform/iphone/CocoaHTTPServer/Vendor/CocoaLumberjack/Extensions/README.txt +7 -0
- data/platform/iphone/Default-568h@2x.png +0 -0
- data/platform/iphone/Default-667h@2x.png +0 -0
- data/platform/iphone/Default-736h@3x.png +0 -0
- data/platform/iphone/Default-812h@3x.png +0 -0
- data/platform/iphone/Default-896h@2x.png +0 -0
- data/platform/iphone/Default-896h@3x.png +0 -0
- data/platform/iphone/Default-Landscape-736h@3x.png +0 -0
- data/platform/iphone/Default-Landscape-812h@3x.png +0 -0
- data/platform/iphone/Default-Landscape-896h@2x.png +0 -0
- data/platform/iphone/Default-Landscape-896h@3x.png +0 -0
- data/platform/iphone/Default-Landscape.png +0 -0
- data/platform/iphone/Default-Landscape@2x.png +0 -0
- data/platform/iphone/Default-LandscapeLeft.png +0 -0
- data/platform/iphone/Default-LandscapeLeft@2x.png +0 -0
- data/platform/iphone/Default-LandscapeRight.png +0 -0
- data/platform/iphone/Default-LandscapeRight@2x.png +0 -0
- data/platform/iphone/Default-Portrait.png +0 -0
- data/platform/iphone/Default-Portrait@2x.png +0 -0
- data/platform/iphone/Default-PortraitUpsideDown.png +0 -0
- data/platform/iphone/Default-PortraitUpsideDown@2x.png +0 -0
- data/platform/iphone/Default.png +0 -0
- data/platform/iphone/Default@2x.png +0 -0
- data/platform/iphone/Entitlements.plist +1 -1
- data/platform/iphone/Framework/RhoApplication/RhoApplication.xcodeproj/project.pbxproj +401 -0
- data/platform/iphone/Framework/Rhodes/Rhodes/Info.plist +24 -0
- data/platform/iphone/Framework/Rhodes/Rhodes/Rhodes.h +21 -0
- data/platform/iphone/Framework/Rhodes/Rhodes/StubCode.m +15 -0
- data/platform/iphone/Framework/Rhodes/Rhodes.xcodeproj/project.pbxproj +1216 -0
- data/platform/iphone/Info.plist +1 -3
- data/platform/iphone/RhoAppBaseLib/RhoAppBaseLib.xcodeproj/project.pbxproj +878 -7
- data/platform/iphone/RhoLib/RhoLib.xcodeproj/project.pbxproj +470 -4
- data/platform/iphone/Rhodes.xcodeproj/project.pbxproj +55 -278
- data/platform/iphone/RhodesBaseDelegate.h +1 -1
- data/platform/iphone/curl/curl.xcodeproj/project.pbxproj +92 -6
- data/platform/iphone/rbuild/ApplicationPlist.erb +1 -1
- data/platform/iphone/rbuild/buildextension.rb +115 -0
- data/platform/iphone/rbuild/iphone.rake +883 -121
- data/platform/iphone/rbuild/iphonecommon.rb +15 -6
- data/platform/iphone/rhodes_stub.cpp +15 -0
- data/platform/iphone/rhodeslib/api/RhodesLib.h +28 -0
- data/platform/iphone/rhodeslib/impl/RhodesLib.m +52 -0
- data/platform/iphone/rhodesruby/api/IRefCountedObject.h +20 -0
- data/platform/iphone/rhodesruby/api/IRhoRuby.h +72 -0
- data/platform/iphone/rhodesruby/api/IRhoRubyArray.h +12 -0
- data/platform/iphone/rhodesruby/api/IRhoRubyBoolean.h +11 -0
- data/platform/iphone/rhodesruby/api/IRhoRubyFloat.h +10 -0
- data/platform/iphone/rhodesruby/api/IRhoRubyHash.h +15 -0
- data/platform/iphone/rhodesruby/api/IRhoRubyInteger.h +10 -0
- data/platform/iphone/rhodesruby/api/IRhoRubyMutableArray.h +9 -0
- data/platform/iphone/rhodesruby/api/IRhoRubyMutableBoolean.h +10 -0
- data/platform/iphone/rhodesruby/api/IRhoRubyMutableFloat.h +10 -0
- data/platform/iphone/rhodesruby/api/IRhoRubyMutableHash.h +10 -0
- data/platform/iphone/rhodesruby/api/IRhoRubyMutableInteger.h +10 -0
- data/platform/iphone/rhodesruby/api/IRhoRubyMutableString.h +10 -0
- data/platform/iphone/rhodesruby/api/IRhoRubyNativeCallback.h +9 -0
- data/platform/iphone/rhodesruby/api/IRhoRubyNil.h +10 -0
- data/platform/iphone/rhodesruby/api/IRhoRubyObject.h +37 -0
- data/platform/iphone/rhodesruby/api/IRhoRubyRunnable.h +8 -0
- data/platform/iphone/rhodesruby/api/IRhoRubyString.h +10 -0
- data/platform/iphone/rhodesruby/api/RhoRuby.h +26 -0
- data/platform/iphone/rhodesruby/api/RhoRubySingletone.h +14 -0
- data/platform/iphone/rhodesruby/impl/RhoRubyFabrique.h +10 -0
- data/platform/iphone/rhodesruby/impl/RhoRubyImpl.h +56 -0
- data/platform/iphone/rhodesruby/impl/RhoRubyImpl.mm +432 -0
- data/platform/iphone/rhodesruby/impl/RhoRubyMutableArrayImpl.h +24 -0
- data/platform/iphone/rhodesruby/impl/RhoRubyMutableArrayImpl.mm +43 -0
- data/platform/iphone/rhodesruby/impl/RhoRubyMutableBooleanImpl.h +23 -0
- data/platform/iphone/rhodesruby/impl/RhoRubyMutableBooleanImpl.mm +38 -0
- data/platform/iphone/rhodesruby/impl/RhoRubyMutableFloatImpl.h +23 -0
- data/platform/iphone/rhodesruby/impl/RhoRubyMutableFloatImpl.mm +35 -0
- data/platform/iphone/rhodesruby/impl/RhoRubyMutableHashImpl.h +24 -0
- data/platform/iphone/rhodesruby/impl/RhoRubyMutableHashImpl.mm +48 -0
- data/platform/iphone/rhodesruby/impl/RhoRubyMutableIntegerImpl.h +23 -0
- data/platform/iphone/rhodesruby/impl/RhoRubyMutableIntegerImpl.mm +35 -0
- data/platform/iphone/rhodesruby/impl/RhoRubyMutableStringImpl.h +23 -0
- data/platform/iphone/rhodesruby/impl/RhoRubyMutableStringImpl.mm +35 -0
- data/platform/iphone/rhodesruby/impl/RhoRubyNilImpl.h +22 -0
- data/platform/iphone/rhodesruby/impl/RhoRubyNilImpl.mm +11 -0
- data/platform/iphone/rhodesruby/impl/RhoRubyObjectImpl.h +31 -0
- data/platform/iphone/rhodesruby/impl/RhoRubyObjectImpl.mm +49 -0
- data/platform/iphone/rhodesruby/impl/RhoRubySingletone.m +19 -0
- data/platform/iphone/rhodesruby/impl/RubyServerResponceImpl.h +21 -0
- data/platform/iphone/rhodesruby/impl/RubyServerResponceImpl.mm +32 -0
- data/platform/iphone/rhoextlib/rhoextlib.xcodeproj/project.pbxproj +83 -3
- data/platform/iphone/rhorubylib/rhorubylib.xcodeproj/project.pbxproj +94 -3
- data/platform/iphone/rhorunner.xcodeproj/project.pbxproj +3 -3
- data/platform/iphone/rhosynclib/rhosynclib.xcodeproj/project.pbxproj +89 -3
- data/platform/linux/tasks/control.erb +8 -0
- data/platform/linux/tasks/getting sudo instruction.txt +8 -0
- data/platform/linux/tasks/install_dev_depes_alt.sh +9 -0
- data/platform/linux/tasks/install_dev_depes_astra.sh +7 -0
- data/platform/linux/tasks/install_dev_depes_redos.sh +10 -0
- data/platform/linux/tasks/install_dev_depes_rosa_r7.sh +15 -0
- data/platform/linux/tasks/install_dev_depes_rosa_x4.sh +21 -0
- data/platform/linux/tasks/install_dev_depes_ubuntu.sh +18 -0
- data/platform/linux/tasks/installation.txt +2 -0
- data/platform/linux/tasks/linter_exceptions.erb +2 -0
- data/platform/linux/tasks/linux.rake +498 -61
- data/platform/linux/tasks/rpm_spec.erb +33 -0
- data/platform/osx/bin/RhoSimulator/RhoSimulator.app.zip +0 -0
- data/platform/sailfish/build/coreapi.pro.erb +11 -12
- data/platform/sailfish/build/curl.pro.erb +12 -14
- data/platform/sailfish/build/harbour-SailfishRhodes.pro.erb +2 -2
- data/platform/sailfish/build/rho_build.cmd.erb +1 -0
- data/platform/sailfish/build/rho_clean.cmd.erb +1 -0
- data/platform/sailfish/build/rho_deploy.cmd.erb +1 -0
- data/platform/sailfish/build/rho_rpm.cmd.erb +1 -0
- data/platform/sailfish/build/rho_rpmvalidation.cmd.erb +1 -0
- data/platform/sailfish/build/rhodes.pro.erb +43 -38
- data/platform/sailfish/build/rholib.pro.erb +21 -57
- data/platform/sailfish/build/rubylib.pro.erb +25 -30
- data/platform/sailfish/build/sailfish.rake +56 -9
- data/platform/sailfish/build/sqlite3.pro.erb +9 -9
- data/platform/sailfish/build/syncengine.pro.erb +9 -16
- data/platform/sailfish/build/unzip.pro.erb +66 -0
- data/platform/sailfish/build/zlib.pro.erb +72 -0
- data/platform/shared/api_generator/Api.h +5 -0
- data/platform/shared/common/CMakeLists.txt.erb +2 -52
- data/platform/shared/common/IRhoClassFactory.h +56 -2
- data/platform/shared/common/ISecurityTokenGenerator.h +16 -0
- data/platform/shared/common/RhoDefs.h +0 -1
- data/platform/shared/common/RhoFile.cpp +11 -0
- data/platform/shared/common/RhoFile.h +2 -0
- data/platform/shared/common/RhoMath.h +14 -0
- data/platform/shared/common/RhoMutexLock.h +14 -1
- data/platform/shared/common/RhoSystem.h +1 -1
- data/platform/shared/common/RhoThread.cpp +25 -0
- data/platform/shared/common/RhodesApp.cpp +127 -13
- data/platform/shared/common/RhodesApp.h +29 -1
- data/platform/shared/common/RhodesAppBase.cpp +4 -2
- data/platform/shared/common/RhodesAppBase.h +5 -0
- data/platform/shared/common/iphone/RhoClassfactory.h +7 -1
- data/platform/shared/common/iphone/RhoCryptImpl.mm +21 -2
- data/platform/shared/common/map/BaseMapEngine.cpp +2 -2
- data/platform/shared/common/map/GeocodingMapEngine.cpp +1 -1
- data/platform/shared/common/map/GoogleMapEngine.cpp +1 -1
- data/platform/shared/common/map/OSMMapEngine.cpp +1 -1
- data/platform/shared/curl/CMakeLists.txt.erb +1 -94
- data/platform/shared/curl/lib/asyn-thread.c +2 -1
- data/platform/shared/curl/lib/curl_addrinfo.h +39 -0
- data/platform/shared/curl/lib/curl_config.h +30 -3
- data/platform/shared/curl/lib/curl_setup.h +4 -0
- data/platform/shared/curl/lib/multi.c +0 -1
- data/platform/shared/curl/lib/transfer.c +21 -2
- data/platform/shared/curl/lib/vtls/vtls.h +3 -0
- data/platform/shared/db/CMakeLists.txt.erb +1 -6
- data/platform/shared/db/DBAdapter.cpp +28 -14
- data/platform/shared/json/RJSONTokener.c +1 -8
- data/platform/shared/json/json_object.c +2 -2
- data/platform/shared/json/json_tokener.c +1 -1
- data/platform/shared/json.new/CMakeLists.txt.erb +1 -15
- data/platform/shared/json.new/JSONIterator.cpp +2 -2
- data/platform/shared/json.new/RJSONTokener.c +0 -7
- data/platform/shared/json.new/json_object.c +5 -5
- data/platform/shared/json.new/json_pointer.c +2 -2
- data/platform/shared/json.new/json_tokener.c +1 -1
- data/platform/shared/logging/CMakeLists.txt.erb +1 -5
- data/platform/shared/logging/RhoLogConf.cpp +82 -3
- data/platform/shared/net/CURLNetRequest.cpp +6 -7
- data/platform/shared/net/HttpServer.cpp +286 -4
- data/platform/shared/net/HttpServer.h +35 -0
- data/platform/shared/net/INetRequest.cpp +54 -0
- data/platform/shared/net/INetRequest.h +6 -0
- data/platform/shared/net/linux/SSLImpl.cpp +2 -1
- data/platform/shared/net/ssl.h +26 -0
- data/platform/shared/qt/RhoRubylib.pro +10 -0
- data/platform/shared/qt/RhoSimulator.pro +25 -13
- data/platform/shared/qt/RhoSimulator_dev.pro +30 -15
- data/platform/shared/qt/curl/curl.pro +27 -16
- data/platform/shared/qt/rhodes/iexecutable.h +1 -1
- data/platform/shared/qt/rhodes/impl/AlertImpl.cpp +13 -0
- data/platform/shared/qt/rhodes/impl/CameraImpl.cpp +6 -0
- data/platform/shared/qt/rhodes/impl/DateTimePickerImpl.cpp +4 -0
- data/platform/shared/qt/rhodes/impl/MainWindowImpl.cpp +36 -7
- data/platform/shared/qt/rhodes/impl/MainWindowImpl.h +12 -1
- data/platform/shared/qt/rhodes/impl/NativeTabbarImpl.cpp +21 -2
- data/platform/shared/qt/rhodes/impl/NativeTabbarImpl.h +1 -0
- data/platform/shared/qt/rhodes/impl/NativeToolbarImpl.cpp +10 -0
- data/platform/shared/qt/rhodes/impl/QtSystemImpl.cpp +55 -3
- data/platform/shared/qt/rhodes/impl/RhoClassFactoryImpl.h +12 -1
- data/platform/shared/qt/rhodes/impl/RhoThreadImpl.cpp +72 -8
- data/platform/shared/qt/rhodes/impl/RhoThreadImpl.h +79 -2
- data/platform/shared/qt/rhodes/impl/RhodesImpl.cpp +16 -6
- data/platform/shared/qt/rhodes/impl/SecurityTokenGeneratorImpl.cpp +37 -0
- data/platform/shared/qt/rhodes/impl/SecurityTokenGeneratorImpl.h +25 -0
- data/platform/shared/qt/rhodes/impl/SignatureImpl.cpp +2 -0
- data/platform/shared/qt/rhodes/impl/WebViewImpl.cpp +27 -0
- data/platform/shared/qt/rhodes/impl/notificationsound.cpp +16 -2
- data/platform/shared/qt/rhodes/impl/notificationsound.h +11 -1
- data/platform/shared/qt/rhodes/newVersion/QtMainWindow.cpp +50 -26
- data/platform/shared/qt/rhodes/newVersion/QtMainWindow.h +4 -1
- data/platform/shared/qt/rhodes/newVersion/{qtwebenginepage.cpp → QtWebEnginePage.cpp} +1 -1
- data/platform/shared/qt/rhodes/newVersion/{qtwebenginepage.h → QtWebEnginePage.h} +0 -0
- data/platform/shared/qt/rhodes/newVersion/{qtwebengineview.cpp → QtWebEngineView.cpp} +1 -1
- data/platform/shared/qt/rhodes/newVersion/{qtwebengineview.h → QtWebEngineView.h} +0 -0
- data/platform/shared/qt/rhodes/newVersion/WebUrlRequestInterceptor.cpp +17 -0
- data/platform/shared/qt/rhodes/newVersion/main.cpp +5 -6
- data/platform/shared/qt/rhodes/resources/rho.png +0 -0
- data/platform/shared/qt/rhodes/rhodes.pro +155 -85
- data/platform/shared/qt/rhodes/rhorubyVersion/rhodeslib.cpp +148 -0
- data/platform/shared/qt/rhodes/rhorubyVersion/rhodeslib.h +12 -0
- data/platform/shared/qt/rholib/rholib.pro +66 -30
- data/platform/shared/qt/rhoruby_win32_build.bat +19 -0
- data/platform/shared/qt/rhoruby_win32_build_debug.bat +19 -0
- data/platform/shared/qt/rhosimulator_win32_build.bat +1 -1
- data/platform/shared/qt/rhosimulator_win32_build_debug.bat +19 -0
- data/platform/shared/qt/rubylib/rubylib.pro +38 -34
- data/platform/shared/qt/sailfish/SailfishRhodes.pro +1 -1
- data/platform/shared/qt/sailfish/icons/172x172/harbour-sailfishrhodes.png +0 -0
- data/platform/shared/qt/sailfish/qml/pages/BarcodePage.qml +18 -48
- data/platform/shared/qt/sqlite3/sqlite3.pro +17 -10
- data/platform/shared/qt/syncengine/syncengine.pro +19 -15
- data/platform/shared/qt/unzip/unzip.pro +133 -0
- data/platform/shared/rhoruby/api/IArray.h +20 -0
- data/platform/shared/rhoruby/api/IBoolean.h +17 -0
- data/platform/shared/rhoruby/api/IFloat.h +17 -0
- data/platform/shared/rhoruby/api/IHash.h +23 -0
- data/platform/shared/rhoruby/api/IInteger.h +18 -0
- data/platform/shared/rhoruby/api/IMutableArray.h +18 -0
- data/platform/shared/rhoruby/api/IMutableBoolean.h +18 -0
- data/platform/shared/rhoruby/api/IMutableFloat.h +17 -0
- data/platform/shared/rhoruby/api/IMutableHash.h +18 -0
- data/platform/shared/rhoruby/api/IMutableInteger.h +17 -0
- data/platform/shared/rhoruby/api/IMutableString.h +17 -0
- data/platform/shared/rhoruby/api/INil.h +16 -0
- data/platform/shared/rhoruby/api/IObject.h +46 -0
- data/platform/shared/rhoruby/api/IRefCountedObject.h +20 -0
- data/platform/shared/rhoruby/api/IRhoRuby.h +78 -0
- data/platform/shared/rhoruby/api/IRunnable.h +17 -0
- data/platform/shared/rhoruby/api/IString.h +17 -0
- data/platform/shared/rhoruby/api/RhoRuby.h +29 -0
- data/platform/shared/rhoruby/api/RhoRubySingletone.h +19 -0
- data/platform/shared/rhoruby/api/SmartPointer.h +27 -0
- data/platform/shared/rhoruby/impl/MutableArrayImpl.cpp +54 -0
- data/platform/shared/rhoruby/impl/MutableArrayImpl.h +48 -0
- data/platform/shared/rhoruby/impl/MutableBooleanImpl.cpp +44 -0
- data/platform/shared/rhoruby/impl/MutableBooleanImpl.h +44 -0
- data/platform/shared/rhoruby/impl/MutableFloatImpl.cpp +41 -0
- data/platform/shared/rhoruby/impl/MutableFloatImpl.h +44 -0
- data/platform/shared/rhoruby/impl/MutableHashImpl.cpp +64 -0
- data/platform/shared/rhoruby/impl/MutableHashImpl.h +49 -0
- data/platform/shared/rhoruby/impl/MutableIntegerImpl.cpp +41 -0
- data/platform/shared/rhoruby/impl/MutableIntegerImpl.h +44 -0
- data/platform/shared/rhoruby/impl/MutableStringImpl.cpp +52 -0
- data/platform/shared/rhoruby/impl/MutableStringImpl.h +44 -0
- data/platform/shared/rhoruby/impl/NilImpl.cpp +23 -0
- data/platform/shared/rhoruby/impl/NilImpl.h +32 -0
- data/platform/shared/rhoruby/impl/ObjectImpl.cpp +77 -0
- data/platform/shared/rhoruby/impl/ObjectImpl.h +53 -0
- data/platform/shared/rhoruby/impl/RefCountedObjectImpl.cpp +28 -0
- data/platform/shared/rhoruby/impl/RefCountedObjectImpl.h +33 -0
- data/platform/shared/rhoruby/impl/RhoRubyImpl.cpp +804 -0
- data/platform/shared/rhoruby/impl/RhoRubyImpl.h +86 -0
- data/platform/shared/rhoruby/impl/RhoRubySingletone.cpp +20 -0
- data/platform/shared/rhoruby/impl/RubyServerResponceImpl.cpp +32 -0
- data/platform/shared/rhoruby/impl/RubyServerResponceImpl.h +21 -0
- data/platform/shared/ruby/CMakeLists.txt.erb +1 -129
- data/platform/shared/ruby/android/ruby/config.h +55 -3
- data/platform/shared/ruby/dln_find.c +1 -1
- data/platform/shared/ruby/error.c +2 -2
- data/platform/shared/ruby/ext/rho/rhoruby.c +88 -14
- data/platform/shared/ruby/ext/rho/rhoruby.h +4 -0
- data/platform/shared/ruby/ext/socket/addrinfo.h +2 -1
- data/platform/shared/ruby/ext/socket/ipsocket.c +3 -3
- data/platform/shared/ruby/file.c +3 -3
- data/platform/shared/ruby/io.c +46 -46
- data/platform/shared/ruby/linux/ruby/config.h +94 -34
- data/platform/shared/ruby/linux/ruby/config_linux.h +403 -0
- data/platform/shared/ruby/missing/langinfo.c +1 -1
- data/platform/shared/ruby/missing/memmove.c +4 -0
- data/platform/shared/ruby/osx/ruby/config.h +2 -0
- data/platform/shared/ruby/posixnames.h +2 -8
- data/platform/shared/ruby/process.c +7 -7
- data/platform/shared/ruby/ruby.c +10 -10
- data/platform/shared/ruby/sailfish/ruby/config.h +1 -1
- data/platform/shared/ruby/thread_pthread.c +1 -1
- data/platform/shared/ruby/time.c +2 -2
- data/platform/shared/ruby/uwp/win32/win32.c +12 -12
- data/platform/shared/ruby/win32/ruby/config.h +1 -1
- data/platform/shared/ruby/win32/win32.c +10 -3
- data/platform/shared/rubyext/NativeToolbarExt.h +1 -0
- data/platform/shared/sqlite/CMakeLists.txt.erb +1 -1
- data/platform/shared/sqlite/sqlite3.c +23 -0
- data/platform/shared/sync/CMakeLists.txt.erb +1 -1
- data/platform/shared/unzip/gzlib.cpp +1 -1
- data/platform/shared/unzip/gzwrite.cpp +3 -3
- data/platform/shared/unzip/unzip.cpp +3 -10
- data/platform/shared/unzip/zip.cpp +3 -8
- data/platform/uwp/rhodes/App.xaml.cs +9 -9
- data/platform/uwp/rhodes/rhodes_TemporaryKey.pfx +0 -0
- data/platform/uwp/rhoruntime/common/RhoClassFactory.h +7 -1
- data/platform/win32/RhoSimulator/Qt5Core.dll +0 -0
- data/platform/win32/RhoSimulator/Qt5Gui.dll +0 -0
- data/platform/win32/RhoSimulator/Qt5Multimedia.dll +0 -0
- data/platform/win32/RhoSimulator/Qt5Network.dll +0 -0
- data/platform/win32/RhoSimulator/Qt5Positioning.dll +0 -0
- data/platform/win32/RhoSimulator/Qt5PrintSupport.dll +0 -0
- data/platform/win32/RhoSimulator/Qt5Qml.dll +0 -0
- data/platform/win32/RhoSimulator/Qt5Quick.dll +0 -0
- data/platform/win32/RhoSimulator/Qt5QuickWidgets.dll +0 -0
- data/platform/win32/RhoSimulator/Qt5SerialPort.dll +0 -0
- data/platform/win32/RhoSimulator/Qt5Svg.dll +0 -0
- data/platform/win32/RhoSimulator/Qt5WebChannel.dll +0 -0
- data/platform/win32/RhoSimulator/Qt5WebEngine.dll +0 -0
- data/platform/win32/RhoSimulator/Qt5WebEngineCore.dll +0 -0
- data/platform/win32/RhoSimulator/Qt5WebEngineWidgets.dll +0 -0
- data/platform/win32/RhoSimulator/Qt5Widgets.dll +0 -0
- data/platform/win32/RhoSimulator/QtWebEngineProcess.exe +0 -0
- data/platform/win32/RhoSimulator/RhoSimulator.exe +0 -0
- data/platform/win32/RhoSimulator/audio/qtaudio_wasapi.dll +0 -0
- data/platform/win32/RhoSimulator/audio/qtaudio_windows.dll +0 -0
- data/platform/win32/RhoSimulator/bearer/qgenericbearer.dll +0 -0
- data/platform/win32/RhoSimulator/concrt140.dll +0 -0
- data/platform/win32/RhoSimulator/iconengines/qsvgicon.dll +0 -0
- data/platform/win32/RhoSimulator/imageformats/qgif.dll +0 -0
- data/platform/win32/RhoSimulator/imageformats/qicns.dll +0 -0
- data/platform/win32/RhoSimulator/imageformats/qico.dll +0 -0
- data/platform/win32/RhoSimulator/imageformats/qjpeg.dll +0 -0
- data/platform/win32/RhoSimulator/imageformats/qsvg.dll +0 -0
- data/platform/win32/RhoSimulator/imageformats/qtga.dll +0 -0
- data/platform/win32/RhoSimulator/imageformats/qtiff.dll +0 -0
- data/platform/win32/RhoSimulator/imageformats/qwbmp.dll +0 -0
- data/platform/win32/RhoSimulator/imageformats/qwebp.dll +0 -0
- data/platform/win32/RhoSimulator/libEGL.dll +0 -0
- data/platform/win32/RhoSimulator/libGLESV2.dll +0 -0
- data/platform/win32/RhoSimulator/mediaservice/dsengine.dll +0 -0
- data/platform/win32/RhoSimulator/mediaservice/qtmedia_audioengine.dll +0 -0
- data/platform/win32/RhoSimulator/mediaservice/wmfengine.dll +0 -0
- data/platform/win32/RhoSimulator/mfc140.dll +0 -0
- data/platform/win32/RhoSimulator/mfc140chs.dll +0 -0
- data/platform/win32/RhoSimulator/mfc140cht.dll +0 -0
- data/platform/win32/RhoSimulator/mfc140deu.dll +0 -0
- data/platform/win32/RhoSimulator/mfc140enu.dll +0 -0
- data/platform/win32/RhoSimulator/mfc140esn.dll +0 -0
- data/platform/win32/RhoSimulator/mfc140fra.dll +0 -0
- data/platform/win32/RhoSimulator/mfc140ita.dll +0 -0
- data/platform/win32/RhoSimulator/mfc140jpn.dll +0 -0
- data/platform/win32/RhoSimulator/mfc140kor.dll +0 -0
- data/platform/win32/RhoSimulator/mfc140rus.dll +0 -0
- data/platform/win32/RhoSimulator/mfc140u.dll +0 -0
- data/platform/win32/RhoSimulator/mfcm140.dll +0 -0
- data/platform/win32/RhoSimulator/mfcm140u.dll +0 -0
- data/platform/win32/RhoSimulator/msvcp140.dll +0 -0
- data/platform/win32/RhoSimulator/msvcp140_1.dll +0 -0
- data/platform/win32/RhoSimulator/msvcp140_2.dll +0 -0
- data/platform/win32/RhoSimulator/platforms/qwindows.dll +0 -0
- data/platform/win32/RhoSimulator/playlistformats/qtmultimedia_m3u.dll +0 -0
- data/platform/win32/RhoSimulator/position/qtposition_positionpoll.dll +0 -0
- data/platform/win32/RhoSimulator/position/qtposition_serialnmea.dll +0 -0
- data/platform/win32/RhoSimulator/position/qtposition_winrt.dll +0 -0
- data/platform/win32/RhoSimulator/printsupport/windowsprintersupport.dll +0 -0
- data/platform/win32/RhoSimulator/resources/icudtl.dat +0 -0
- data/platform/win32/RhoSimulator/resources/qtwebengine_devtools_resources.pak +0 -0
- data/platform/win32/RhoSimulator/resources/qtwebengine_resources.pak +0 -0
- data/platform/win32/RhoSimulator/resources/qtwebengine_resources_100p.pak +0 -0
- data/platform/win32/RhoSimulator/resources/qtwebengine_resources_200p.pak +0 -0
- data/platform/win32/RhoSimulator/styles/qwindowsvistastyle.dll +0 -0
- data/platform/win32/RhoSimulator/translations/qt_ca.qm +0 -0
- data/platform/win32/RhoSimulator/translations/qt_da.qm +0 -0
- data/platform/win32/RhoSimulator/translations/qt_de.qm +0 -0
- data/platform/win32/RhoSimulator/translations/qt_fi.qm +0 -0
- data/platform/win32/RhoSimulator/translations/qt_ru.qm +0 -0
- data/platform/win32/RhoSimulator/translations/qt_zh_TW.qm +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/am.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/ar.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/bg.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/bn.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/ca.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/cs.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/da.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/de.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/el.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/en-GB.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/en-US.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/es-419.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/es.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/et.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/fa.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/fi.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/fil.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/fr.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/gu.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/he.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/hi.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/hr.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/hu.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/id.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/it.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/ja.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/kn.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/ko.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/lt.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/lv.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/ml.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/mr.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/ms.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/nb.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/nl.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/pl.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/pt-BR.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/pt-PT.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/ro.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/ru.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/sk.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/sl.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/sr.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/sv.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/sw.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/ta.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/te.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/th.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/tr.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/uk.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/vi.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/zh-CN.pak +0 -0
- data/platform/win32/RhoSimulator/translations/qtwebengine_locales/zh-TW.pak +0 -0
- data/platform/win32/RhoSimulator/vcamp140.dll +0 -0
- data/platform/win32/RhoSimulator/vccorlib140.dll +0 -0
- data/platform/win32/RhoSimulator/vcomp140.dll +0 -0
- data/platform/win32/RhoSimulator/vcruntime140.dll +0 -0
- data/platform/win32/build/rhodes.nsi +184 -0
- data/platform/win32/build/win32.rake +876 -0
- data/platform/wm/build/wm.rake +17 -967
- data/platform/wm/rhodes/rho/common/ExtManager.cpp +30 -0
- data/platform/wm/rhodes/rho/common/RhoClassFactory.h +7 -1
- data/platform/wm/rhodes/rho/rubyext/SystemImpl.cpp +3 -0
- data/platform/wm/rubylib/rubylib.vcxproj +6 -0
- data/platform/wm/syncengine/syncengine.vcproj +24 -16
- data/platform/wp8/rhoruntime/common/RhoClassFactory.h +7 -1
- data/rakefile.rb +194 -101
- data/res/build-tools/RhoRuby.exe +0 -0
- data/res/build-tools/aapt2/linux/aapt2 +0 -0
- data/res/build-tools/aapt2/osx/aapt2 +0 -0
- data/res/build-tools/aapt2/windows/aapt2.exe +0 -0
- data/res/build-tools/bundletool.jar +0 -0
- data/res/build-tools/helpers/ext/android/build_common.rb +160 -0
- data/res/build-tools/iphonesim/build/Release/iphonesim_8 +29 -19
- data/res/build-tools/maven/LICENSE +18 -89
- data/res/build-tools/maven/NOTICE +1 -1
- data/res/build-tools/maven/README.txt +12 -12
- data/res/build-tools/maven/bin/m2.conf +2 -2
- data/res/build-tools/maven/bin/mvn +122 -125
- data/res/build-tools/maven/bin/mvn.cmd +205 -0
- data/res/build-tools/maven/bin/mvnDebug +10 -176
- data/res/build-tools/maven/bin/mvnDebug.cmd +33 -0
- data/res/build-tools/maven/bin/mvnyjp +9 -181
- data/res/build-tools/maven/boot/plexus-classworlds-2.6.0.jar +0 -0
- data/res/build-tools/maven/conf/logging/simplelogger.properties +8 -1
- data/res/build-tools/maven/conf/settings.xml +1 -1
- data/res/build-tools/maven/conf/toolchains.xml +103 -0
- data/res/build-tools/maven/lib/animal-sniffer-annotations-1.14.jar +0 -0
- data/res/build-tools/maven/lib/animal-sniffer-annotations.license +14 -0
- data/res/build-tools/maven/lib/checker-compat-qual-2.0.0.jar +0 -0
- data/res/build-tools/maven/lib/checker-compat-qual.license +14 -0
- data/res/build-tools/maven/lib/commons-cli-1.4.jar +0 -0
- data/res/build-tools/maven/lib/commons-io-2.5.jar +0 -0
- data/res/build-tools/maven/lib/commons-lang3-3.8.1.jar +0 -0
- data/res/build-tools/maven/lib/error_prone_annotations-2.1.3.jar +0 -0
- data/res/build-tools/maven/lib/guava-25.1-android.jar +0 -0
- data/res/build-tools/maven/lib/guice-4.2.1-no_aop.jar +0 -0
- data/res/build-tools/maven/lib/j2objc-annotations-1.1.jar +0 -0
- data/res/build-tools/maven/lib/jansi-1.17.1.jar +0 -0
- data/res/build-tools/maven/lib/jansi-native/README.txt +7 -0
- data/res/build-tools/maven/lib/jansi-native/freebsd32/libjansi.so +0 -0
- data/res/build-tools/maven/lib/jansi-native/freebsd64/libjansi.so +0 -0
- data/res/build-tools/maven/lib/jansi-native/linux32/libjansi.so +0 -0
- data/res/build-tools/maven/lib/jansi-native/linux64/libjansi.so +0 -0
- data/res/build-tools/maven/lib/jansi-native/osx/libjansi.jnilib +0 -0
- data/res/build-tools/maven/lib/jansi-native/windows32/jansi.dll +0 -0
- data/res/build-tools/maven/lib/jansi-native/windows64/jansi.dll +0 -0
- data/res/build-tools/maven/lib/jcl-over-slf4j-1.7.25.jar +0 -0
- data/res/build-tools/maven/lib/jcl-over-slf4j.license +14 -0
- data/res/build-tools/maven/lib/jsr250-api.license +383 -405
- data/res/build-tools/maven/lib/jsr305-3.0.2.jar +0 -0
- data/res/build-tools/maven/lib/maven-artifact-3.6.1.jar +0 -0
- data/res/build-tools/maven/lib/maven-builder-support-3.6.1.jar +0 -0
- data/res/build-tools/maven/lib/maven-compat-3.6.1.jar +0 -0
- data/res/build-tools/maven/lib/maven-core-3.6.1.jar +0 -0
- data/res/build-tools/maven/lib/maven-embedder-3.6.1.jar +0 -0
- data/res/build-tools/maven/lib/maven-model-3.6.1.jar +0 -0
- data/res/build-tools/maven/lib/maven-model-builder-3.6.1.jar +0 -0
- data/res/build-tools/maven/lib/maven-plugin-api-3.6.1.jar +0 -0
- data/res/build-tools/maven/lib/maven-repository-metadata-3.6.1.jar +0 -0
- data/res/build-tools/maven/lib/maven-resolver-api-1.3.3.jar +0 -0
- data/res/build-tools/maven/lib/maven-resolver-connector-basic-1.3.3.jar +0 -0
- data/res/build-tools/maven/lib/maven-resolver-impl-1.3.3.jar +0 -0
- data/res/build-tools/maven/lib/maven-resolver-provider-3.6.1.jar +0 -0
- data/res/build-tools/maven/lib/maven-resolver-spi-1.3.3.jar +0 -0
- data/res/build-tools/maven/lib/maven-resolver-transport-wagon-1.3.3.jar +0 -0
- data/res/build-tools/maven/lib/maven-resolver-util-1.3.3.jar +0 -0
- data/res/build-tools/maven/lib/maven-settings-3.6.1.jar +0 -0
- data/res/build-tools/maven/lib/maven-settings-builder-3.6.1.jar +0 -0
- data/res/build-tools/maven/lib/maven-shared-utils-3.2.1.jar +0 -0
- data/res/build-tools/maven/lib/maven-slf4j-provider-3.6.1.jar +0 -0
- data/res/build-tools/maven/lib/org.eclipse.sisu.inject-0.3.3.jar +0 -0
- data/res/build-tools/maven/lib/org.eclipse.sisu.inject.license +210 -261
- data/res/build-tools/maven/lib/org.eclipse.sisu.plexus-0.3.3.jar +0 -0
- data/res/build-tools/maven/lib/org.eclipse.sisu.plexus.license +210 -261
- data/res/build-tools/maven/lib/plexus-component-annotations-1.7.1.jar +0 -0
- data/res/build-tools/maven/lib/plexus-interpolation-1.25.jar +0 -0
- data/res/build-tools/maven/lib/plexus-sec-dispatcher-1.4.jar +0 -0
- data/res/build-tools/maven/lib/plexus-utils-3.2.0.jar +0 -0
- data/res/build-tools/maven/lib/slf4j-api-1.7.25.jar +0 -0
- data/res/build-tools/maven/lib/slf4j-api.license +10 -186
- data/res/build-tools/maven/lib/wagon-file-3.3.2.jar +0 -0
- data/res/build-tools/maven/lib/wagon-http-3.3.2-shaded.jar +0 -0
- data/res/build-tools/maven/lib/wagon-provider-api-3.3.2.jar +0 -0
- data/res/generators/rhogen.rb +163 -3
- data/res/generators/templates/api/platform/iphone/generated/stub_impl/MontanaSetup.m +2 -2
- data/res/generators/templates/application/AndroidManifest.erb +17 -6
- data/res/generators/templates/application/Podfile.example +43 -0
- data/res/generators/templates/application/app/Settings/index.erb +52 -55
- data/res/generators/templates/application/app/Settings/javascript_index.html +51 -46
- data/res/generators/templates/application/app/Settings/javascript_login.html +24 -17
- data/res/generators/templates/application/app/Settings/login.erb +5 -12
- data/res/generators/templates/application/app/Settings/reset.erb +10 -14
- data/res/generators/templates/application/app/index.erb +26 -30
- data/res/generators/templates/application/app/javascript_index.html +36 -30
- data/res/generators/templates/application/app/javascript_index.js +13 -4
- data/res/generators/templates/application/app/layout.erb +18 -4
- data/res/generators/templates/application/app/loading.png +0 -0
- data/res/generators/templates/application/build.yml +34 -2
- data/res/generators/templates/application/nodejs_build.yml +1 -1
- data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/css/bootstrap-grid.css +3899 -0
- data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/css/bootstrap-grid.css.map +1 -0
- data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/css/bootstrap-grid.min.css +7 -0
- data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/css/bootstrap-grid.min.css.map +1 -0
- data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/css/bootstrap-reboot.css +327 -0
- data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/css/bootstrap-reboot.css.map +1 -0
- data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/css/bootstrap-reboot.min.css +8 -0
- data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/css/bootstrap-reboot.min.css.map +1 -0
- data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/css/bootstrap.css +10224 -0
- data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/css/bootstrap.css.map +1 -0
- data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/css/bootstrap.min.css +7 -0
- data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/css/bootstrap.min.css.map +1 -0
- data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/js/bootstrap.bundle.js +7134 -0
- data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/js/bootstrap.bundle.js.map +1 -0
- data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/js/bootstrap.bundle.min.js +7 -0
- data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/js/bootstrap.bundle.min.js.map +1 -0
- data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/js/bootstrap.js +4521 -0
- data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/js/bootstrap.js.map +1 -0
- data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/js/bootstrap.min.js +7 -0
- data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/js/bootstrap.min.js.map +1 -0
- data/res/generators/templates/application/public/libs/feather/js/feather.js +2413 -0
- data/res/generators/templates/application/public/libs/feather/js/feather.min.js +13 -0
- data/res/generators/templates/application/public/libs/feather/svg/activity.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/airplay.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/alert-circle.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/alert-octagon.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/alert-triangle.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/align-center.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/align-justify.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/align-left.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/align-right.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/anchor.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/aperture.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/archive.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/arrow-down-circle.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/arrow-down-left.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/arrow-down-right.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/arrow-down.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/arrow-left-circle.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/arrow-left.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/arrow-right-circle.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/arrow-right.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/arrow-up-circle.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/arrow-up-left.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/arrow-up-right.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/arrow-up.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/at-sign.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/award.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/bar-chart-2.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/bar-chart.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/battery-charging.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/battery.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/bell-off.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/bell.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/bluetooth.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/bold.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/book-open.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/book.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/bookmark.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/box.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/briefcase.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/calendar.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/camera-off.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/camera.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/cast.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/check-circle.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/check-square.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/check.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/chevron-down.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/chevron-left.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/chevron-right.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/chevron-up.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/chevrons-down.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/chevrons-left.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/chevrons-right.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/chevrons-up.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/chrome.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/circle.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/clipboard.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/clock.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/cloud-drizzle.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/cloud-lightning.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/cloud-off.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/cloud-rain.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/cloud-snow.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/cloud.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/code.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/codepen.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/codesandbox.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/coffee.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/columns.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/command.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/compass.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/copy.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/corner-down-left.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/corner-down-right.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/corner-left-down.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/corner-left-up.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/corner-right-down.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/corner-right-up.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/corner-up-left.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/corner-up-right.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/cpu.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/credit-card.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/crop.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/crosshair.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/database.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/delete.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/disc.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/dollar-sign.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/download-cloud.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/download.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/droplet.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/edit-2.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/edit-3.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/edit.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/external-link.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/eye-off.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/eye.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/facebook.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/fast-forward.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/feather.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/figma.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/file-minus.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/file-plus.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/file-text.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/file.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/film.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/filter.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/flag.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/folder-minus.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/folder-plus.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/folder.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/framer.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/frown.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/gift.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/git-branch.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/git-commit.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/git-merge.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/git-pull-request.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/github.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/gitlab.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/globe.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/grid.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/hard-drive.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/hash.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/headphones.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/heart.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/help-circle.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/hexagon.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/home.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/image.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/inbox.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/info.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/instagram.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/italic.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/key.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/layers.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/layout.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/life-buoy.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/link-2.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/link.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/linkedin.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/list.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/loader.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/lock.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/log-in.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/log-out.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/mail.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/map-pin.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/map.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/maximize-2.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/maximize.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/meh.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/menu.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/message-circle.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/message-square.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/mic-off.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/mic.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/minimize-2.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/minimize.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/minus-circle.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/minus-square.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/minus.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/monitor.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/moon.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/more-horizontal.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/more-vertical.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/mouse-pointer.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/move.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/music.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/navigation-2.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/navigation.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/octagon.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/package.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/paperclip.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/pause-circle.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/pause.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/pen-tool.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/percent.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/phone-call.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/phone-forwarded.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/phone-incoming.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/phone-missed.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/phone-off.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/phone-outgoing.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/phone.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/pie-chart.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/play-circle.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/play.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/plus-circle.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/plus-square.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/plus.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/pocket.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/power.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/printer.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/radio.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/refresh-ccw.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/refresh-cw.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/repeat.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/rewind.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/rotate-ccw.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/rotate-cw.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/rss.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/save.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/scissors.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/search.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/send.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/server.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/settings.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/share-2.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/share.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/shield-off.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/shield.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/shopping-bag.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/shopping-cart.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/shuffle.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/sidebar.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/skip-back.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/skip-forward.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/slack.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/slash.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/sliders.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/smartphone.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/smile.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/speaker.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/square.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/star.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/stop-circle.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/sun.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/sunrise.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/sunset.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/tablet.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/tag.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/target.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/terminal.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/thermometer.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/thumbs-down.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/thumbs-up.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/toggle-left.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/toggle-right.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/tool.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/trash-2.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/trash.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/trello.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/trending-down.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/trending-up.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/triangle.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/truck.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/tv.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/twitch.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/twitter.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/type.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/umbrella.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/underline.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/unlock.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/upload-cloud.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/upload.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/user-check.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/user-minus.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/user-plus.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/user-x.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/user.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/users.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/video-off.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/video.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/voicemail.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/volume-1.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/volume-2.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/volume-x.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/volume.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/watch.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/wifi-off.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/wifi.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/wind.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/x-circle.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/x-octagon.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/x-square.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/x.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/youtube.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/zap-off.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/zap.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/zoom-in.svg +1 -0
- data/res/generators/templates/application/public/libs/feather/svg/zoom-out.svg +1 -0
- data/res/generators/templates/application/public/libs/jquery-3.5.1/jquery-3.5.1.js +10872 -0
- data/res/generators/templates/application/public/libs/jquery-3.5.1/jquery-3.5.1.min.js +2 -0
- data/res/generators/templates/application/public/libs/jquery-3.5.1/jquery-3.5.1.min.map +1 -0
- data/res/generators/templates/application/public/libs/popper-2.4.0/popper-2.4.0.js +1802 -0
- data/res/generators/templates/application/public/libs/popper-2.4.0/popper-2.4.0.min.js +6 -0
- data/res/generators/templates/application/resources/android/res/drawable/loading.png +0 -0
- data/res/generators/templates/application/resources/android/res/drawable-hdpi/loading.png +0 -0
- data/res/generators/templates/application/resources/android/res/drawable-ldpi/loading.png +0 -0
- data/res/generators/templates/application/resources/android/res/drawable-mdpi/loading.png +0 -0
- data/res/generators/templates/application/resources/android/res/drawable-xhdpi/loading.png +0 -0
- data/res/generators/templates/application/resources/android/res/drawable-xxhdpi/loading.png +0 -0
- data/res/generators/templates/application/resources/android/res/drawable-xxxhdpi/loading.png +0 -0
- data/res/generators/templates/application/resources/android/res/xml/network_security_config.xml +7 -0
- data/res/generators/templates/application/resources/ios/Default-568h@2x.png +0 -0
- data/res/generators/templates/application/resources/ios/Default-667h@2x.png +0 -0
- data/res/generators/templates/application/resources/ios/Default-736h@3x.png +0 -0
- data/res/generators/templates/application/resources/ios/Default-812h@3x.png +0 -0
- data/res/generators/templates/application/resources/ios/Default-896h@2x.png +0 -0
- data/res/generators/templates/application/resources/ios/Default-896h@3x.png +0 -0
- data/res/generators/templates/application/resources/ios/Default-Landscape-736h@3x.png +0 -0
- data/res/generators/templates/application/resources/ios/Default-Landscape-812h@3x.png +0 -0
- data/res/generators/templates/application/resources/ios/Default-Landscape-896h@2x.png +0 -0
- data/res/generators/templates/application/resources/ios/Default-Landscape-896h@3x.png +0 -0
- data/res/generators/templates/application/resources/ios/Default-Landscape.png +0 -0
- data/res/generators/templates/application/resources/ios/Default-Landscape@2x.png +0 -0
- data/res/generators/templates/application/resources/ios/Default-Portrait.png +0 -0
- data/res/generators/templates/application/resources/ios/Default-Portrait@2x.png +0 -0
- data/res/generators/templates/application/resources/ios/Default.png +0 -0
- data/res/generators/templates/application/resources/ios/Default@2x.png +0 -0
- data/res/generators/templates/application/rhoconfig.txt +25 -6
- data/res/generators/templates/application/rhoconfig_rubynode.txt +139 -0
- data/res/generators/templates/application/rubynodejs_build.yml +95 -0
- data/res/generators/templates/extension/extensions/montana/ext/build +5 -0
- data/res/generators/templates/extension/extensions/montana/ext/build.bat +1 -1
- data/res/generators/templates/extension/extensions/montana/ext/platform/android/Rakefile +1 -141
- data/res/generators/templates/extension/extensions/montana/ext/platform/iphone/Montana.xcodeproj/project.pbxproj +4 -4
- data/res/generators/templates/extension/extensions/montana/ext/platform/iphone/Podfile.example +16 -0
- data/res/generators/templates/extension/extensions/montana/ext/platform/iphone/Rakefile +9 -62
- data/res/generators/templates/extension/extensions/montana/ext/platform/qt/Montana.pro +26 -1
- data/res/generators/templates/iphone_project/Bremen8.xcodeproj/project.pbxproj +34 -55
- data/res/generators/templates/iphone_project/Media.xcassets/LaunchImage.launchimage/Default-568h@2x.png +0 -0
- data/res/generators/templates/iphone_project/Media.xcassets/LaunchImage.launchimage/Default-667h@2x.png +0 -0
- data/res/generators/templates/iphone_project/Media.xcassets/LaunchImage.launchimage/Default-736h@3x.png +0 -0
- data/res/generators/templates/iphone_project/Media.xcassets/LaunchImage.launchimage/Default-812h@3x.png +0 -0
- data/res/generators/templates/iphone_project/Media.xcassets/LaunchImage.launchimage/Default-896h@2x.png +0 -0
- data/res/generators/templates/iphone_project/Media.xcassets/LaunchImage.launchimage/Default-896h@3x.png +0 -0
- data/res/generators/templates/iphone_project/Media.xcassets/LaunchImage.launchimage/Default-Landscape-736h@3x.png +0 -0
- data/res/generators/templates/iphone_project/Media.xcassets/LaunchImage.launchimage/Default-Landscape-812h@3x.png +0 -0
- data/res/generators/templates/iphone_project/Media.xcassets/LaunchImage.launchimage/Default-Landscape-896h@2x.png +0 -0
- data/res/generators/templates/iphone_project/Media.xcassets/LaunchImage.launchimage/Default-Landscape-896h@3x.png +0 -0
- data/res/generators/templates/iphone_project/Media.xcassets/LaunchImage.launchimage/Default-Landscape.png +0 -0
- data/res/generators/templates/iphone_project/Media.xcassets/LaunchImage.launchimage/Default-Landscape@2x.png +0 -0
- data/res/generators/templates/iphone_project/Media.xcassets/LaunchImage.launchimage/Default-Portrait.png +0 -0
- data/res/generators/templates/iphone_project/Media.xcassets/LaunchImage.launchimage/Default-Portrait@2x.png +0 -0
- data/res/generators/templates/iphone_project/Media.xcassets/LaunchImage.launchimage/Default.png +0 -0
- data/res/generators/templates/iphone_project/Media.xcassets/LaunchImage.launchimage/Default@2x.png +0 -0
- data/res/generators/templates/iphone_project/Rhodes/Rhodes.xcodeproj/project.pbxproj +4 -4
- data/res/generators/templates/iphone_project/buildRhoBundle +2 -10
- data/res/generators/templates/iphone_project/root/Entitlements.plist +1 -1
- data/res/generators/templates/iphone_project/root/Info.plist +5 -3
- data/res/generators/templates/iphone_project/root/rhorunner_development.entitlements +1 -1
- data/res/generators/templates/iphone_project/root/rhorunner_production.entitlements +1 -1
- data/res/generators/templates/model/edit.erb +10 -12
- data/res/generators/templates/model/index.erb +27 -29
- data/res/generators/templates/model/javascript_edit.html +18 -17
- data/res/generators/templates/model/javascript_index.html +22 -21
- data/res/generators/templates/model/javascript_index.js +12 -7
- data/res/generators/templates/model/javascript_new.html +20 -16
- data/res/generators/templates/model/javascript_show.html +30 -32
- data/res/generators/templates/model/new.erb +8 -12
- data/res/generators/templates/model/show.erb +22 -28
- data/res/generators/templates/project/android_studio_project/app/CMakeLists.txt.erb +15 -2
- data/res/generators/templates/project/android_studio_project/app/build.gradle.erb +22 -19
- data/res/generators/templates/project/android_studio_project/build.gradle +3 -1
- data/res/generators/templates/spec/app/SpecRunner/controller.rb +1 -1
- data/res/generators/templates/spec/app/mspec.rb +1 -1
- data/res/generators/templates/spec/app/spec_runner.rb +23 -4
- data/res/prebuild_base_app/rhoconfig.txt +11 -8
- data/rhobuild.yml.example +7 -4
- data/rhodes-core.gemspec +1 -2
- data/rhodes.gemspec +20 -27
- data/rhomobile-debug.gemspec +0 -1
- data/version +1 -1
- metadata +766 -192
- data/extensions/emdk3-manager/ext/platform/android/ext_native.files +0 -0
- data/lib/commonAPI/mediacapture/ext/platform/android/adds/res/drawable/camera_btn.xml +0 -14
- data/lib/commonAPI/mediacapture/ext/platform/android/adds/res/layout/camera_land.xml +0 -23
- data/lib/commonAPI/mediacapture/ext/platform/android/adds/res/layout/camera_port.xml +0 -23
- data/lib/commonAPI/mediacapture/ext/platform/android/src/com/rho/camera/CameraActivity.java +0 -156
- data/lib/commonAPI/mediacapture/ext/platform/android/src/com/rho/camera/CameraEclair.java +0 -216
- data/lib/commonAPI/mediacapture/ext/platform/android/src/com/rho/camera/CameraGingerbread.java +0 -122
- data/lib/commonAPI/mediacapture/ext/platform/android/src/com/rho/camera/CameraPreview.java +0 -183
- data/lib/commonAPI/mediacapture/ext/platform/android/src/com/rho/camera/CameraSingletonEclair.java +0 -14
- data/lib/commonAPI/mediacapture/ext/platform/android/src/com/rho/camera/CameraSingletonGingerbread.java +0 -60
- data/lib/commonAPI/mediacapture/ext/platform/android/src/com/rho/camera/ICameraObject.java +0 -19
- data/lib/commonAPI/mediacapture/ext/platform/android/src/com/rho/camera/ICameraSingletonObject.java +0 -8
- data/lib/extensions/fcm-push/ext/android/src/com/rhomobile/rhodes/fcm/FCMTokenRefresherService.java +0 -27
- data/lib/extensions/fcm-push/ext/iphone/Firebase.h +0 -68
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseAnalytics.framework/Headers/FIRAnalytics+AppDelegate.h +0 -62
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseAnalytics.framework/Headers/FIRAnalytics.h +0 -115
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseAnalytics.framework/Headers/FIRAnalyticsConfiguration.h +0 -1
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseAnalytics.framework/Headers/FIRAnalyticsSwiftNameSupport.h +0 -13
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseAnalytics.framework/Headers/FIRApp.h +0 -1
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseAnalytics.framework/Headers/FIRConfiguration.h +0 -1
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseAnalytics.framework/Headers/FIREventNames.h +0 -389
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseAnalytics.framework/Headers/FIROptions.h +0 -1
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseAnalytics.framework/Headers/FIRParameterNames.h +0 -485
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseAnalytics.framework/Headers/FIRUserPropertyNames.h +0 -15
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseAnalytics.framework/Headers/FirebaseAnalytics.h +0 -10
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseAnalytics.framework/Modules/module.modulemap +0 -10
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseCore.framework/FirebaseCore +0 -0
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseCore.framework/Headers/FIRAnalyticsConfiguration.h +0 -52
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseCore.framework/Headers/FIRApp.h +0 -130
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseCore.framework/Headers/FIRConfiguration.h +0 -78
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseCore.framework/Headers/FIRLoggerLevel.h +0 -35
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseCore.framework/Headers/FIROptions.h +0 -133
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseCore.framework/Headers/FirebaseCore.h +0 -5
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseCore.framework/Modules/module.modulemap +0 -7
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseCoreDiagnostics.framework/FirebaseCoreDiagnostics +0 -0
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseCoreDiagnostics.framework/Modules/module.modulemap +0 -6
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseInstanceID.framework/FirebaseInstanceID +0 -0
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseInstanceID.framework/Headers/FIRInstanceID.h +0 -276
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseInstanceID.framework/Headers/FirebaseInstanceID.h +0 -1
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseInstanceID.framework/Modules/module.modulemap +0 -7
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseMessaging.framework/FirebaseMessaging +0 -0
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseMessaging.framework/Headers/FIRMessaging.h +0 -508
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseMessaging.framework/Headers/FirebaseMessaging.h +0 -1
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseMessaging.framework/Modules/module.modulemap +0 -8
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseNanoPB.framework/FirebaseNanoPB +0 -0
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/GoogleToolboxForMac.framework/GoogleToolboxForMac +0 -0
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/GoogleToolboxForMac.framework/Modules/module.modulemap +0 -5
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/Protobuf.framework/Modules/module.modulemap +0 -5
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/Protobuf.framework/Protobuf +0 -0
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/nanopb.framework/Modules/module.modulemap +0 -5
- data/lib/extensions/fcm-push/ext/iphone/Frameworks/nanopb.framework/nanopb +0 -0
- data/platform/android/Rhodes/AndroidManifest.xml.erb +0 -79
- data/platform/iphone/Classes/RhoWKWebView.m +0 -196
- data/platform/win32/RhoSimulator/position/qtposition_geoclue.dll +0 -0
- data/platform/win32/build/RhoRuntimeQt5-VS2008.nsi +0 -162
- data/platform/win32/build/RhoRuntimeQt5.5.0.0_VS2012.nsi +0 -178
- data/platform/win32/build/RhoRuntimeQt5.bat +0 -2
- data/platform/win32/build/RhoRuntimeQt5.ico +0 -0
- data/platform/win32/build/RhoRuntimeQt5.nsi +0 -165
- data/res/build-tools/maven/bin/mvn.bat +0 -197
- data/res/build-tools/maven/bin/mvnDebug.bat +0 -200
- data/res/build-tools/maven/boot/plexus-classworlds-2.5.2.jar +0 -0
- data/res/build-tools/maven/lib/aether-api-1.0.0.v20140518.jar +0 -0
- data/res/build-tools/maven/lib/aether-api.license +0 -261
- data/res/build-tools/maven/lib/aether-connector-basic-1.0.0.v20140518.jar +0 -0
- data/res/build-tools/maven/lib/aether-connector-basic.license +0 -261
- data/res/build-tools/maven/lib/aether-impl-1.0.0.v20140518.jar +0 -0
- data/res/build-tools/maven/lib/aether-impl.license +0 -261
- data/res/build-tools/maven/lib/aether-spi-1.0.0.v20140518.jar +0 -0
- data/res/build-tools/maven/lib/aether-spi.license +0 -261
- data/res/build-tools/maven/lib/aether-transport-wagon-1.0.0.v20140518.jar +0 -0
- data/res/build-tools/maven/lib/aether-transport-wagon.license +0 -261
- data/res/build-tools/maven/lib/aether-util-1.0.0.v20140518.jar +0 -0
- data/res/build-tools/maven/lib/aether-util.license +0 -261
- data/res/build-tools/maven/lib/cdi-api.license +0 -445
- data/res/build-tools/maven/lib/commons-cli-1.2.jar +0 -0
- data/res/build-tools/maven/lib/commons-io-2.2.jar +0 -0
- data/res/build-tools/maven/lib/commons-lang-2.6.jar +0 -0
- data/res/build-tools/maven/lib/guava-18.0.jar +0 -0
- data/res/build-tools/maven/lib/jsoup-1.7.2.jar +0 -0
- data/res/build-tools/maven/lib/jsoup.license +0 -66
- data/res/build-tools/maven/lib/maven-aether-provider-3.2.5.jar +0 -0
- data/res/build-tools/maven/lib/maven-aether-provider.license +0 -202
- data/res/build-tools/maven/lib/maven-artifact-3.2.5.jar +0 -0
- data/res/build-tools/maven/lib/maven-artifact.license +0 -202
- data/res/build-tools/maven/lib/maven-compat-3.2.5.jar +0 -0
- data/res/build-tools/maven/lib/maven-compat.license +0 -202
- data/res/build-tools/maven/lib/maven-core-3.2.5.jar +0 -0
- data/res/build-tools/maven/lib/maven-core.license +0 -202
- data/res/build-tools/maven/lib/maven-embedder-3.2.5.jar +0 -0
- data/res/build-tools/maven/lib/maven-embedder.license +0 -202
- data/res/build-tools/maven/lib/maven-model-3.2.5.jar +0 -0
- data/res/build-tools/maven/lib/maven-model-builder-3.2.5.jar +0 -0
- data/res/build-tools/maven/lib/maven-model-builder.license +0 -202
- data/res/build-tools/maven/lib/maven-model.license +0 -202
- data/res/build-tools/maven/lib/maven-plugin-api-3.2.5.jar +0 -0
- data/res/build-tools/maven/lib/maven-plugin-api.license +0 -202
- data/res/build-tools/maven/lib/maven-repository-metadata-3.2.5.jar +0 -0
- data/res/build-tools/maven/lib/maven-repository-metadata.license +0 -202
- data/res/build-tools/maven/lib/maven-settings-3.2.5.jar +0 -0
- data/res/build-tools/maven/lib/maven-settings-builder-3.2.5.jar +0 -0
- data/res/build-tools/maven/lib/maven-settings-builder.license +0 -202
- data/res/build-tools/maven/lib/maven-settings.license +0 -202
- data/res/build-tools/maven/lib/org.eclipse.sisu.inject-0.3.0.M1.jar +0 -0
- data/res/build-tools/maven/lib/org.eclipse.sisu.plexus-0.3.0.M1.jar +0 -0
- data/res/build-tools/maven/lib/plexus-cipher.license +0 -445
- data/res/build-tools/maven/lib/plexus-component-annotations-1.5.5.jar +0 -0
- data/res/build-tools/maven/lib/plexus-interpolation-1.21.jar +0 -0
- data/res/build-tools/maven/lib/plexus-sec-dispatcher-1.3.jar +0 -0
- data/res/build-tools/maven/lib/plexus-sec-dispatcher.license +0 -445
- data/res/build-tools/maven/lib/plexus-utils-3.0.20.jar +0 -0
- data/res/build-tools/maven/lib/sisu-guice-3.2.3-no_aop.jar +0 -0
- data/res/build-tools/maven/lib/slf4j-api-1.7.5.jar +0 -0
- data/res/build-tools/maven/lib/slf4j-simple-1.7.5.jar +0 -0
- data/res/build-tools/maven/lib/slf4j-simple.license +0 -190
- data/res/build-tools/maven/lib/wagon-file-2.8.jar +0 -0
- data/res/build-tools/maven/lib/wagon-file.license +0 -202
- data/res/build-tools/maven/lib/wagon-http-2.8-shaded.jar +0 -0
- data/res/build-tools/maven/lib/wagon-http-shared-2.8.jar +0 -0
- data/res/build-tools/maven/lib/wagon-http-shared.license +0 -202
- data/res/build-tools/maven/lib/wagon-http.license +0 -202
- data/res/build-tools/maven/lib/wagon-provider-api-2.8.jar +0 -0
- data/res/build-tools/maven/lib/wagon-provider-api.license +0 -202
- data/res/generators/templates/application/public/bootstrap-3.3.7/css/bootstrap-theme.css +0 -587
- data/res/generators/templates/application/public/bootstrap-3.3.7/css/bootstrap-theme.css.map +0 -1
- data/res/generators/templates/application/public/bootstrap-3.3.7/css/bootstrap-theme.min.css +0 -6
- data/res/generators/templates/application/public/bootstrap-3.3.7/css/bootstrap-theme.min.css.map +0 -1
- data/res/generators/templates/application/public/bootstrap-3.3.7/css/bootstrap.css +0 -6757
- data/res/generators/templates/application/public/bootstrap-3.3.7/css/bootstrap.css.map +0 -1
- data/res/generators/templates/application/public/bootstrap-3.3.7/css/bootstrap.min.css +0 -6
- data/res/generators/templates/application/public/bootstrap-3.3.7/css/bootstrap.min.css.map +0 -1
- data/res/generators/templates/application/public/bootstrap-3.3.7/fonts/glyphicons-halflings-regular.eot +0 -0
- data/res/generators/templates/application/public/bootstrap-3.3.7/fonts/glyphicons-halflings-regular.svg +0 -288
- data/res/generators/templates/application/public/bootstrap-3.3.7/fonts/glyphicons-halflings-regular.ttf +0 -0
- data/res/generators/templates/application/public/bootstrap-3.3.7/fonts/glyphicons-halflings-regular.woff +0 -0
- data/res/generators/templates/application/public/bootstrap-3.3.7/fonts/glyphicons-halflings-regular.woff2 +0 -0
- data/res/generators/templates/application/public/bootstrap-3.3.7/js/bootstrap.js +0 -2377
- data/res/generators/templates/application/public/bootstrap-3.3.7/js/bootstrap.min.js +0 -7
- data/res/generators/templates/application/public/bootstrap-3.3.7/js/npm.js +0 -13
- data/res/generators/templates/application/public/jquery/jquery-3.1.1.min.js +0 -4
- data/res/generators/templates/application/public/jquery/jquery-3.1.1.min.map +0 -1
- data/res/generators/templates/application/public/jquery/jquery-3.2.1.min.js +0 -4
@@ -26,20 +26,27 @@
|
|
26
26
|
|
27
27
|
require File.dirname(__FILE__) + '/androidcommon.rb'
|
28
28
|
require File.dirname(__FILE__) + '/android_tools.rb'
|
29
|
+
require File.dirname(__FILE__) + '/apk_builder.rb'
|
30
|
+
require File.dirname(__FILE__) + '/aapt2_helper.rb'
|
29
31
|
require File.dirname(__FILE__) + '/maven_deps_extractor.rb'
|
30
32
|
require File.dirname(__FILE__) + '/manifest_generator.rb'
|
31
33
|
require File.dirname(__FILE__) + '/eclipse_project_generator.rb'
|
32
34
|
require File.dirname(__FILE__) + '/android_studio_project_generator.rb'
|
33
35
|
require File.dirname(__FILE__) + '/android_debug.rb'
|
34
36
|
require File.dirname(__FILE__) + '/../../../lib/build/BuildConfig'
|
37
|
+
|
38
|
+
require_relative 'dex_builder'
|
39
|
+
require_relative 'build_tools_finder'
|
40
|
+
|
35
41
|
load File.dirname(__FILE__) + '/android-repack.rake'
|
36
42
|
require 'pathname'
|
37
43
|
require 'tempfile'
|
44
|
+
require 'zip'
|
38
45
|
|
39
46
|
include FileUtils
|
40
47
|
|
41
48
|
USE_OWN_STLPORT = false
|
42
|
-
|
49
|
+
$rhodes_as_lib = false
|
43
50
|
|
44
51
|
def get_market_version(apilevel)
|
45
52
|
AndroidTools.get_market_version(apilevel)
|
@@ -55,8 +62,8 @@ JAVA_PACKAGE_NAME = 'com.rhomobile.rhodes'
|
|
55
62
|
# For complete list of android API levels and its mapping to
|
56
63
|
# market names (such as "Android-1.5" etc) see output of
|
57
64
|
# command "android list targets"
|
58
|
-
ANDROID_MIN_SDK_LEVEL =
|
59
|
-
ANDROID_SDK_LEVEL =
|
65
|
+
ANDROID_MIN_SDK_LEVEL = 21 #21 is the minimum API that supports arm64
|
66
|
+
ANDROID_SDK_LEVEL = 31
|
60
67
|
|
61
68
|
ANDROID_PERMISSIONS = {
|
62
69
|
'audio' => ['RECORD_AUDIO', 'MODIFY_AUDIO_SETTINGS'],
|
@@ -80,9 +87,14 @@ ANDROID_CAPS_ALWAYS_ENABLED = ['network_state']
|
|
80
87
|
|
81
88
|
def set_app_icon_android
|
82
89
|
|
90
|
+
#if $rhodes_as_lib
|
91
|
+
# puts "Skip building copy resources (not needed for aar library)"
|
92
|
+
# return
|
93
|
+
#end
|
94
|
+
|
83
95
|
res_path = File.join($app_path, 'resources', 'android', 'res')
|
84
96
|
if File.exists? res_path
|
85
|
-
# NEW resource - just copy it to res folder
|
97
|
+
# NEW resource - just copy it to res folder -->>
|
86
98
|
puts "add resources from application'sresource folder [#{res_path}] to [#{$tmpdir}]"
|
87
99
|
cp_r res_path, $tmpdir
|
88
100
|
|
@@ -149,6 +161,10 @@ def set_app_name_android(newname)
|
|
149
161
|
rm_rf $appres
|
150
162
|
cp_r $rhores, $appres
|
151
163
|
|
164
|
+
buildToolsVerMajor = $build_tools_ver.split('.')[0].to_i
|
165
|
+
canRenderNetworkSecurityConfig = (($found_api_level.to_i >= 24) && (buildToolsVerMajor>=24))
|
166
|
+
rm_rf File.join($appres, 'xml', 'network_security_config.xml') if(!canRenderNetworkSecurityConfig)
|
167
|
+
|
152
168
|
rhostrings = File.join($rhores, "values", "strings.xml")
|
153
169
|
appstrings = File.join($appres, "values", "strings.xml")
|
154
170
|
doc = REXML::Document.new(File.new(rhostrings))
|
@@ -156,6 +172,17 @@ def set_app_name_android(newname)
|
|
156
172
|
File.open(appstrings, "w") { |f| doc.write f }
|
157
173
|
end
|
158
174
|
|
175
|
+
def set_app_name_android_post(newname)
|
176
|
+
puts "set_app_name_post"
|
177
|
+
|
178
|
+
Dir.glob(File.join($appres, '**', 'strings.xml')).each do |res|
|
179
|
+
doc = REXML::Document.new(File.new(res))
|
180
|
+
doc.elements["resources/string[@name='app_name']"].text = newname
|
181
|
+
rm_rf res
|
182
|
+
File.open(res, "w") { |f| doc.write f }
|
183
|
+
end
|
184
|
+
end
|
185
|
+
|
159
186
|
|
160
187
|
def get_boolean(arg)
|
161
188
|
arg == 'true' or arg == 'yes' or arg == 'enabled' or arg == 'enable' or arg == '1'
|
@@ -296,15 +323,34 @@ namespace 'project' do
|
|
296
323
|
project_app_path = File.join $app_path,'project','android_studio', 'app'
|
297
324
|
|
298
325
|
cmake_template_path = File.join( project_template_path, 'app', 'CMakeLists.txt.erb' )
|
326
|
+
|
299
327
|
cmake_template_ruby = File.join( $shareddir, 'ruby', 'CMakeLists.txt.erb')
|
328
|
+
source_template_ruby = File.join('platform', 'android', 'build', 'libruby_build.files')
|
329
|
+
|
300
330
|
cmake_template_curl = File.join( $shareddir, 'curl', 'CMakeLists.txt.erb')
|
331
|
+
source_template_curl = File.join('platform', 'android', 'build', 'libcurl_build.files')
|
332
|
+
|
301
333
|
cmake_template_db = File.join( $shareddir, 'db', 'CMakeLists.txt.erb')
|
334
|
+
source_template_db = File.join('platform', 'android', 'build', 'librhodb_build.files')
|
335
|
+
|
302
336
|
cmake_template_common = File.join( $shareddir, 'common', 'CMakeLists.txt.erb')
|
337
|
+
source_template_common = File.join('platform', 'android', 'build', 'librhocommon_build.files')
|
338
|
+
source_template_rhomain = File.join('platform', 'android', 'build', 'librhomain_build.files')
|
339
|
+
|
303
340
|
cmake_template_logging = File.join( $shareddir, 'logging', 'CMakeLists.txt.erb')
|
341
|
+
source_template_logging = File.join('platform', 'android', 'build', 'librholog_build.files')
|
342
|
+
|
304
343
|
cmake_template_sync = File.join( $shareddir, 'sync', 'CMakeLists.txt.erb')
|
344
|
+
source_template_sync = File.join('platform', 'android', 'build', 'librhosync_build.files')
|
345
|
+
|
305
346
|
cmake_template_json = File.join( $shareddir, 'json.new', 'CMakeLists.txt.erb')
|
347
|
+
source_template_json = File.join('platform', 'android', 'build', 'libjson_build.files')
|
348
|
+
|
306
349
|
cmake_template_sqlite = File.join( $shareddir, 'sqlite', 'CMakeLists.txt.erb')
|
350
|
+
source_template_sqlite = File.join('platform', 'android', 'build', 'libsqlite_build.files')
|
351
|
+
|
307
352
|
cmake_template_rhodes = File.join('platform', 'android', 'build', 'CMakeLists.txt.erb')
|
353
|
+
source_template_rhodes = File.join('platform', 'android', 'build', 'librhodes_build.files')
|
308
354
|
|
309
355
|
$abis = $app_config['android']['abis'] if $app_config["android"]
|
310
356
|
$abis = ['arm'] unless $abis
|
@@ -324,8 +370,12 @@ namespace 'project' do
|
|
324
370
|
extlibs.each do |lib|
|
325
371
|
|
326
372
|
extname = File.basename(lib).gsub('lib', '').gsub('.a', '')
|
327
|
-
|
328
|
-
|
373
|
+
#TODO support ${ANDROID_ABI} in cmake template
|
374
|
+
if extname == "openssl.so"
|
375
|
+
external_string += ("add_library(#{extname} STATIC IMPORTED GLOBAL)\n" +
|
376
|
+
"set_property(TARGET #{extname} PROPERTY IMPORTED_LOCATION #{lib})\n")
|
377
|
+
end
|
378
|
+
|
329
379
|
if extname == "coreapi"
|
330
380
|
next
|
331
381
|
end
|
@@ -333,9 +383,16 @@ namespace 'project' do
|
|
333
383
|
end
|
334
384
|
ext_libs += 'coreapi'
|
335
385
|
|
336
|
-
|
337
|
-
|
338
|
-
|
386
|
+
extensions_deps = ''
|
387
|
+
$ext_android_build_scripts.each do |ext, builddata|
|
388
|
+
ext_native_files = File.join(builddata[2], 'ext', 'platform', 'android', 'ext_native.files')
|
389
|
+
ext_native_files2 = File.join(builddata[0], 'ext_native.files')
|
390
|
+
ext_native_final = (File.exists? ext_native_files) ? ext_native_files : ext_native_files2
|
391
|
+
if(File.exists? ext_native_final)
|
392
|
+
mkdir_p File.join(project_app_path, ext)
|
393
|
+
extensions_deps += "add_subdirectory(./#{ext})\n"
|
394
|
+
end
|
395
|
+
end
|
339
396
|
|
340
397
|
rhodes_path = File.absolute_path '.'
|
341
398
|
|
@@ -350,6 +407,7 @@ namespace 'project' do
|
|
350
407
|
generator.externalDeps = external_string
|
351
408
|
generator.extLibs = ext_libs
|
352
409
|
generator.targetArch = studio_realabi
|
410
|
+
generator.extensionsDeps = extensions_deps
|
353
411
|
|
354
412
|
generator.compileSdkVersion = $found_api_level
|
355
413
|
generator.versionName = $app_config["version"]
|
@@ -377,17 +435,35 @@ namespace 'project' do
|
|
377
435
|
cmake_path_rholog = File.join( project_path, 'app', 'rholog', 'CMakeLists.txt')
|
378
436
|
cmake_path_rhodes = File.join( project_path, 'app', 'rhodes', 'CMakeLists.txt')
|
379
437
|
|
380
|
-
File.open( app_gradle_path, 'w' ) { |f| f.write generator.render_app_gradle( app_gradle_template ) }
|
381
438
|
File.open( cmake_path_main, 'w' ) { |f| f.write generator.render_app_gradle( cmake_template_path ) }
|
382
|
-
File.open( cmake_path_ruby, 'w' ) { |f| f.write generator.
|
383
|
-
File.open( cmake_path_curl, 'w' ) { |f| f.write generator.
|
384
|
-
File.open( cmake_path_rhodb, 'w' ) { |f| f.write generator.
|
385
|
-
File.open( cmake_path_rhocommon, 'w' ) { |f| f.write generator.
|
386
|
-
File.open( cmake_path_rhosync, 'w' ) { |f| f.write generator.
|
387
|
-
File.open( cmake_path_sqlite, 'w' ) { |f| f.write generator.
|
388
|
-
File.open( cmake_path_json, 'w' ) { |f| f.write generator.
|
389
|
-
File.open( cmake_path_rholog, 'w' ) { |f| f.write generator.
|
390
|
-
File.open( cmake_path_rhodes, 'w' ) { |f| f.write generator.
|
439
|
+
File.open( cmake_path_ruby, 'w' ) { |f| f.write generator.render_app_gradle_ex( cmake_template_ruby, source_template_ruby ) }
|
440
|
+
File.open( cmake_path_curl, 'w' ) { |f| f.write generator.render_app_gradle_ex( cmake_template_curl, source_template_curl ) }
|
441
|
+
File.open( cmake_path_rhodb, 'w' ) { |f| f.write generator.render_app_gradle_ex( cmake_template_db, source_template_db ) }
|
442
|
+
File.open( cmake_path_rhocommon, 'w' ) { |f| f.write generator.render_app_gradle_ex2( cmake_template_common, source_template_common, source_template_rhomain ) }
|
443
|
+
File.open( cmake_path_rhosync, 'w' ) { |f| f.write generator.render_app_gradle_ex( cmake_template_sync, source_template_sync ) }
|
444
|
+
File.open( cmake_path_sqlite, 'w' ) { |f| f.write generator.render_app_gradle_ex( cmake_template_sqlite, source_template_sqlite ) }
|
445
|
+
File.open( cmake_path_json, 'w' ) { |f| f.write generator.render_app_gradle_ex( cmake_template_json, source_template_json ) }
|
446
|
+
File.open( cmake_path_rholog, 'w' ) { |f| f.write generator.render_app_gradle_ex( cmake_template_logging, source_template_logging ) }
|
447
|
+
File.open( cmake_path_rhodes, 'w' ) { |f| f.write generator.render_app_gradle_ex( cmake_template_rhodes, source_template_rhodes) }
|
448
|
+
|
449
|
+
cmake_template_extension = File.join('platform', 'android', 'build', 'CMakeListsExts.txt.erb')
|
450
|
+
$ext_android_build_scripts.each do |ext, builddata|
|
451
|
+
ext_native_files = File.join(builddata[2], 'ext', 'platform', 'android', 'ext_native.files')
|
452
|
+
ext_native_files2 = File.join(builddata[0], 'ext_native.files')
|
453
|
+
ext_native_final = (File.exists? ext_native_files) ? ext_native_files : ext_native_files2
|
454
|
+
if(File.exists? ext_native_final)
|
455
|
+
cmake_path_ext = File.join( project_path, 'app', ext, 'CMakeLists.txt')
|
456
|
+
generator.extdir = builddata[2]
|
457
|
+
generator.extName = ext
|
458
|
+
File.open( cmake_path_ext, 'w' ) { |f| f.write generator.render_cmake_extension( cmake_template_extension, ext_native_final ) }
|
459
|
+
end
|
460
|
+
end
|
461
|
+
|
462
|
+
$ext_android_additional_sources.each do |extpath, list|
|
463
|
+
|
464
|
+
end
|
465
|
+
File.open( app_gradle_path, 'w' ) { |f| f.write generator.render_app_gradle( app_gradle_template ) }
|
466
|
+
|
391
467
|
|
392
468
|
cp main_gradle_script, project_path
|
393
469
|
cp gradle_properties, project_path
|
@@ -443,7 +519,7 @@ def setup_ext_env( extpath, extname )
|
|
443
519
|
env["RHO_APP_DIR"] = $app_path
|
444
520
|
env["ANDROID_SDK"] = $androidsdkpath
|
445
521
|
env["ANDROID_NDK"] = $androidndkpath
|
446
|
-
env["ANDROID_API_LEVEL"] = $
|
522
|
+
env["ANDROID_API_LEVEL"] = $min_sdk_level.to_s
|
447
523
|
env["RHO_ROOT"] = $startdir
|
448
524
|
env["BUILD_DIR"] ||= $startdir + "/platform/android/build"
|
449
525
|
env["RHO_INC"] = $appincdir
|
@@ -461,6 +537,70 @@ def setup_ext_env( extpath, extname )
|
|
461
537
|
env
|
462
538
|
end
|
463
539
|
|
540
|
+
def get_android_major_minor(version)
|
541
|
+
major, minor, patch = version.split('.').map { |z| z.to_i }
|
542
|
+
major = 0 if major.nil?
|
543
|
+
minor = 0 if minor.nil?
|
544
|
+
patch = 0 if patch.nil?
|
545
|
+
|
546
|
+
$logger.debug( "Splitting version #{version}, result is: #{major}.#{minor}.#{patch}" )
|
547
|
+
|
548
|
+
return major,minor,patch
|
549
|
+
end
|
550
|
+
|
551
|
+
def get_case_insensetive_property(property)
|
552
|
+
$app_config["android"].each do |x|
|
553
|
+
if (x[0].downcase == property.downcase)
|
554
|
+
return x[1]
|
555
|
+
end
|
556
|
+
end
|
557
|
+
return nil
|
558
|
+
end
|
559
|
+
|
560
|
+
def select_aapt2
|
561
|
+
|
562
|
+
platform_dir = ''
|
563
|
+
|
564
|
+
if OS.windows?
|
565
|
+
platform_dir = 'windows'
|
566
|
+
elsif OS.mac?
|
567
|
+
platform_dir = 'osx'
|
568
|
+
elsif OS.linux?
|
569
|
+
platform_dir = 'linux'
|
570
|
+
else
|
571
|
+
raise "unknown host OS"
|
572
|
+
end
|
573
|
+
|
574
|
+
File.join($startdir, "res", "build-tools", "aapt2", platform_dir , 'aapt2'+$exe_ext)
|
575
|
+
end
|
576
|
+
|
577
|
+
|
578
|
+
def init_aapt2_helper
|
579
|
+
helper = Aapt2Helper.instance
|
580
|
+
|
581
|
+
helper.logger = $logger
|
582
|
+
helper.res_dir = $appres
|
583
|
+
helper.output_path = $targetdir
|
584
|
+
helper.dex_path = File.join( $bindir, 'classes.dex' )
|
585
|
+
helper.apk_path = File.join( $bindir, 'rhodes.ap_')
|
586
|
+
#builder.res_dirs << AndroidTools::MavenDepsExtractor.instance.res_dirs
|
587
|
+
|
588
|
+
helper.build_dir = $tmpdir
|
589
|
+
helper.androidjar = $androidjar
|
590
|
+
helper.manifest = $appmanifest
|
591
|
+
|
592
|
+
helper.aapt2 = select_aapt2
|
593
|
+
helper.bundletool = $bundletool
|
594
|
+
helper.javabin = File.join( $java, 'java' + $exe_ext )
|
595
|
+
helper.rjava_dir = $app_rjava_dir
|
596
|
+
helper.maven_deps = AndroidTools::MavenDepsExtractor.instance
|
597
|
+
helper.assets_dir = $appassets
|
598
|
+
|
599
|
+
helper.no_compress_exts = $no_compression
|
600
|
+
|
601
|
+
helper.init
|
602
|
+
end
|
603
|
+
|
464
604
|
namespace "config" do
|
465
605
|
task :set_android_platform do
|
466
606
|
$current_platform = "android"
|
@@ -500,15 +640,20 @@ namespace "config" do
|
|
500
640
|
end
|
501
641
|
end
|
502
642
|
|
503
|
-
$min_sdk_level =
|
504
|
-
$min_sdk_level =
|
643
|
+
$min_sdk_level = get_case_insensetive_property("minSDK") unless $app_config["android"].nil?
|
644
|
+
$min_sdk_level = get_case_insensetive_property("minSDK") if $min_sdk_level.nil? and not $config["android"].nil?
|
645
|
+
$min_sdk_level = get_case_insensetive_property("minSdkVer") if $min_sdk_level.nil?
|
505
646
|
$min_sdk_level = $min_sdk_level.to_i unless $min_sdk_level.nil?
|
506
647
|
$min_sdk_level = ANDROID_MIN_SDK_LEVEL if $min_sdk_level.nil?
|
507
648
|
|
508
|
-
|
509
|
-
$
|
510
|
-
|
649
|
+
$build_bundle = false
|
650
|
+
$build_bundle = get_case_insensetive_property("build_bundle").to_i == 1 unless $app_config["android"].nil?
|
651
|
+
|
652
|
+
$target_sdk_level = get_case_insensetive_property("targetSdk") unless $app_config["android"].nil?
|
653
|
+
$target_sdk_level = get_case_insensetive_property("targetSdk") if $target_sdk_level.nil? and not $config["android"].nil?
|
654
|
+
$target_sdk_level = get_case_insensetive_property("targetSdkVer") if $target_sdk_level.nil?
|
511
655
|
$target_sdk_level = $target_sdk_level.to_i unless $target_sdk_level.nil?
|
656
|
+
|
512
657
|
$target_sdk_level = ANDROID_SDK_LEVEL if $target_sdk_level.nil?
|
513
658
|
|
514
659
|
$max_sdk_level = $app_config["android"]["maxSDK"] unless $app_config["android"].nil?
|
@@ -527,10 +672,23 @@ namespace "config" do
|
|
527
672
|
puts AndroidTools.get_installed_market_versions
|
528
673
|
|
529
674
|
$found_api_level = android_api_levels.last
|
675
|
+
$major_version = 0
|
676
|
+
$minor_version = 0
|
677
|
+
$patch_version = 0
|
530
678
|
|
531
679
|
#If user has mentioned version under android, then select that particular api level.
|
532
680
|
if $app_config["android"]["version"]
|
533
681
|
apilevel = AndroidTools.get_api_level $app_config["android"]["version"]
|
682
|
+
version = $app_config["android"]["version"]
|
683
|
+
$major_version, $minor_version, $patch_version = get_android_major_minor(version)
|
684
|
+
|
685
|
+
market_version = AndroidTools.get_market_version($target_sdk_level)
|
686
|
+
if market_version.nil?
|
687
|
+
apilevel = android_api_levels.last
|
688
|
+
else
|
689
|
+
apilevel = $target_sdk_level
|
690
|
+
end
|
691
|
+
|
534
692
|
if(!apilevel)
|
535
693
|
apilevel = AndroidTools.get_api_level ($app_config["android"]["version"] + ".0")
|
536
694
|
end
|
@@ -544,9 +702,13 @@ namespace "config" do
|
|
544
702
|
else
|
545
703
|
puts "No Android platform found of version #{$app_config['android']['version']}. Picking the latest one Android #{AndroidTools.get_market_version $found_api_level} available in machine"
|
546
704
|
end
|
547
|
-
|
705
|
+
else
|
706
|
+
$major_version, $minor_version, $patch_version =
|
707
|
+
get_android_major_minor( AndroidTools.get_market_version($found_api_level) )
|
708
|
+
end
|
548
709
|
end
|
549
710
|
|
711
|
+
$logger.info("Set up build API Level: #{$found_api_level}, version: #{$major_version}.#{$minor_version}")
|
550
712
|
|
551
713
|
$gapikey = $app_config["android"]["apikey"] unless $app_config["android"].nil?
|
552
714
|
$gapikey = $config["android"]["apikey"] if $gapikey.nil? and not $config["android"].nil?
|
@@ -571,7 +733,7 @@ namespace "config" do
|
|
571
733
|
puts "Custom config.xml path: #{$config_xml}"
|
572
734
|
end
|
573
735
|
|
574
|
-
|
736
|
+
$logger.debug "Use Google addon API (1): #{$use_google_addon_api}"
|
575
737
|
|
576
738
|
$uri_scheme = $app_config["android"]["URIScheme"] unless $app_config["android"].nil?
|
577
739
|
$uri_scheme = "http" if $uri_scheme.nil?
|
@@ -592,12 +754,14 @@ namespace "config" do
|
|
592
754
|
$srcdir = File.join $tmpdir,'assets' #File.join($bindir, "RhoBundle")
|
593
755
|
|
594
756
|
$rhomanifesterb = File.join($app_path, $app_config['android']['manifest_template']) unless $app_config["android"].nil? || $app_config['android']['manifest_template'].nil?
|
595
|
-
|
757
|
+
#$rhomanifesterb = File.join $androidpath, "Rhodes", "AndroidManifest.xml.erb" if $rhomanifesterb.nil?
|
758
|
+
$rhomanifesterb = File.join $startdir, 'res', 'generators', 'templates', 'application', 'AndroidManifest.erb' if $rhomanifesterb.nil?
|
596
759
|
|
597
760
|
$appmanifest = File.join $tmpdir, "AndroidManifest.xml"
|
598
761
|
|
599
762
|
$rhores = File.join $androidpath, 'Rhodes','res'
|
600
763
|
$appres = File.join $tmpdir,'res'
|
764
|
+
$appres_flats = File.join $tmpdir,'flats' #do we really need a global var for that?
|
601
765
|
$appassets = $srcdir
|
602
766
|
$applibs = File.join $tmpdir,'lib'
|
603
767
|
|
@@ -630,64 +794,31 @@ namespace "config" do
|
|
630
794
|
# TODO: add ruby executable for Linux
|
631
795
|
end
|
632
796
|
|
633
|
-
|
634
|
-
AndroidTools::MavenDepsExtractor.instance.set_temp_dir($tmpdir)
|
635
|
-
AndroidTools::MavenDepsExtractor.instance.set_java_home($java)
|
636
|
-
|
637
|
-
|
638
|
-
build_tools_path = nil
|
797
|
+
build_tools_ver = nil
|
639
798
|
|
640
799
|
if !$skip_checking_Android_SDK
|
641
|
-
if File.exist?(File.join($androidsdkpath, "build-tools"))
|
642
|
-
|
643
800
|
|
801
|
+
AndroidTools::MavenDepsExtractor.instance.set_logger($logger)
|
802
|
+
AndroidTools::MavenDepsExtractor.instance.set_temp_dir($tmpdir)
|
803
|
+
AndroidTools::MavenDepsExtractor.instance.set_java_home($java)
|
644
804
|
|
645
|
-
|
805
|
+
toolsver = $app_config['android']['buildtools'] if ($app_config['android'] and $app_config['android']['buildtools'])
|
806
|
+
build_tools_path = AndroidTools::findBuildToolsPath(toolsver,$androidsdkpath,$androidplatform)
|
646
807
|
|
647
|
-
|
648
|
-
#will try to find user-specified build tools
|
649
|
-
path = File.join($androidsdkpath,'build-tools',toolsver)
|
650
|
-
if File.directory?(path)
|
651
|
-
build_tools_path = toolsver
|
652
|
-
else
|
653
|
-
$logger.warn("Android build tools v#{toolsver} specified in build.yml were not found, will use latest")
|
654
|
-
end
|
655
|
-
end
|
808
|
+
$logger.info "Detected Android build tools at #{build_tools_path}"
|
656
809
|
|
810
|
+
$aapt2 = File.join(build_tools_path, "aapt2#{$exe_ext}")
|
657
811
|
|
658
|
-
|
812
|
+
$aapt = File.join(build_tools_path, "aapt#{$exe_ext}")
|
813
|
+
$aapt = File.join($androidsdkpath, "platform-tools", "aapt" + $exe_ext) unless File.exists? $aapt
|
659
814
|
|
660
|
-
|
661
|
-
|
662
|
-
|
815
|
+
AndroidTools::DexBuilder.instance.logger = $logger
|
816
|
+
AndroidTools::DexBuilder.instance.sdk_path = $androidsdkpath
|
817
|
+
AndroidTools::DexBuilder.instance.build_tools_path = build_tools_path
|
818
|
+
AndroidTools::DexBuilder.instance.androidplatform = $androidplatform
|
819
|
+
AndroidTools::DexBuilder.instance.javabin = File.join($java, 'java'+$exe_ext)
|
663
820
|
|
664
|
-
|
665
|
-
src_prop_path = File.join($androidsdkpath, "build-tools",entry,"source.properties")
|
666
|
-
next unless File.file?(src_prop_path)
|
667
|
-
|
668
|
-
File.open(src_prop_path) do |f|
|
669
|
-
f.each_line do |line|
|
670
|
-
build_tools[entry] = line.split('=')[1].gsub("\n",'') if line.match(/^Pkg.Revision=/)
|
671
|
-
end
|
672
|
-
end
|
673
|
-
end
|
674
|
-
|
675
|
-
latest_build_tools = build_tools.sort_by{|folder_name,sdk_version| sdk_version}.last
|
676
|
-
build_tools_path = latest_build_tools[0]
|
677
|
-
end
|
678
|
-
end
|
679
|
-
|
680
|
-
if build_tools_path
|
681
|
-
puts "Using Android SDK build-tools: #{build_tools_path}"
|
682
|
-
build_tools_path = File.join $androidsdkpath,'build-tools',build_tools_path
|
683
|
-
$dxjar = File.join(build_tools_path,'lib','dx.jar')
|
684
|
-
$aapt = File.join(build_tools_path, "aapt#{$exe_ext}")
|
685
|
-
else
|
686
|
-
$dxjar = File.join($androidsdkpath, "platforms", $androidplatform, "tools", "lib", "dx.jar")
|
687
|
-
$dxjar = File.join($androidsdkpath, "platform-tools", "lib", "dx.jar") unless File.exists? $dxjar
|
688
|
-
$aapt = File.join($androidsdkpath, "platforms", $androidplatform, "tools", "aapt" + $exe_ext)
|
689
|
-
$aapt = File.join($androidsdkpath, "platform-tools", "aapt" + $exe_ext) unless File.exists? $aapt
|
690
|
-
end
|
821
|
+
$bundletool = File.join($startdir, "res", "build-tools", "bundletool.jar")
|
691
822
|
|
692
823
|
$androidbin = File.join($androidsdkpath, "tools", "android" + $bat_ext)
|
693
824
|
$adb = find_file( "adb" + $exe_ext,
|
@@ -710,6 +841,7 @@ namespace "config" do
|
|
710
841
|
$keytool = File.join($java, "keytool" + $exe_ext)
|
711
842
|
$jarsigner = File.join($java, "jarsigner" + $exe_ext)
|
712
843
|
$jarbin = File.join($java, "jar" + $exe_ext)
|
844
|
+
$javabin = File.join( $java, 'java' + $exe_ext )
|
713
845
|
|
714
846
|
$keystore = nil
|
715
847
|
$keystore = $app_config["android"]["production"]["certificate"] if !$app_config["android"].nil? and !$app_config["android"]["production"].nil?
|
@@ -734,15 +866,15 @@ namespace "config" do
|
|
734
866
|
AndroidTools.jarsigner = $jarsigner
|
735
867
|
AndroidTools.zipalign = $zipalign
|
736
868
|
AndroidTools.keytool = $keytool
|
737
|
-
|
738
|
-
|
869
|
+
AndroidTools.jarbin = $jarbin
|
870
|
+
AndroidTools.apksigner = File.join(build_tools_path,'apksigner'+$bat_ext)
|
739
871
|
end
|
740
872
|
|
741
873
|
$app_config["capabilities"] += ANDROID_CAPS_ALWAYS_ENABLED
|
742
874
|
$app_config["capabilities"].map! { |cap| cap.is_a?(String) ? cap : nil }.delete_if { |cap| cap.nil? }
|
743
875
|
$use_google_addon_api = true unless $app_config["capabilities"].index("push").nil?
|
744
876
|
|
745
|
-
|
877
|
+
$logger.debug "Use Google addon API (2): #{$use_google_addon_api}"
|
746
878
|
|
747
879
|
$appname = $app_config["name"]
|
748
880
|
$appname = "Rhodes" if $appname.nil?
|
@@ -781,20 +913,30 @@ namespace "config" do
|
|
781
913
|
if !$skip_checking_Android_SDK
|
782
914
|
# Detect Google API add-on path
|
783
915
|
if $use_google_addon_api
|
784
|
-
|
785
|
-
#google_jars = ['com.google.android.maps']
|
916
|
+
$logger.debug "Looking for Google API SDK add-on..."
|
786
917
|
$google_classpath = AndroidTools::get_addon_classpath('Google APIs', $found_api_level)
|
787
918
|
end
|
788
919
|
|
789
|
-
AndroidTools::MavenDepsExtractor.instance.add_dependency('com.android.support:support-v4:25.2.0')
|
790
|
-
|
791
920
|
#setup_ndk($androidndkpath, $found_api_level, 'arm')
|
792
921
|
$abis = $app_config['android']['abis'] if $app_config["android"]
|
793
922
|
$abis = ['arm'] unless $abis
|
794
|
-
end
|
795
923
|
|
796
|
-
|
924
|
+
#build config
|
925
|
+
core_build_cfg = {}
|
797
926
|
|
927
|
+
begin
|
928
|
+
core_build_cfg = YAML.load_file(File.join( $builddir, 'config.yml'))
|
929
|
+
rescue Exception => e
|
930
|
+
$logger.warn "Can't read core build config: #{e.inspect}"
|
931
|
+
end
|
932
|
+
|
933
|
+
if core_build_cfg['maven_deps']
|
934
|
+
core_build_cfg['maven_deps'].each { |d|
|
935
|
+
AndroidTools::MavenDepsExtractor.instance.add_dependency( d )
|
936
|
+
}
|
937
|
+
end
|
938
|
+
end
|
939
|
+
|
798
940
|
unless $debug
|
799
941
|
$confdir = "release"
|
800
942
|
else
|
@@ -803,15 +945,6 @@ namespace "config" do
|
|
803
945
|
|
804
946
|
$app_builddir = File.join($bindir, 'target', 'android', $confdir)
|
805
947
|
|
806
|
-
$objdir = {}
|
807
|
-
$libname = {}
|
808
|
-
$native_libs.each do |x|
|
809
|
-
$objdir[x] = File.join($tmpdir, x)
|
810
|
-
|
811
|
-
#TODO: path is actually incorrect since library build splits it to dirname and basename inserting ABI in between. Not touching it right now not wanting to break things, but need to review/fix it eventually.
|
812
|
-
$libname[x] = File.join($app_builddir, x, "lib#{x}.a")
|
813
|
-
end
|
814
|
-
|
815
948
|
$push_sender = nil
|
816
949
|
$push_sender = $config["android"]["push"]["sender"] if !$config["android"].nil? and !$config["android"]["push"].nil?
|
817
950
|
$push_sender = $app_config["android"]["push"]["sender"] if !$app_config["android"].nil? and !$app_config["android"]["push"].nil?
|
@@ -881,6 +1014,7 @@ namespace "config" do
|
|
881
1014
|
mkdir_p $targetdir if not File.exists? $targetdir
|
882
1015
|
mkdir_p $srcdir if not File.exists? $srcdir
|
883
1016
|
|
1017
|
+
init_aapt2_helper
|
884
1018
|
|
885
1019
|
print_timestamp('config:android FINISH')
|
886
1020
|
|
@@ -916,6 +1050,8 @@ namespace "config" do
|
|
916
1050
|
$ext_android_library_deps = {}
|
917
1051
|
$ext_android_platform_lib = []
|
918
1052
|
|
1053
|
+
preload_java_classes = []
|
1054
|
+
|
919
1055
|
$app_extensions_list.each do |ext, extpath|
|
920
1056
|
next if extpath.nil?
|
921
1057
|
|
@@ -1100,11 +1236,11 @@ namespace "config" do
|
|
1100
1236
|
else
|
1101
1237
|
rakepath = extpath
|
1102
1238
|
end
|
1103
|
-
$ext_android_build_scripts[ext] = [rakepath, 'rake']
|
1239
|
+
$ext_android_build_scripts[ext] = [rakepath, 'rake', extpath]
|
1104
1240
|
|
1105
1241
|
if prebuild_rake_task
|
1106
1242
|
args = [ prebuild_rake_task ]
|
1107
|
-
args << '--trace' if
|
1243
|
+
args << '--trace' if Rake.application.options.trace
|
1108
1244
|
cc_run( 'rake', args, rakepath, true, setup_ext_env( extpath, ext ) ) or raise "Extension prebuild failed: #{extpath}"
|
1109
1245
|
end
|
1110
1246
|
|
@@ -1119,19 +1255,20 @@ namespace "config" do
|
|
1119
1255
|
end
|
1120
1256
|
end
|
1121
1257
|
|
1258
|
+
preload_java_classes.push(*extconf_android["preload_java_classes"]) if (extconf_android && extconf_android["preload_java_classes"])
|
1259
|
+
|
1122
1260
|
puts "#{extpath} is configured"
|
1123
1261
|
end # $app_extensions_list.each
|
1124
1262
|
|
1263
|
+
mkdir_p(File.join( $tmpdir, "include" ) )
|
1264
|
+
File.open( File.join( $tmpdir, "include", "rhojava_extra.inc" ), "w" ) { |f|
|
1265
|
+
preload_java_classes.each { |cls| f.puts( "\"#{cls}\"," ) }
|
1266
|
+
}
|
1267
|
+
|
1125
1268
|
puts "Extensions' java source lists: #{$ext_android_additional_sources.inspect}"
|
1126
1269
|
|
1127
1270
|
AndroidTools::MavenDepsExtractor.instance.extract_all
|
1128
1271
|
|
1129
|
-
if !AndroidTools::MavenDepsExtractor.instance.have_v4_support_lib?
|
1130
|
-
v4jar = Dir.glob(File.join($androidsdkpath,'extras','android','**','v4','android-support-v4.jar'))
|
1131
|
-
raise "Support-v4 library was not found neither in SDK extras nor in m2 repository" if v4jar.size !=1
|
1132
|
-
$v4support_classpath = v4jar.first
|
1133
|
-
end
|
1134
|
-
|
1135
1272
|
|
1136
1273
|
print_timestamp('android:extensions FINISH')
|
1137
1274
|
|
@@ -1173,6 +1310,54 @@ end
|
|
1173
1310
|
namespace "build" do
|
1174
1311
|
namespace "android" do
|
1175
1312
|
|
1313
|
+
task :rhodeslib_bundle, [:target_path] => ["config:set_android_platform", "config:common"] do |t, args|
|
1314
|
+
print_timestamp('build:android:rhodeslib_bundle START')
|
1315
|
+
target_path = args[:target_path]
|
1316
|
+
|
1317
|
+
$skip_build_rhodes_main = true
|
1318
|
+
$skip_build_extensions = true
|
1319
|
+
$skip_build_xmls = true
|
1320
|
+
$use_prebuild_data = true
|
1321
|
+
|
1322
|
+
Rake::Task['config:android'].invoke
|
1323
|
+
|
1324
|
+
appname = $app_config["name"] ? $app_config["name"] : "rhorunner"
|
1325
|
+
appname_fixed = appname.split(/[^a-zA-Z0-9]/).map { |w| w }.join("")
|
1326
|
+
|
1327
|
+
Rake::Task['build:android:rhobundle'].invoke
|
1328
|
+
|
1329
|
+
mkdir_p target_path if not File.exists? target_path
|
1330
|
+
|
1331
|
+
source_RhoBundle = $appassets
|
1332
|
+
|
1333
|
+
rm_rf File.join(target_path, "apps") if File.exists? File.join(target_path, "apps")
|
1334
|
+
rm_rf File.join(target_path, "db") if File.exists? File.join(target_path, "db")
|
1335
|
+
rm_rf File.join(target_path, "lib") if File.exists? File.join(target_path, "lib")
|
1336
|
+
rm_rf File.join(target_path, "hash") if File.exists? File.join(target_path, "hash")
|
1337
|
+
rm_rf File.join(target_path, "name") if File.exists? File.join(target_path, "name")
|
1338
|
+
rm_rf File.join(target_path, "rho.dat") if File.exists? File.join(target_path, "rho.dat")
|
1339
|
+
|
1340
|
+
cp_r File.join(source_RhoBundle, "apps"), target_path
|
1341
|
+
cp_r File.join(source_RhoBundle, "db"), target_path
|
1342
|
+
cp_r File.join(source_RhoBundle, "lib"), target_path
|
1343
|
+
cp_r File.join(source_RhoBundle, "hash"), target_path
|
1344
|
+
cp_r File.join(source_RhoBundle, "name"), target_path
|
1345
|
+
cp_r File.join(source_RhoBundle, "rho.dat"), target_path
|
1346
|
+
|
1347
|
+
print_timestamp('build:android:rhodeslib_bundle FINISH')
|
1348
|
+
end
|
1349
|
+
|
1350
|
+
task :rhodeslib_lib, [:target_path] => [:rhobundle] do |t, args|
|
1351
|
+
print_timestamp('build:android:rhodeslib_lib START')
|
1352
|
+
$rhodes_as_lib = true
|
1353
|
+
Rake::Task["package:android"].invoke
|
1354
|
+
target_path = args[:target_path]
|
1355
|
+
mkdir_p target_path if not File.exists? target_path
|
1356
|
+
cp_r File.join($bindir, "#{$appname}-#{$app_config["version"]}.aar"), target_path
|
1357
|
+
print_timestamp('build:android:rhodeslib_lib FINISH')
|
1358
|
+
end
|
1359
|
+
|
1360
|
+
|
1176
1361
|
desc "Build RhoBundle for android"
|
1177
1362
|
task :rhobundle => ["config:android"] do
|
1178
1363
|
print_timestamp('build:android:rhobundle START')
|
@@ -1219,7 +1404,7 @@ namespace "build" do
|
|
1219
1404
|
ENV["RHO_APP_DIR"] = $app_path
|
1220
1405
|
ENV["ANDROID_SDK"] = $androidsdkpath
|
1221
1406
|
ENV["ANDROID_NDK"] = $androidndkpath
|
1222
|
-
ENV["ANDROID_API_LEVEL"] = $
|
1407
|
+
ENV["ANDROID_API_LEVEL"] = $min_sdk_level.to_s
|
1223
1408
|
ENV["RHO_ROOT"] = $startdir
|
1224
1409
|
ENV["BUILD_DIR"] ||= $startdir + "/platform/android/build"
|
1225
1410
|
ENV["RHO_INC"] = $appincdir
|
@@ -1228,9 +1413,25 @@ namespace "build" do
|
|
1228
1413
|
ENV["NEON_ROOT"] = $neon_root unless $neon_root.nil?
|
1229
1414
|
ENV["CONFIG_XML"] = $config_xml unless $config_xml.nil?
|
1230
1415
|
ENV["RHO_DEBUG"] = $debug.to_s
|
1231
|
-
|
1232
|
-
|
1416
|
+
if (not $app_config["android"].nil?) and (not $app_config["android"]["fcm"].nil?)
|
1417
|
+
ENV["FCM_MPBILESDK_APP_ID"] = $app_config["android"]["fcm"]["mobilesdk_app_id"]
|
1418
|
+
ENV["FCM_PROJECT_NUMBER"] = $app_config["android"]["fcm"]["project_number"]
|
1419
|
+
ENV["FCM_CURRENT_KEY"] = $app_config["android"]["fcm"]["current_key"]
|
1420
|
+
ENV["FCM_PROJECT_ID"] = $app_config["android"]["fcm"]["project_id"]
|
1421
|
+
end
|
1422
|
+
|
1423
|
+
ENV["BARCODE_ENGINE"] = 'google' #by default
|
1233
1424
|
|
1425
|
+
unless $app_config['android']&.[]('barcode_engine').nil?
|
1426
|
+
engine = $app_config['android']['barcode_engine']
|
1427
|
+
case engine
|
1428
|
+
when 'zxing'
|
1429
|
+
ENV["BARCODE_ENGINE"] = 'zxing'
|
1430
|
+
else
|
1431
|
+
raise 'Only supported barcode engines are: google(default) and zxing'
|
1432
|
+
end
|
1433
|
+
end
|
1434
|
+
|
1234
1435
|
$ext_android_build_scripts.each do |ext, builddata|
|
1235
1436
|
|
1236
1437
|
puts "Building #{ext}: #{builddata.inspect}"
|
@@ -1273,10 +1474,13 @@ namespace "build" do
|
|
1273
1474
|
args << "-f"
|
1274
1475
|
args << "\"#{File.join($startdir,'platform','android','build','Rakefile')}\""
|
1275
1476
|
end
|
1276
|
-
args << '--trace' if
|
1477
|
+
args << '--trace' if Rake.application.options.trace
|
1277
1478
|
end
|
1278
1479
|
|
1279
|
-
|
1480
|
+
|
1481
|
+
#puts "builddata: " + builddata[1] + " args: " + args.to_s + " builddata0: " + builddata[0].to_s
|
1482
|
+
#puts ENV.to_s
|
1483
|
+
cc_run(builddata[1], args, builddata[0], false, nil, Rake.application.options.trace) or raise "Extension build failed: #{builddata[0]}"
|
1280
1484
|
else
|
1281
1485
|
currentdir = Dir.pwd()
|
1282
1486
|
Dir.chdir builddata[0]
|
@@ -1348,37 +1552,100 @@ namespace "build" do
|
|
1348
1552
|
print_timestamp('build:android:extensions FINISH')
|
1349
1553
|
end #task :extensions
|
1350
1554
|
|
1555
|
+
class BuildContext
|
1556
|
+
attr_accessor :libname
|
1557
|
+
attr_accessor :sourcelist
|
1558
|
+
attr_accessor :extra_copmiler_args
|
1559
|
+
end
|
1560
|
+
|
1561
|
+
class LibBuilder
|
1562
|
+
|
1563
|
+
attr_accessor :context
|
1564
|
+
|
1565
|
+
@@results = {}
|
1566
|
+
|
1567
|
+
def self.results
|
1568
|
+
@@results
|
1569
|
+
end
|
1570
|
+
|
1571
|
+
def self.results=v
|
1572
|
+
@@results = v
|
1573
|
+
end
|
1574
|
+
|
1575
|
+
def initialize
|
1576
|
+
@context = BuildContext.new
|
1577
|
+
@context.extra_copmiler_args = []
|
1578
|
+
end
|
1579
|
+
|
1580
|
+
def build
|
1581
|
+
objdir = File.join($tmpdir, @context.libname)
|
1582
|
+
libdir = File.join($app_builddir, @context.libname)
|
1583
|
+
mkdir_p libdir unless File.directory? libdir
|
1584
|
+
|
1585
|
+
args = []
|
1586
|
+
|
1587
|
+
args.concat @context.extra_copmiler_args
|
1588
|
+
|
1589
|
+
ENV['SOURCEPATH'] = File.join($androidpath,'..','..')
|
1590
|
+
ENV['SOURCELIST'] = @context.sourcelist
|
1591
|
+
ENV["ANDROID_NDK"] = $androidndkpath
|
1592
|
+
ENV["ANDROID_API_LEVEL"] = $min_sdk_level.to_s
|
1593
|
+
ENV["RHO_ROOT"] = $startdir
|
1594
|
+
ENV["RHO_INC"] = $appincdir
|
1595
|
+
ENV["TARGETPATH"] = libdir
|
1596
|
+
ENV['TARGETLIB'] = "lib#{@context.libname}.a"
|
1597
|
+
ENV['TEMP_FILES_DIR'] = objdir
|
1598
|
+
ENV['BUILDARGS'] = args.join(' ')
|
1599
|
+
|
1600
|
+
$abis.each { |abi|
|
1601
|
+
args = ['-f', "\"#{File.join( $builddir,'Rakefile')}\"", "arch:#{abi}"]
|
1602
|
+
args << '-m'
|
1603
|
+
args << '--trace' if Rake.application.options.trace
|
1604
|
+
cc_run('rake', args, nil, false, nil, Rake.application.options.trace) or raise "Build failed: #{@context.libname}"
|
1605
|
+
}
|
1606
|
+
|
1607
|
+
LibBuilder.results[@context.libname] = libdir
|
1608
|
+
end
|
1609
|
+
end
|
1610
|
+
|
1351
1611
|
task :libsqlite => "config:android" do
|
1352
1612
|
print_timestamp('build:android:libsqlite START')
|
1353
1613
|
|
1614
|
+
b = LibBuilder.new
|
1615
|
+
b.context.libname = 'sqlite'
|
1616
|
+
b.context.sourcelist = File.join($builddir, 'libsqlite_build.files')
|
1617
|
+
|
1354
1618
|
srcdir = File.join($shareddir, "sqlite")
|
1355
|
-
|
1356
|
-
|
1357
|
-
|
1619
|
+
b.context.extra_copmiler_args = [
|
1620
|
+
"-I\"#{srcdir}\"",
|
1621
|
+
"-I\"#{$shareddir}\""
|
1622
|
+
]
|
1623
|
+
b.build
|
1358
1624
|
|
1359
|
-
|
1360
|
-
|
1625
|
+
print_timestamp('build:android:libsqlite FINISH')
|
1626
|
+
end
|
1361
1627
|
|
1362
|
-
|
1628
|
+
#not real build, just copy existing .so to build dir
|
1629
|
+
task :libopenssl => "config:android" do
|
1363
1630
|
|
1364
|
-
|
1365
|
-
|
1366
|
-
|
1367
|
-
|
1368
|
-
|
1369
|
-
|
1370
|
-
|
1371
|
-
|
1372
|
-
|
1373
|
-
ENV['BUILDARGS'] = args.join(' ')
|
1631
|
+
skip = ($app_config['extensions'].index('openssl.so') || $app_config['extensions'].index('openssl'))
|
1632
|
+
next if skip
|
1633
|
+
|
1634
|
+
print_timestamp('build:android:libopenssl START')
|
1635
|
+
|
1636
|
+
libdir = File.join($app_builddir, 'openssl')
|
1637
|
+
mkdir_p libdir unless File.directory? libdir
|
1638
|
+
|
1639
|
+
src_dir = "#{$shareddir}/../../lib/extensions/openssl.so/ext/android"
|
1374
1640
|
|
1375
1641
|
$abis.each do |abi|
|
1376
|
-
|
1377
|
-
|
1378
|
-
|
1379
|
-
|
1642
|
+
realabi = abi
|
1643
|
+
realabi = 'armeabi' if abi == 'arm'
|
1644
|
+
mkdir_p File.join(libdir, realabi) unless File.directory? File.join(libdir, realabi)
|
1645
|
+
cp_r File.join(src_dir, realabi, "libopenssl.so.a"), File.join(libdir, realabi, "libopenssl.a")
|
1380
1646
|
end
|
1381
|
-
|
1647
|
+
|
1648
|
+
LibBuilder.results['openssl'] = libdir
|
1382
1649
|
end
|
1383
1650
|
|
1384
1651
|
task :libcurl => "config:android" do
|
@@ -1391,291 +1658,166 @@ namespace "build" do
|
|
1391
1658
|
#export CPPFLAGS="--sysroot <ndkroot>/build/platforms/android-3/arch-arm -fPIC -mandroid -DANDROID -DOS_ANDROID"
|
1392
1659
|
#./configure --without-ssl --without-ca-bundle --without-ca-path --without-libssh2 --without-libidn --disable-ldap --disable-ldaps --host=arm-eabi
|
1393
1660
|
|
1394
|
-
|
1395
|
-
|
1396
|
-
|
1397
|
-
sourcelist = File.join($builddir, 'libcurl_build.files')
|
1661
|
+
b = LibBuilder.new
|
1662
|
+
b.context.libname = 'curl'
|
1663
|
+
b.context.sourcelist = File.join($builddir, 'libcurl_build.files')
|
1398
1664
|
|
1399
|
-
|
1400
|
-
|
1401
|
-
|
1402
|
-
|
1403
|
-
|
1404
|
-
|
1405
|
-
|
1406
|
-
|
1407
|
-
|
1408
|
-
|
1409
|
-
|
1410
|
-
ENV["ANDROID_NDK"] = $androidndkpath
|
1411
|
-
ENV["ANDROID_API_LEVEL"] = $found_api_level.to_s
|
1412
|
-
ENV["RHO_ROOT"] = $startdir
|
1413
|
-
ENV["RHO_INC"] = $appincdir
|
1414
|
-
ENV["TARGETPATH"] = File.dirname($libname["curl"])
|
1415
|
-
ENV['TARGETLIB'] = File.basename($libname["curl"])
|
1416
|
-
ENV['TEMP_FILES_DIR'] = $objdir["curl"]
|
1417
|
-
ENV['BUILDARGS'] = args.join(' ')
|
1665
|
+
srcdir = File.join $shareddir, "curl", "lib"
|
1666
|
+
b.context.extra_copmiler_args = [
|
1667
|
+
"-DHAVE_CONFIG_H",
|
1668
|
+
"-I\"#{srcdir}/../include\"",
|
1669
|
+
"-I\"#{srcdir}\"",
|
1670
|
+
"-I\"#{srcdir}/vtls\"",
|
1671
|
+
"-I\"#{srcdir}/vauth\"",
|
1672
|
+
"-I\"#{$shareddir}\"",
|
1673
|
+
"-I\"#{$shareddir}/../../lib/extensions/openssl.so/ext/sources/include\""
|
1674
|
+
]
|
1675
|
+
b.build
|
1418
1676
|
|
1419
|
-
$abis.each do |abi|
|
1420
|
-
args = ['-f', "\"#{File.join($builddir,'Rakefile')}\"", "arch:#{abi}"]
|
1421
|
-
args << '-m'
|
1422
|
-
args << '--trace' if USE_TRACES
|
1423
|
-
cc_run('rake', args, nil, false, nil, USE_TRACES) or raise "Build failed: curl"
|
1424
|
-
end
|
1425
1677
|
print_timestamp('build:android:libcurl FINISH')
|
1426
1678
|
end
|
1427
1679
|
|
1428
1680
|
task :libruby => "config:android" do
|
1429
1681
|
print_timestamp('build:android:libruby START')
|
1430
|
-
srcdir = File.join $shareddir, "ruby"
|
1431
|
-
objdir = $objdir["ruby"]
|
1432
|
-
libname = $libname["ruby"]
|
1433
|
-
sourcelist = File.join($builddir, 'libruby_build.files')
|
1434
|
-
|
1435
|
-
libdir = File.dirname(libname)
|
1436
|
-
mkdir_p libdir unless File.directory? libdir
|
1437
|
-
|
1438
|
-
args = []
|
1439
|
-
args << "-DRUBY_EXPORT"
|
1440
|
-
args << "-Wno-uninitialized"
|
1441
|
-
args << "-Wno-missing-field-initializers"
|
1442
|
-
args << '-Wno-shadow'
|
1443
|
-
args << "-I\"#{srcdir}/include\""
|
1444
|
-
args << "-I\"#{srcdir}/android\""
|
1445
|
-
args << "-I\"#{srcdir}/generated\""
|
1446
|
-
args << "-I\"#{srcdir}\""
|
1447
|
-
args << "-I\"#{srcdir}/..\""
|
1448
|
-
args << "-I\"#{srcdir}/../sqlite\""
|
1449
1682
|
|
1450
|
-
|
1451
|
-
|
1452
|
-
|
1453
|
-
|
1454
|
-
|
1455
|
-
|
1456
|
-
|
1457
|
-
|
1458
|
-
|
1459
|
-
|
1683
|
+
b = LibBuilder.new
|
1684
|
+
b.context.libname = 'ruby'
|
1685
|
+
b.context.sourcelist = File.join($builddir, 'libruby_build.files')
|
1686
|
+
|
1687
|
+
srcdir = File.join($shareddir, "ruby")
|
1688
|
+
b.context.extra_copmiler_args = [
|
1689
|
+
"-DRUBY_EXPORT",
|
1690
|
+
"-Wno-uninitialized",
|
1691
|
+
"-Wno-missing-field-initializers",
|
1692
|
+
'-Wno-shadow',
|
1693
|
+
"-I\"#{srcdir}/include\"",
|
1694
|
+
"-I\"#{srcdir}/android\"",
|
1695
|
+
"-I\"#{srcdir}/generated\"",
|
1696
|
+
"-I\"#{srcdir}\"",
|
1697
|
+
"-I\"#{srcdir}/..\""
|
1698
|
+
# "-I\"#{b.context.srcdir}/../sqlite\""
|
1699
|
+
]
|
1700
|
+
b.build
|
1460
1701
|
|
1461
|
-
$abis.each do |abi|
|
1462
|
-
args = ['-f', "\"#{File.join($builddir,'Rakefile')}\"", "arch:#{abi}"]
|
1463
|
-
args << '-m'
|
1464
|
-
args << '--trace' if USE_TRACES
|
1465
|
-
cc_run('rake', args, nil, false, nil, USE_TRACES) or raise "Build failed: ruby"
|
1466
|
-
end
|
1467
1702
|
print_timestamp('build:android:libruby FINISH')
|
1468
1703
|
end
|
1469
1704
|
|
1470
1705
|
task :libjson => "config:android" do
|
1471
1706
|
print_timestamp('build:android:libjson START')
|
1472
|
-
srcdir = File.join $shareddir, "json"
|
1473
|
-
objdir = $objdir["json"]
|
1474
|
-
libname = $libname["json"]
|
1475
|
-
sourcelist = File.join($builddir, 'libjson_build.files')
|
1476
1707
|
|
1477
|
-
|
1478
|
-
|
1708
|
+
b = LibBuilder.new
|
1709
|
+
b.context.libname = 'json'
|
1710
|
+
b.context.sourcelist = File.join($builddir, 'libjson_build.files')
|
1479
1711
|
|
1480
|
-
|
1481
|
-
|
1482
|
-
|
1712
|
+
srcdir = File.join($shareddir, "json")
|
1713
|
+
b.context.extra_copmiler_args = [
|
1714
|
+
"-I\"#{srcdir}\"",
|
1715
|
+
"-I\"#{srcdir}/..\""
|
1716
|
+
]
|
1717
|
+
b.build
|
1483
1718
|
|
1484
|
-
ENV['SOURCEPATH'] = File.join($androidpath,'..','..')
|
1485
|
-
ENV['SOURCELIST'] = File.join($builddir, 'libjson_build.files')
|
1486
|
-
ENV["ANDROID_NDK"] = $androidndkpath
|
1487
|
-
ENV["ANDROID_API_LEVEL"] = $found_api_level.to_s
|
1488
|
-
ENV["RHO_ROOT"] = $startdir
|
1489
|
-
ENV["RHO_INC"] = $appincdir
|
1490
|
-
ENV["TARGETPATH"] = File.dirname($libname["json"])
|
1491
|
-
ENV['TARGETLIB'] = File.basename($libname["json"])
|
1492
|
-
ENV['TEMP_FILES_DIR'] = $objdir["json"]
|
1493
|
-
ENV['BUILDARGS'] = args.join(' ')
|
1494
|
-
|
1495
|
-
$abis.each do |abi|
|
1496
|
-
args = ['-f', "\"#{File.join($builddir,'Rakefile')}\"", "arch:#{abi}"]
|
1497
|
-
args << '-m'
|
1498
|
-
args << '--trace' if USE_TRACES
|
1499
|
-
cc_run('rake', args, nil, false, nil, USE_TRACES) or raise "Build failed: json"
|
1500
|
-
end
|
1501
1719
|
print_timestamp('build:android:libjson FINISH')
|
1502
1720
|
end
|
1503
1721
|
|
1504
1722
|
task :librholog => "config:android" do
|
1505
1723
|
print_timestamp('build:android:librholog START')
|
1506
|
-
srcdir = File.join $shareddir, "logging"
|
1507
|
-
objdir = $objdir["rholog"]
|
1508
|
-
libname = $libname["rholog"]
|
1509
|
-
sourcelist = File.join($builddir, 'librholog_build.files')
|
1510
|
-
|
1511
|
-
libdir = File.dirname(libname)
|
1512
|
-
mkdir_p libdir unless File.directory? libdir
|
1513
1724
|
|
1514
|
-
|
1515
|
-
|
1725
|
+
b = LibBuilder.new
|
1726
|
+
b.context.libname = 'rholog'
|
1727
|
+
b.context.sourcelist = File.join($builddir, 'librholog_build.files')
|
1516
1728
|
|
1517
|
-
|
1518
|
-
|
1519
|
-
|
1520
|
-
|
1521
|
-
|
1522
|
-
ENV["RHO_INC"] = $appincdir
|
1523
|
-
ENV["TARGETPATH"] = File.dirname($libname['rholog'])
|
1524
|
-
ENV['TARGETLIB'] = File.basename($libname['rholog'])
|
1525
|
-
ENV['TEMP_FILES_DIR'] = $objdir['rholog']
|
1526
|
-
ENV['BUILDARGS'] = args.join(' ')
|
1729
|
+
srcdir = File.join($shareddir, "logging")
|
1730
|
+
b.context.extra_copmiler_args = [
|
1731
|
+
"-I\"#{srcdir}/..\""
|
1732
|
+
]
|
1733
|
+
b.build
|
1527
1734
|
|
1528
|
-
$abis.each do |abi|
|
1529
|
-
args = ['-f', "\"#{File.join($builddir,'Rakefile')}\"", "arch:#{abi}"]
|
1530
|
-
args << '-m'
|
1531
|
-
args << '--trace' if USE_TRACES
|
1532
|
-
cc_run('rake', args, nil, false, nil, USE_TRACES) or raise "Build failed: rholog"
|
1533
|
-
end
|
1534
1735
|
print_timestamp('build:android:librholog FINISH')
|
1535
1736
|
end
|
1536
1737
|
|
1537
1738
|
task :librhomain => "config:android" do
|
1538
1739
|
print_timestamp('build:android:librhomain START')
|
1539
|
-
srcdir = $shareddir
|
1540
|
-
objdir = $objdir["rhomain"]
|
1541
|
-
libname = $libname["rhomain"]
|
1542
|
-
sourcelist = File.join($builddir, 'librhomain_build.files')
|
1543
|
-
|
1544
|
-
libdir = File.dirname(libname)
|
1545
|
-
mkdir_p libdir unless File.directory? libdir
|
1546
|
-
|
1547
|
-
args = []
|
1548
|
-
args << "-I\"#{srcdir}\""
|
1549
|
-
args << "-I\"#{$commonapidir}\""
|
1550
1740
|
|
1551
|
-
|
1552
|
-
|
1553
|
-
|
1554
|
-
|
1555
|
-
|
1556
|
-
|
1557
|
-
|
1558
|
-
|
1559
|
-
ENV['TEMP_FILES_DIR'] = $objdir['rhomain']
|
1560
|
-
ENV['BUILDARGS'] = args.join(' ')
|
1741
|
+
b = LibBuilder.new
|
1742
|
+
b.context.libname = 'rhomain'
|
1743
|
+
b.context.sourcelist = File.join($builddir, 'librhomain_build.files')
|
1744
|
+
b.context.extra_copmiler_args = [
|
1745
|
+
"-I\"#{$shareddir}\"",
|
1746
|
+
"-I\"#{$commonapidir}\""
|
1747
|
+
]
|
1748
|
+
b.build
|
1561
1749
|
|
1562
|
-
$abis.each do |abi|
|
1563
|
-
args = ['-f', "\"#{File.join($builddir,'Rakefile')}\"", "arch:#{abi}"]
|
1564
|
-
args << '-m'
|
1565
|
-
args << '--trace' if USE_TRACES
|
1566
|
-
cc_run('rake', args, nil, false, nil, USE_TRACES) or raise "Build failed: rhomain"
|
1567
|
-
end
|
1568
1750
|
print_timestamp('build:android:librhomain FINISH')
|
1569
1751
|
end
|
1570
1752
|
|
1571
1753
|
task :librhocommon => "config:android" do
|
1572
1754
|
print_timestamp('build:android:librhocommon START')
|
1573
|
-
objdir = $objdir["rhocommon"]
|
1574
|
-
libname = $libname["rhocommon"]
|
1575
|
-
sourcelist = File.join($builddir, 'librhocommon_build.files')
|
1576
1755
|
|
1577
|
-
|
1578
|
-
|
1756
|
+
b = LibBuilder.new
|
1757
|
+
b.context.libname = 'rhocommon'
|
1758
|
+
b.context.sourcelist = File.join($builddir, 'librhocommon_build.files')
|
1759
|
+
b.context.extra_copmiler_args = [
|
1760
|
+
"-I\"#{$shareddir}\"",
|
1761
|
+
"-I\"#{$shareddir}/curl/include\"",
|
1762
|
+
"-I\"#{$shareddir}/ruby/include\"",
|
1763
|
+
"-I\"#{$shareddir}/ruby/android\"",
|
1764
|
+
"-I\"#{$shareddir}/../../lib/extensions/openssl.so/ext/sources/include\""
|
1765
|
+
]
|
1766
|
+
b.build
|
1579
1767
|
|
1580
|
-
args = []
|
1581
|
-
args << "-I\"#{$shareddir}\""
|
1582
|
-
args << "-I\"#{$shareddir}/curl/include\""
|
1583
|
-
args << "-I\"#{$shareddir}/ruby/include\""
|
1584
|
-
args << "-I\"#{$shareddir}/ruby/android\""
|
1585
|
-
|
1586
|
-
ENV['SOURCEPATH'] = File.join($androidpath,'..','..')
|
1587
|
-
ENV['SOURCELIST'] = File.join($builddir, 'librhocommon_build.files')
|
1588
|
-
ENV["ANDROID_NDK"] = $androidndkpath
|
1589
|
-
ENV["ANDROID_API_LEVEL"] = $found_api_level.to_s
|
1590
|
-
ENV["RHO_ROOT"] = $startdir
|
1591
|
-
ENV["RHO_INC"] = $appincdir
|
1592
|
-
ENV["TARGETPATH"] = File.dirname($libname['rhocommon'])
|
1593
|
-
ENV['TARGETLIB'] = File.basename($libname['rhocommon'])
|
1594
|
-
ENV['TEMP_FILES_DIR'] = $objdir['rhocommon']
|
1595
|
-
ENV['BUILDARGS'] = args.join(' ')
|
1596
|
-
|
1597
|
-
$abis.each do |abi|
|
1598
|
-
args = ['-f', "\"#{File.join($builddir,'Rakefile')}\"", "arch:#{abi}"]
|
1599
|
-
args << '-m'
|
1600
|
-
args << '--trace' if USE_TRACES
|
1601
|
-
cc_run('rake', args, nil, false, nil, USE_TRACES) or raise "Build failed: rhocommon"
|
1602
|
-
end
|
1603
1768
|
print_timestamp('build:android:librhocommon FINISH')
|
1604
1769
|
end
|
1605
1770
|
|
1606
1771
|
task :librhodb => "config:android" do
|
1607
1772
|
print_timestamp('build:android:librhodb START')
|
1608
|
-
srcdir = File.join $shareddir, "db"
|
1609
|
-
objdir = $objdir["rhodb"]
|
1610
|
-
libname = $libname["rhodb"]
|
1611
|
-
sourcelist = File.join($builddir, 'librhodb_build.files')
|
1612
|
-
|
1613
|
-
libdir = File.dirname(libname)
|
1614
|
-
mkdir_p libdir unless File.directory? libdir
|
1615
1773
|
|
1616
|
-
|
1617
|
-
|
1618
|
-
|
1619
|
-
args << "-I\"#{srcdir}/../sqlite\""
|
1620
|
-
args << "-I\"#{$shareddir}/ruby/include\""
|
1621
|
-
args << "-I\"#{$shareddir}/ruby/android\""
|
1774
|
+
b = LibBuilder.new
|
1775
|
+
b.context.libname = 'rhodb'
|
1776
|
+
b.context.sourcelist = File.join($builddir, 'librhodb_build.files')
|
1622
1777
|
|
1623
|
-
|
1624
|
-
|
1625
|
-
|
1626
|
-
|
1627
|
-
|
1628
|
-
|
1629
|
-
|
1630
|
-
|
1631
|
-
|
1632
|
-
ENV['BUILDARGS'] = args.join(' ')
|
1778
|
+
srcdir = File.join($shareddir, "db")
|
1779
|
+
b.context.extra_copmiler_args = [
|
1780
|
+
"-I\"#{srcdir}\"",
|
1781
|
+
"-I\"#{srcdir}/..\"",
|
1782
|
+
"-I\"#{srcdir}/../sqlite\"",
|
1783
|
+
"-I\"#{$shareddir}/ruby/include\"",
|
1784
|
+
"-I\"#{$shareddir}/ruby/android\""
|
1785
|
+
]
|
1786
|
+
b.build
|
1633
1787
|
|
1634
|
-
$abis.each do |abi|
|
1635
|
-
args = ['-f', "\"#{File.join($builddir,'Rakefile')}\"", "arch:#{abi}"]
|
1636
|
-
args << '-m'
|
1637
|
-
args << '--trace' if USE_TRACES
|
1638
|
-
cc_run('rake', args, nil, false, nil, USE_TRACES) or raise "Build failed: rhodb"
|
1639
|
-
end
|
1640
1788
|
print_timestamp('build:android:librhodb FINISH')
|
1641
1789
|
end
|
1642
1790
|
|
1643
1791
|
task :librhosync => "config:android" do
|
1644
1792
|
print_timestamp('build:android:librhosync START')
|
1645
|
-
srcdir = File.join $shareddir, "sync"
|
1646
|
-
objdir = $objdir["rhosync"]
|
1647
|
-
libname = $libname["rhosync"]
|
1648
|
-
sourcelist = File.join($builddir, 'librhosync_build.files')
|
1649
|
-
|
1650
|
-
libdir = File.dirname(libname)
|
1651
|
-
mkdir_p libdir unless File.directory? libdir
|
1652
1793
|
|
1653
|
-
|
1654
|
-
|
1655
|
-
|
1656
|
-
args << "-I\"#{srcdir}/../sqlite\""
|
1794
|
+
b = LibBuilder.new
|
1795
|
+
b.context.libname = 'rhosync'
|
1796
|
+
b.context.sourcelist = File.join($builddir, 'librhosync_build.files')
|
1657
1797
|
|
1658
|
-
|
1659
|
-
|
1660
|
-
|
1661
|
-
|
1662
|
-
|
1663
|
-
|
1664
|
-
|
1665
|
-
ENV['TARGETLIB'] = File.basename($libname['rhosync'])
|
1666
|
-
ENV['TEMP_FILES_DIR'] = $objdir['rhosync']
|
1667
|
-
ENV['BUILDARGS'] = args.join(' ')
|
1798
|
+
srcdir = File.join($shareddir, "sync")
|
1799
|
+
b.context.extra_copmiler_args = [
|
1800
|
+
"-I\"#{srcdir}\"",
|
1801
|
+
"-I\"#{srcdir}/..\"",
|
1802
|
+
"-I\"#{srcdir}/../sqlite\""
|
1803
|
+
]
|
1804
|
+
b.build
|
1668
1805
|
|
1669
|
-
$abis.each do |abi|
|
1670
|
-
args = ['-f', "\"#{File.join($builddir,'Rakefile')}\"", "arch:#{abi}"]
|
1671
|
-
args << '-m'
|
1672
|
-
args << '--trace' if USE_TRACES
|
1673
|
-
cc_run('rake', args, nil, false, nil, USE_TRACES) or raise "Build failed: rhosync"
|
1674
|
-
end
|
1675
1806
|
print_timestamp('build:android:librhosync FINISH')
|
1676
1807
|
end
|
1677
1808
|
|
1678
|
-
task :libs => [
|
1809
|
+
task :libs => [
|
1810
|
+
:libsqlite,
|
1811
|
+
:libcurl,
|
1812
|
+
:libruby,
|
1813
|
+
:libjson,
|
1814
|
+
:librhodb,
|
1815
|
+
:librhocommon,
|
1816
|
+
:librhomain,
|
1817
|
+
:librhosync,
|
1818
|
+
:librholog,
|
1819
|
+
:libopenssl
|
1820
|
+
]
|
1679
1821
|
|
1680
1822
|
task :genconfig => "config:android" do
|
1681
1823
|
print_timestamp('build:android:genconfig START')
|
@@ -1745,6 +1887,12 @@ namespace "build" do
|
|
1745
1887
|
print_timestamp('build:android:genconfig FINISH')
|
1746
1888
|
end
|
1747
1889
|
|
1890
|
+
def clear_flats(path)
|
1891
|
+
Dir.glob(File.join(path,'**','*.flat')) do |filepath|
|
1892
|
+
rm_rf filepath
|
1893
|
+
end
|
1894
|
+
end
|
1895
|
+
|
1748
1896
|
task :librhodes => [:libs, :extensions, :genconfig] do
|
1749
1897
|
print_timestamp('build:android:librhodes START')
|
1750
1898
|
if $skip_so_build
|
@@ -1764,12 +1912,14 @@ namespace "build" do
|
|
1764
1912
|
args << "-I\"#{$shareddir}/curl/include\""
|
1765
1913
|
args << "-I\"#{$shareddir}/ruby/include\""
|
1766
1914
|
args << "-I\"#{$shareddir}/ruby/android\""
|
1915
|
+
args << "-I\"#{$shareddir}/../../lib/extensions/openssl.so/ext/sources/include\""
|
1767
1916
|
args << "-I\"#{$coreapidir}\""
|
1917
|
+
args << "-I\"#{File.join($tmpdir,"include")}\""
|
1768
1918
|
|
1769
1919
|
ENV['SOURCEPATH'] = File.join($androidpath,'..','..')
|
1770
1920
|
ENV['SOURCELIST'] = File.join($builddir, 'librhodes_build.files')
|
1771
1921
|
ENV["ANDROID_NDK"] = $androidndkpath
|
1772
|
-
ENV["ANDROID_API_LEVEL"] = $
|
1922
|
+
ENV["ANDROID_API_LEVEL"] = $min_sdk_level.to_s
|
1773
1923
|
ENV["RHO_ROOT"] = $startdir
|
1774
1924
|
ENV["RHO_INC"] = $appincdir
|
1775
1925
|
ENV["TARGETPATH"] = File.join $app_builddir, 'librhodes', 'lib'
|
@@ -1799,23 +1949,14 @@ namespace "build" do
|
|
1799
1949
|
args << "-L\"#{File.dirname(lib)}\""
|
1800
1950
|
end
|
1801
1951
|
|
1802
|
-
|
1803
|
-
|
1804
|
-
if File.exists? libandroid_support
|
1805
|
-
args << "-L\"#{libandroid_support}\""
|
1806
|
-
args << "-landroid_support"
|
1807
|
-
puts "libandroid_support exists"
|
1808
|
-
end
|
1809
|
-
|
1810
|
-
|
1811
|
-
|
1952
|
+
|
1812
1953
|
deps = []
|
1813
1954
|
libs = []
|
1814
1955
|
|
1815
|
-
|
1816
|
-
deps << File.join(
|
1956
|
+
LibBuilder.results.each do |name, libdir|
|
1957
|
+
deps << File.join( libdir, realabi, "lib#{name}.a" )
|
1817
1958
|
libs << name
|
1818
|
-
args << "-L\"#{
|
1959
|
+
args << "-L\"#{libdir}/#{realabi}\""
|
1819
1960
|
end
|
1820
1961
|
libs.map! { |x| "-l#{x}" }
|
1821
1962
|
|
@@ -1853,7 +1994,7 @@ namespace "build" do
|
|
1853
1994
|
ENV['LINKDEPS'] = (deps+extlibs).join(' ')
|
1854
1995
|
|
1855
1996
|
args = ['-f', "\"#{File.join($builddir,'Rakefile')}\"", "link:#{abi}"]
|
1856
|
-
args << '--trace'
|
1997
|
+
args << '--trace'
|
1857
1998
|
cc_run('rake', args, nil, false, nil, true) or raise "Build failed: rhodes"
|
1858
1999
|
#Jake.run3("rake #{args.join(' ')}")
|
1859
2000
|
end
|
@@ -1885,7 +2026,9 @@ namespace "build" do
|
|
1885
2026
|
|
1886
2027
|
version = version["major"]*1000000 + version["minor"]*10000 + version["patch"]*100 + version["build"]
|
1887
2028
|
|
1888
|
-
usesPermissions = ['android.permission.INTERNET', 'android.permission.PERSISTENT_ACTIVITY', 'android.permission.WAKE_LOCK']
|
2029
|
+
usesPermissions = ['android.permission.RECEIVE_BOOT_COMPLETED', 'android.permission.INTERNET', 'android.permission.PERSISTENT_ACTIVITY', 'android.permission.WAKE_LOCK']
|
2030
|
+
usesPermissions << 'android.permission.FOREGROUND_SERVICE' if ($target_sdk_level >= 28)
|
2031
|
+
|
1889
2032
|
$app_config["capabilities"].each do |cap|
|
1890
2033
|
cap = ANDROID_PERMISSIONS[cap]
|
1891
2034
|
next if cap.nil?
|
@@ -1920,6 +2063,10 @@ namespace "build" do
|
|
1920
2063
|
generator.hardwareAcceleration = true if $app_config["capabilities"].index('hardware_acceleration')
|
1921
2064
|
generator.apikey = $gapikey if $gapikey
|
1922
2065
|
generator.debuggable = $debug
|
2066
|
+
generator.buildSdkVer = $found_api_level
|
2067
|
+
generator.buildToolsVer = $build_tools_ver
|
2068
|
+
generator.androidVerMaj = $major_version
|
2069
|
+
generator.androidVerMin = $minor_version
|
1923
2070
|
|
1924
2071
|
generator.addUriParams $uri_scheme, $uri_host, $uri_path_prefix
|
1925
2072
|
|
@@ -2034,6 +2181,8 @@ namespace "build" do
|
|
2034
2181
|
end
|
2035
2182
|
end
|
2036
2183
|
|
2184
|
+
set_app_name_android_post($appname)
|
2185
|
+
|
2037
2186
|
#copy icon after extension resources in case it overwrites them (like rhoelementsext...)
|
2038
2187
|
set_app_icon_android
|
2039
2188
|
|
@@ -2047,17 +2196,44 @@ namespace "build" do
|
|
2047
2196
|
mkdir_p File.join($applibs,'armeabi')
|
2048
2197
|
mkdir_p File.join($applibs,'armeabi-v7a')
|
2049
2198
|
mkdir_p File.join($applibs,'x86')
|
2199
|
+
mkdir_p File.join($applibs,'arm64-v8a')
|
2200
|
+
|
2050
2201
|
# Add .so libraries
|
2051
2202
|
Dir.glob($app_builddir + "/**/lib*.so").each do |lib|
|
2052
2203
|
arch = File.basename(File.dirname(lib))
|
2053
2204
|
file = File.basename(lib)
|
2205
|
+
arch = 'arm64-v8a' if arch == "aarch64"
|
2054
2206
|
cp_r lib, File.join($applibs,arch,file)
|
2207
|
+
|
2208
|
+
localabi = arch
|
2209
|
+
localabi = "armeabi-v7a" if arch == "armeabi"
|
2210
|
+
llvm_stl = File.join($androidndkpath, "sources", "cxx-stl", "llvm-libc++", "libs", localabi, "libc++_shared.so")
|
2211
|
+
if File.exists? llvm_stl
|
2212
|
+
cp_r llvm_stl, File.join($applibs,arch)
|
2213
|
+
end
|
2055
2214
|
end
|
2056
2215
|
$ext_android_additional_lib.each do |lib|
|
2057
2216
|
arch = File.basename(File.dirname(lib))
|
2058
2217
|
file = File.basename(lib)
|
2059
2218
|
cp_r lib, File.join($applibs,arch,file)
|
2060
2219
|
end
|
2220
|
+
|
2221
|
+
abi_alter_names = { "armeabi" => "arm", "arm64-v8a" => "aarch64", "x86" => "x86", "armeabi-v7a" => "arm", "x86_64" => "x86_64" }
|
2222
|
+
if !$rhodes_as_lib
|
2223
|
+
$android_jni_libs = AndroidTools::MavenDepsExtractor.instance.jni_libs
|
2224
|
+
$android_jni_libs.each do |lib|
|
2225
|
+
arch = File.basename(File.dirname(lib))
|
2226
|
+
if !$abis.include?(abi_alter_names[arch])
|
2227
|
+
next
|
2228
|
+
end
|
2229
|
+
|
2230
|
+
arch = "armeabi" if arch == "armeabi-v7a"
|
2231
|
+
file = File.basename(lib)
|
2232
|
+
if Dir.exists? File.join($applibs,arch)
|
2233
|
+
cp_r lib, File.join($applibs,arch,file)
|
2234
|
+
end
|
2235
|
+
end
|
2236
|
+
end
|
2061
2237
|
print_timestamp('build:android:resources FINISH')
|
2062
2238
|
end
|
2063
2239
|
|
@@ -2167,38 +2343,104 @@ namespace "build" do
|
|
2167
2343
|
task :genrjava => [:manifest, :resources] do
|
2168
2344
|
mkdir_p $app_rjava_dir
|
2169
2345
|
|
2170
|
-
|
2346
|
+
$logger.info "Generate initial R.java at #{$app_rjava_dir}"
|
2171
2347
|
|
2172
|
-
|
2173
|
-
|
2348
|
+
$logger.debug $appres.to_s
|
2349
|
+
$logger.debug $app_rjava_dir.to_s
|
2174
2350
|
|
2175
|
-
|
2351
|
+
unless ($rhodes_as_lib)
|
2352
|
+
Aapt2Helper.instance.build_resources( $build_bundle )
|
2353
|
+
else
|
2354
|
+
mkdir_p $appres_flats
|
2176
2355
|
|
2177
|
-
|
2356
|
+
#walkthrough resources dir
|
2357
|
+
Dir.glob(File.join($appres,'**','*.*')) do |filepath|
|
2358
|
+
args = ["compile", PathToWindowsWay(filepath), "-o", PathToWindowsWay(File.dirname(filepath))]
|
2359
|
+
args << '-v' if Rake.application.options.trace
|
2360
|
+
Jake.run($aapt2, args)
|
2361
|
+
end
|
2178
2362
|
|
2179
|
-
|
2363
|
+
res_dirs = AndroidTools::MavenDepsExtractor.instance.aapt2_res_dirs
|
2364
|
+
res_dirs.each do |dir|
|
2365
|
+
Dir.glob(File.join(dir,'**','*.*')) do |filepath|
|
2366
|
+
args = ["compile", PathToWindowsWay(filepath), "-o", PathToWindowsWay(File.dirname(filepath))]
|
2367
|
+
args << '-v' if Rake.application.options.trace
|
2368
|
+
Jake.run($aapt2, args)
|
2369
|
+
end
|
2370
|
+
end
|
2371
|
+
|
2372
|
+
flaten_list_file_path = File.join($tmpdir, "flaten_list.txt")
|
2373
|
+
File.open(flaten_list_file_path, "w") do |f|
|
2374
|
+
Dir.glob(File.join($appres,'**','*.flat')) do |filepath|
|
2375
|
+
f.write(filepath)
|
2376
|
+
f.write(" ")
|
2377
|
+
end
|
2378
|
+
|
2379
|
+
res_dirs.each do |dir|
|
2380
|
+
Dir.glob(File.join(dir,'**','*.flat')) do |filepath|
|
2381
|
+
f.write(filepath)
|
2382
|
+
f.write(" ")
|
2383
|
+
end
|
2384
|
+
end
|
2385
|
+
end
|
2180
2386
|
|
2181
|
-
|
2182
|
-
|
2387
|
+
FormatManifestToAapt2Compat($appmanifest) #what is that?
|
2388
|
+
|
2389
|
+
args =
|
2390
|
+
[
|
2391
|
+
"link",
|
2392
|
+
"-o", PathToWindowsWay(File.join($bindir, "_tmp.aar")),
|
2393
|
+
"-I", PathToWindowsWay($androidjar),
|
2394
|
+
"--manifest", PathToWindowsWay($appmanifest),
|
2395
|
+
"-A", PathToWindowsWay($appassets),
|
2396
|
+
"--java", PathToWindowsWay($app_rjava_dir),
|
2397
|
+
"-R", "@" + PathToWindowsWay(flaten_list_file_path),
|
2398
|
+
"--auto-add-overlay"
|
2399
|
+
]
|
2400
|
+
|
2401
|
+
args << "--output-text-symbols"
|
2402
|
+
args << PathToWindowsWay(File.join($app_rjava_dir, 'R.txt'))
|
2403
|
+
args << '-v' if Rake.application.options.trace
|
2404
|
+
|
2405
|
+
require 'nokogiri'
|
2406
|
+
|
2407
|
+
FormatManifestToAarCompat($appmanifest)
|
2408
|
+
|
2409
|
+
Jake.run($aapt2, args)
|
2410
|
+
raise 'Error in AAPT2: ' + $aapt2 + " " + args.join(' ') unless $?.success?
|
2411
|
+
|
2412
|
+
#how about some comments on this magic?
|
2413
|
+
if(File.exists?(File.join($app_rjava_dir, 'com', $vendor, $appname, 'R.java')))
|
2414
|
+
cp_r File.join($app_rjava_dir, 'com', $vendor, $appname, 'R.java'), File.join($app_rjava_dir, 'R.java')
|
2415
|
+
rm_rf File.join($app_rjava_dir, 'com', $vendor, $appname, 'R.java')
|
2416
|
+
elsif (File.exists?(File.join($app_rjava_dir, $app_package_name.split('.'), 'R.java')))
|
2417
|
+
cp_r File.join($app_rjava_dir, $app_package_name.split('.'), 'R.java'), File.join($app_rjava_dir, 'R.java')
|
2418
|
+
rm_rf File.join($app_rjava_dir, $app_package_name.split('.'), 'R.java')
|
2419
|
+
end
|
2420
|
+
|
2421
|
+
clear_flats($appres)
|
2422
|
+
res_dirs = AndroidTools::MavenDepsExtractor.instance.aapt2_res_dirs
|
2423
|
+
res_dirs.each do |dir|
|
2424
|
+
clear_flats(dir)
|
2425
|
+
end
|
2426
|
+
end
|
2427
|
+
|
2428
|
+
#We should've generated R.java at this point. Now let's duplicate it for our dependencies substituting package names
|
2429
|
+
packs = AndroidTools::MavenDepsExtractor.instance.extract_packages
|
2430
|
+
packs.each do |p|
|
2183
2431
|
path_to_p = File.join $tmpdir, 'gen', p.split('.')
|
2184
2432
|
mkdir_p path_to_p
|
2185
2433
|
buf = File.new(File.join($app_rjava_dir, "R.java"), "r").read.gsub(/^\s*package\s*#{$app_package_name};\s*$/, "\npackage " + p + ";\n")
|
2186
2434
|
File.open(File.join(path_to_p, "R.java"), "w") { |f| f.write(buf) }
|
2187
2435
|
end
|
2188
2436
|
|
2189
|
-
#buf = File.new($rho_android_r, "r").read.gsub(/^\s*import com\.rhomobile\..*\.R;\s*$/, "\nimport #{$app_package_name}.R;\n")
|
2190
|
-
#File.open($app_android_r, "w") { |f| f.write(buf) }
|
2191
|
-
|
2192
2437
|
mkdir_p File.join($app_rjava_dir, "R") if not File.exists? File.join($app_rjava_dir, "R")
|
2193
2438
|
buf = File.new(File.join($app_rjava_dir, "R.java"), "r").read.gsub(/^\s*package\s*#{$app_package_name};\s*$/, "\npackage com.rhomobile.rhodes;\n")
|
2194
|
-
#buf.gsub!(/public\s*static\s*final\s*int/, "public static int")
|
2195
2439
|
File.open(File.join($app_rjava_dir, "R", "R.java"), "w") { |f| f.write(buf) }
|
2196
2440
|
|
2197
2441
|
$ext_android_library_deps.each do |package, path|
|
2198
|
-
|
2199
2442
|
if !File.directory?(path)
|
2200
2443
|
puts "[WARN] Path for dependency #{package} does not exists (#{path})"
|
2201
|
-
#next
|
2202
2444
|
end
|
2203
2445
|
|
2204
2446
|
next if ((!package) or (package.empty?))
|
@@ -2261,7 +2503,6 @@ namespace "build" do
|
|
2261
2503
|
classpath = $androidjar
|
2262
2504
|
classpath += $path_separator + $google_classpath if $google_classpath
|
2263
2505
|
classpath += $path_separator + File.join($tmpdir, 'Rhodes')
|
2264
|
-
classpath += $path_separator + $v4support_classpath if $v4support_classpath
|
2265
2506
|
classpath += $path_separator + AndroidTools::MavenDepsExtractor.instance.classpath($path_separator)
|
2266
2507
|
|
2267
2508
|
javalibsdir = Jake.get_absolute("platform/android/lib")
|
@@ -2295,7 +2536,6 @@ namespace "build" do
|
|
2295
2536
|
classpath += $path_separator + $google_classpath if $google_classpath
|
2296
2537
|
#######################################################################
|
2297
2538
|
|
2298
|
-
classpath += $path_separator + $v4support_classpath if $v4support_classpath
|
2299
2539
|
classpath += $path_separator + AndroidTools::MavenDepsExtractor.instance.classpath($path_separator)
|
2300
2540
|
classpath += $path_separator + File.join($tmpdir, 'Rhodes')
|
2301
2541
|
Dir.glob(File.join($app_builddir, '**', '*.jar')).each do |jar|
|
@@ -2336,7 +2576,6 @@ namespace "build" do
|
|
2336
2576
|
end
|
2337
2577
|
|
2338
2578
|
print_timestamp('build:android:extensions_java FINISH')
|
2339
|
-
$android_jars << $v4support_classpath if $v4support_classpath
|
2340
2579
|
$android_jars += AndroidTools::MavenDepsExtractor.instance.jars
|
2341
2580
|
end
|
2342
2581
|
|
@@ -2489,20 +2728,180 @@ namespace "build" do
|
|
2489
2728
|
end
|
2490
2729
|
end
|
2491
2730
|
|
2731
|
+
def FormatManifestToAarCompat(path)
|
2732
|
+
doc = File.open(path) { |f| Nokogiri::XML(f) }
|
2733
|
+
root = doc.xpath("//manifest/*")
|
2734
|
+
application = root.xpath("//application/*")
|
2735
|
+
|
2736
|
+
doc2 = doc.xpath("//manifest")
|
2737
|
+
doc2[0].remove_attribute("versionCode")
|
2738
|
+
doc2[0].remove_attribute("installLocation")
|
2739
|
+
doc2[0]["xmlns:tools"] = "http://schemas.android.com/tools"
|
2740
|
+
|
2741
|
+
root.each do |node|
|
2742
|
+
node["tools:node"] = "merge" if node.name.to_s == 'uses-permission'
|
2743
|
+
node["tools:node"] = "merge" if node.name.to_s == 'uses-feature'
|
2744
|
+
if node.name.to_s == 'application'
|
2745
|
+
node["tools:node"] = "merge"
|
2746
|
+
node.remove_attribute("name")
|
2747
|
+
node.remove_attribute("label")
|
2748
|
+
node.remove_attribute("icon")
|
2749
|
+
end
|
2750
|
+
end
|
2751
|
+
|
2752
|
+
application.each do |node|
|
2753
|
+
node["tools:node"] = "merge" if node["tools:node"] != "replace"
|
2754
|
+
if node["android:name"] == 'com.rhomobile.rhodes.RhodesActivity'
|
2755
|
+
intent_filters = node.xpath(".//*/*")
|
2756
|
+
intent_filters.each do |child|
|
2757
|
+
if child["android:name"] == 'android.intent.action.MAIN'
|
2758
|
+
child.parent.remove
|
2759
|
+
end
|
2760
|
+
end
|
2761
|
+
end
|
2762
|
+
end
|
2763
|
+
|
2764
|
+
new_doc = Nokogiri::XML::Document.parse(doc.to_s, nil, "UTF-8")
|
2765
|
+
File.open(path, "w") {|file| file << new_doc.to_xml }
|
2766
|
+
end
|
2767
|
+
|
2768
|
+
|
2769
|
+
def prepare_aar_package
|
2770
|
+
alljars = Dir.glob(File.join($app_builddir, '**', '*.jar'))
|
2771
|
+
#alljars += AndroidTools::MavenDepsExtractor.instance.jars
|
2772
|
+
|
2773
|
+
require 'set'
|
2774
|
+
unique_jars = Set.new
|
2775
|
+
|
2776
|
+
args = ['cvf', 'classes.jar', '-C', '.', '.']
|
2777
|
+
jarNamesCounter = 0
|
2778
|
+
|
2779
|
+
$allclasses = File.join($tmpdir, '.allclasses')
|
2780
|
+
mkdir_p $allclasses
|
2781
|
+
|
2782
|
+
puts "Creating classes.jar for aar package"
|
2783
|
+
|
2784
|
+
if File.exist?(File.join($allclasses, 'classes.jar'))
|
2785
|
+
rm_rf File.join($allclasses, 'classes.jar')
|
2786
|
+
end
|
2787
|
+
|
2788
|
+
alljars.each do |jar|
|
2789
|
+
Zip::File.open(jar) do |archive|
|
2790
|
+
archive.glob("**/*.*").each do |pfile|
|
2791
|
+
next if !(pfile.name =~ /.*\.class$/)
|
2792
|
+
target = File.join($allclasses, pfile.name)
|
2793
|
+
mkdir_p File.dirname(target)
|
2794
|
+
rm target if File.file?(target)
|
2795
|
+
archive.extract( pfile, File.join(target) )
|
2796
|
+
end
|
2797
|
+
end
|
2798
|
+
end
|
2799
|
+
|
2800
|
+
if(Dir.exists?(File.join($allclasses, 'com', $vendor , $appname.downcase)))
|
2801
|
+
FileUtils.remove_dir File.join($allclasses, 'com', $vendor , $appname.downcase)
|
2802
|
+
elsif(Dir.exists?(File.join($allclasses, $app_package_name.split('.'))))
|
2803
|
+
FileUtils.remove_dir File.join($allclasses, $app_package_name.split('.'))
|
2804
|
+
end
|
2805
|
+
|
2806
|
+
#res_dirs = AndroidTools::MavenDepsExtractor.instance.aapt2_res_dirs
|
2807
|
+
#res_dirs.each do |dir|
|
2808
|
+
# Dir.glob(File.join(dir,'**')) do |filepath|
|
2809
|
+
# #cp_r filepath, File.join($tmpdir, 'res', File.basename(filepath) + '-' + File.basename(File.expand_path("..", dir)))
|
2810
|
+
# cp_r filepath, File.join($tmpdir, 'res', File.basename(filepath))
|
2811
|
+
# end
|
2812
|
+
#end
|
2813
|
+
|
2814
|
+
Jake.run($jarbin, args, $allclasses)
|
2815
|
+
|
2816
|
+
unless $?.success?
|
2817
|
+
raise "Error while creating classes.jar"
|
2818
|
+
end
|
2819
|
+
|
2820
|
+
resourcepkg = File.join($bindir, "#{$appname}-#{$app_config["version"]}.aar")
|
2821
|
+
|
2822
|
+
args = ["cvf", resourcepkg, 'classes.jar']
|
2823
|
+
Jake.run($jarbin, args, $allclasses)
|
2824
|
+
unless $?.success?
|
2825
|
+
raise "Error packaging classes.jar file"
|
2826
|
+
end
|
2827
|
+
|
2828
|
+
mkdir_p File.join($tmpdir, 'jni')
|
2829
|
+
|
2830
|
+
Dir.glob(File.join($tmpdir, 'lib', '*')).each do |lib|
|
2831
|
+
cp_r lib, File.join($tmpdir, 'jni')
|
2832
|
+
end
|
2833
|
+
|
2834
|
+
args = ["uf", resourcepkg]
|
2835
|
+
Dir.glob(File.join(File.join($tmpdir, 'jni'),'**','lib*.so')).each do |jni|
|
2836
|
+
arch = File.basename(File.dirname(jni))
|
2837
|
+
args << "jni/#{arch}/#{File.basename(jni)}"
|
2838
|
+
end
|
2839
|
+
Jake.run($jarbin, args, $tmpdir)
|
2840
|
+
unless $?.success?
|
2841
|
+
raise "Error packaging native libraries"
|
2842
|
+
end
|
2843
|
+
|
2844
|
+
args = ["uf", resourcepkg, 'R.txt']
|
2845
|
+
Jake.run($jarbin, args, $app_rjava_dir)
|
2846
|
+
unless $?.success?
|
2847
|
+
raise "Error packaging R.txt file"
|
2848
|
+
end
|
2849
|
+
|
2850
|
+
args = ["uf", resourcepkg, '-C', '.', 'res']
|
2851
|
+
Jake.run($jarbin, args, $tmpdir)
|
2852
|
+
|
2853
|
+
FormatManifestToAarCompat($appmanifest)
|
2854
|
+
args = ["uf", resourcepkg, 'AndroidManifest.xml']
|
2855
|
+
Jake.run($jarbin, args, File.dirname($appmanifest))
|
2856
|
+
|
2857
|
+
end
|
2858
|
+
|
2859
|
+
def create_bundle()
|
2860
|
+
$logger.info "Creating android bundle"
|
2861
|
+
|
2862
|
+
builder = Aapt2Helper.instance
|
2863
|
+
|
2864
|
+
bundle = builder.build_aab
|
2865
|
+
|
2866
|
+
signed_bundle = File.join($targetdir,"#{$appname}-bundle-signed.aab")
|
2867
|
+
|
2868
|
+
builder.debug = $debug
|
2869
|
+
if $debug
|
2870
|
+
builder.keystore = $keystore
|
2871
|
+
builder.keypass = $keypass
|
2872
|
+
builder.storepass = $storepass
|
2873
|
+
builder.storealias = $storealias
|
2874
|
+
end
|
2875
|
+
builder.sign_aab( bundle, signed_bundle )
|
2876
|
+
|
2877
|
+
apk = File.join($targetdir,"#{$appname}-universal.apk")
|
2878
|
+
apks = File.join($targetdir,"#{$appname}.apks")
|
2879
|
+
Jake.run( $javabin, ["-jar", $bundletool, "build-apks","--bundle=#{signed_bundle}", "--output=#{apks}", "--mode=universal"] )
|
2880
|
+
rm apk if File.file? apk
|
2881
|
+
Zip::File.open(apks) { |zip|
|
2882
|
+
e = zip.get_entry('universal.apk')
|
2883
|
+
zip.extract(e,apk)
|
2884
|
+
}
|
2885
|
+
|
2886
|
+
|
2887
|
+
end
|
2888
|
+
|
2492
2889
|
namespace "package" do
|
2493
2890
|
task :android => "build:android:all" do
|
2494
2891
|
print_timestamp('package:android START')
|
2495
|
-
|
2496
|
-
|
2497
|
-
|
2498
|
-
|
2499
|
-
|
2500
|
-
|
2501
|
-
|
2892
|
+
|
2893
|
+
if $rhodes_as_lib
|
2894
|
+
prepare_aar_package()
|
2895
|
+
next
|
2896
|
+
end
|
2897
|
+
|
2898
|
+
$logger.info "Running DEX builder"
|
2502
2899
|
|
2503
2900
|
alljars = Dir.glob(File.join($app_builddir, '**', '*.jar'))
|
2504
2901
|
alljars += AndroidTools::MavenDepsExtractor.instance.jars
|
2505
2902
|
|
2903
|
+
jarsForDX = []
|
2904
|
+
|
2506
2905
|
require 'set'
|
2507
2906
|
unique_jars = Set.new
|
2508
2907
|
|
@@ -2547,7 +2946,7 @@ namespace "package" do
|
|
2547
2946
|
isFromMaven = (basename == 'classes.jar')# && Pathname.new(jar).split.include?('.m2')
|
2548
2947
|
if (!unique_jars.member?(basename)) || isFromMaven
|
2549
2948
|
if !useProguard
|
2550
|
-
|
2949
|
+
jarsForDX << jar
|
2551
2950
|
else
|
2552
2951
|
jarNamesCounter += 1
|
2553
2952
|
cp jar, File.join(proguardPreBuild, jarNamesCounter.to_s + '.jar')
|
@@ -2562,56 +2961,19 @@ namespace "package" do
|
|
2562
2961
|
progArgs << File.join(proguardDir, 'proguard.jar')
|
2563
2962
|
progArgs << '@' + proguardRules
|
2564
2963
|
Jake.run(File.join($java, 'java'+$exe_ext), progArgs)
|
2565
|
-
|
2964
|
+
jarsForDX << File.join(proguardPostBuild, "classes-processed.jar")
|
2566
2965
|
end
|
2567
2966
|
|
2568
|
-
|
2569
|
-
|
2570
|
-
unless $?.success?
|
2571
|
-
raise "Error running DX utility"
|
2967
|
+
unless AndroidTools::DexBuilder.instance.build( jarsForDX, "#{File.join($bindir,'classes.dex')}")
|
2968
|
+
raise "Error running DEX builder"
|
2572
2969
|
end
|
2573
2970
|
|
2574
2971
|
resourcepkg = $bindir + "/rhodes.ap_"
|
2575
2972
|
|
2576
|
-
|
2577
|
-
|
2578
|
-
# this task already caaled during build "build:android:all"
|
2579
|
-
#set_app_name_android($appname)
|
2580
|
-
|
2581
|
-
args = ["package", "-f", "-M", $appmanifest, "-S", $appres, "-A", $appassets, "-I", $androidjar, "-F", resourcepkg]
|
2582
|
-
args += AndroidTools::MavenDepsExtractor.instance.aapt_args
|
2583
|
-
if $no_compression
|
2584
|
-
$no_compression.each do |ext|
|
2585
|
-
args << '-0'
|
2586
|
-
args << ext
|
2587
|
-
end
|
2588
|
-
end
|
2589
|
-
|
2590
|
-
Jake.run($aapt, args)
|
2591
|
-
unless $?.success?
|
2592
|
-
raise "Error running AAPT (1)"
|
2593
|
-
end
|
2594
|
-
|
2595
|
-
# Workaround: manually add files starting with '_' because aapt silently ignore such files when creating package
|
2596
|
-
args = [ USE_TRACES ? "uvf" : "uf", resourcepkg]
|
2597
|
-
|
2598
|
-
skip_underscores = true
|
2599
|
-
|
2600
|
-
Dir.glob(File.join($appassets, "**/*")).each do |f|
|
2601
|
-
next unless File.basename(f) =~ /^_/
|
2602
|
-
relpath = Pathname.new(f).relative_path_from(Pathname.new($tmpdir)).to_s
|
2603
|
-
puts "Add #{relpath} to #{resourcepkg}..."
|
2604
|
-
args << relpath
|
2605
|
-
skip_underscores = false
|
2606
|
-
end
|
2607
|
-
|
2608
|
-
unless skip_underscores
|
2609
|
-
Jake.run($jarbin, args, $tmpdir)
|
2610
|
-
unless $?.success?
|
2611
|
-
raise "Error packaging assets"
|
2612
|
-
end
|
2613
|
-
end
|
2973
|
+
$logger.info "Packaging Assets and Jars"
|
2614
2974
|
|
2975
|
+
Aapt2Helper.instance.build_intermediate_apk(resourcepkg)
|
2976
|
+
|
2615
2977
|
puts "Packaging Native Libs"
|
2616
2978
|
|
2617
2979
|
args = ["uf", resourcepkg]
|
@@ -2655,7 +3017,7 @@ namespace "package" do
|
|
2655
3017
|
end
|
2656
3018
|
end
|
2657
3019
|
|
2658
|
-
args = [
|
3020
|
+
args = [ Rake.application.options.trace ? "uvf" : "uf", resourcepkg]
|
2659
3021
|
|
2660
3022
|
Dir.glob(File.join(respath,"**/*")).each do |f|
|
2661
3023
|
next if not File.file?(f)
|
@@ -2665,8 +3027,12 @@ namespace "package" do
|
|
2665
3027
|
end
|
2666
3028
|
|
2667
3029
|
Jake.run($jarbin, args, respath) if File.directory?(respath)
|
2668
|
-
|
2669
3030
|
rm_rf proguardTempJarDir if File.exists? proguardTempJarDir
|
3031
|
+
|
3032
|
+
if $build_bundle
|
3033
|
+
create_bundle()
|
3034
|
+
end
|
3035
|
+
|
2670
3036
|
puts "Finish packaging"
|
2671
3037
|
print_timestamp('package:android FINISH')
|
2672
3038
|
end
|
@@ -2678,20 +3044,17 @@ namespace "device" do
|
|
2678
3044
|
desc "Build debug self signed for device"
|
2679
3045
|
task :debug => "package:android" do
|
2680
3046
|
print_timestamp('device:android:debug START')
|
2681
|
-
dexfile = $bindir + "/classes.dex"
|
2682
|
-
simple_apkfile = $targetdir + "/" + $appname + "-tmp.apk"
|
2683
|
-
signed_apkfile = $targetdir + "/" + $appname + "-tmp_signed.apk"
|
2684
|
-
final_apkfile = $targetdir + "/" + $appname + "-debug.apk"
|
2685
|
-
resourcepkg = $bindir + "/rhodes.ap_"
|
2686
3047
|
|
2687
|
-
|
3048
|
+
final_apkfile = File.join $targetdir, "#{$appname}-debug.apk"
|
2688
3049
|
|
2689
|
-
|
2690
|
-
|
3050
|
+
builder = ApkBuilder.new
|
3051
|
+
builder.sdk_path = $androidsdkpath
|
3052
|
+
builder.dex_path = File.join $bindir, "classes.dex"
|
3053
|
+
builder.output_path = final_apkfile
|
3054
|
+
builder.res_pkg = File.join $bindir, "rhodes.ap_"
|
3055
|
+
builder.debug = true
|
2691
3056
|
|
2692
|
-
|
2693
|
-
rm_rf simple_apkfile
|
2694
|
-
rm_rf signed_apkfile
|
3057
|
+
builder.build
|
2695
3058
|
|
2696
3059
|
File.open(File.join(File.dirname(final_apkfile), "app_info.txt"), "w") do |f|
|
2697
3060
|
f.puts $app_package_name
|
@@ -2739,25 +3102,25 @@ namespace "device" do
|
|
2739
3102
|
desc "Build production signed for device"
|
2740
3103
|
task :production => "package:android" do
|
2741
3104
|
print_timestamp('device:android:production START')
|
2742
|
-
dexfile = $bindir + "/classes.dex"
|
2743
|
-
simple_apkfile = $targetdir + "/" + $appname + "_tmp.apk"
|
2744
|
-
final_apkfile = $targetdir + "/" + $appname + "_signed.apk"
|
2745
|
-
signed_apkfile = $targetdir + "/" + $appname + "_tmp_signed.apk"
|
2746
|
-
resourcepkg = $bindir + "/rhodes.ap_"
|
2747
|
-
|
2748
|
-
apk_build $androidsdkpath, simple_apkfile, resourcepkg, dexfile, false
|
2749
3105
|
|
2750
3106
|
if not File.exists? $keystore
|
2751
3107
|
AndroidTools.generateKeystore( $keystore, $storealias, $storepass, $keypass )
|
2752
3108
|
end
|
2753
3109
|
|
3110
|
+
final_apkfile = File.join $targetdir, "#{$appname}_signed.apk"
|
2754
3111
|
|
2755
|
-
|
2756
|
-
|
3112
|
+
builder = ApkBuilder.new
|
3113
|
+
builder.sdk_path = $androidsdkpath
|
3114
|
+
builder.dex_path = File.join $bindir,"classes.dex"
|
3115
|
+
builder.output_path = final_apkfile
|
3116
|
+
builder.res_pkg = File.join $bindir, "rhodes.ap_"
|
3117
|
+
builder.debug = false
|
3118
|
+
builder.keystore = $keystore
|
3119
|
+
builder.keypass = $keypass
|
3120
|
+
builder.storepass = $storepass
|
3121
|
+
builder.storealias = $storealias
|
2757
3122
|
|
2758
|
-
|
2759
|
-
rm_rf simple_apkfile
|
2760
|
-
rm_rf signed_apkfile
|
3123
|
+
builder.build
|
2761
3124
|
|
2762
3125
|
File.open(File.join(File.dirname(final_apkfile), "app_info.txt"), "w") do |f|
|
2763
3126
|
f.puts $app_package_name
|
@@ -2794,11 +3157,16 @@ def run_as_spec(device_flag, uninstall_app)
|
|
2794
3157
|
AndroidTools.logclear(device_flag)
|
2795
3158
|
# Start emulator with options: hidden window display and wipe user data
|
2796
3159
|
AndroidTools.run_emulator(:hidden => true, :wipe => true) if device_flag == '-e'
|
2797
|
-
|
3160
|
+
|
3161
|
+
begin
|
3162
|
+
do_uninstall(device_flag)
|
3163
|
+
rescue Exception => e
|
3164
|
+
puts "Uninstalling application exception: " + e.to_s
|
3165
|
+
end
|
2798
3166
|
|
2799
3167
|
# Failsafe to prevent eternal hangs
|
2800
3168
|
Thread.new {
|
2801
|
-
sleep
|
3169
|
+
sleep 10000
|
2802
3170
|
if device_flag == '-e'
|
2803
3171
|
#AndroidTools.kill_adb_and_emulator
|
2804
3172
|
puts "%%% was AndroidTools.kill_adb_and_emulator !!!"
|
@@ -3049,7 +3417,7 @@ namespace "run" do
|
|
3049
3417
|
end
|
3050
3418
|
|
3051
3419
|
task :spec, :uninstall_app do |t, args|
|
3052
|
-
|
3420
|
+
Jake.decorate_spec { run_as_spec('-e', args.uninstall_app) }
|
3053
3421
|
end
|
3054
3422
|
end
|
3055
3423
|
|