]> git.ipfire.org Git - thirdparty/strongswan.git/commitdiff
android: Migrate to the Gradle build system
authorTobias Brunner <tobias@strongswan.org>
Thu, 22 Oct 2015 15:18:14 +0000 (17:18 +0200)
committerTobias Brunner <tobias@strongswan.org>
Thu, 12 Nov 2015 13:11:37 +0000 (14:11 +0100)
This uses a manual way to trigger the NDK build (the default with
on-the-fly Android.mk files does not work for us).

139 files changed:
src/frontends/android/.classpath [deleted file]
src/frontends/android/.gitignore
src/frontends/android/README.ndk
src/frontends/android/app/build.gradle [new file with mode: 0644]
src/frontends/android/app/src/main/AndroidManifest.xml [moved from src/frontends/android/AndroidManifest.xml with 96% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/data/LogContentProvider.java [moved from src/frontends/android/src/org/strongswan/android/data/LogContentProvider.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/data/VpnProfile.java [moved from src/frontends/android/src/org/strongswan/android/data/VpnProfile.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/data/VpnProfileDataSource.java [moved from src/frontends/android/src/org/strongswan/android/data/VpnProfileDataSource.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/data/VpnType.java [moved from src/frontends/android/src/org/strongswan/android/data/VpnType.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/logic/CharonVpnService.java [moved from src/frontends/android/src/org/strongswan/android/logic/CharonVpnService.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/logic/NetworkManager.java [moved from src/frontends/android/src/org/strongswan/android/logic/NetworkManager.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/logic/StrongSwanApplication.java [moved from src/frontends/android/src/org/strongswan/android/logic/StrongSwanApplication.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/logic/TrustedCertificateManager.java [moved from src/frontends/android/src/org/strongswan/android/logic/TrustedCertificateManager.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/logic/VpnStateService.java [moved from src/frontends/android/src/org/strongswan/android/logic/VpnStateService.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/AndroidImc.java [moved from src/frontends/android/src/org/strongswan/android/logic/imc/AndroidImc.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/ImcState.java [moved from src/frontends/android/src/org/strongswan/android/logic/imc/ImcState.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/RemediationInstruction.java [moved from src/frontends/android/src/org/strongswan/android/logic/imc/RemediationInstruction.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/Attribute.java [moved from src/frontends/android/src/org/strongswan/android/logic/imc/attributes/Attribute.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/AttributeType.java [moved from src/frontends/android/src/org/strongswan/android/logic/imc/attributes/AttributeType.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/DeviceIdAttribute.java [moved from src/frontends/android/src/org/strongswan/android/logic/imc/attributes/DeviceIdAttribute.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/InstalledPackagesAttribute.java [moved from src/frontends/android/src/org/strongswan/android/logic/imc/attributes/InstalledPackagesAttribute.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/PortFilterAttribute.java [moved from src/frontends/android/src/org/strongswan/android/logic/imc/attributes/PortFilterAttribute.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/PrivateEnterpriseNumber.java [moved from src/frontends/android/src/org/strongswan/android/logic/imc/attributes/PrivateEnterpriseNumber.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/ProductInformationAttribute.java [moved from src/frontends/android/src/org/strongswan/android/logic/imc/attributes/ProductInformationAttribute.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/SettingsAttribute.java [moved from src/frontends/android/src/org/strongswan/android/logic/imc/attributes/SettingsAttribute.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/StringVersionAttribute.java [moved from src/frontends/android/src/org/strongswan/android/logic/imc/attributes/StringVersionAttribute.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/collectors/Collector.java [moved from src/frontends/android/src/org/strongswan/android/logic/imc/collectors/Collector.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/collectors/DeviceIdCollector.java [moved from src/frontends/android/src/org/strongswan/android/logic/imc/collectors/DeviceIdCollector.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/collectors/InstalledPackagesCollector.java [moved from src/frontends/android/src/org/strongswan/android/logic/imc/collectors/InstalledPackagesCollector.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/collectors/PortFilterCollector.java [moved from src/frontends/android/src/org/strongswan/android/logic/imc/collectors/PortFilterCollector.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/collectors/ProductInformationCollector.java [moved from src/frontends/android/src/org/strongswan/android/logic/imc/collectors/ProductInformationCollector.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/collectors/Protocol.java [moved from src/frontends/android/src/org/strongswan/android/logic/imc/collectors/Protocol.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/collectors/SettingsCollector.java [moved from src/frontends/android/src/org/strongswan/android/logic/imc/collectors/SettingsCollector.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/collectors/StringVersionCollector.java [moved from src/frontends/android/src/org/strongswan/android/logic/imc/collectors/StringVersionCollector.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/security/LocalCertificateKeyStoreProvider.java [moved from src/frontends/android/src/org/strongswan/android/security/LocalCertificateKeyStoreProvider.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/security/LocalCertificateKeyStoreSpi.java [moved from src/frontends/android/src/org/strongswan/android/security/LocalCertificateKeyStoreSpi.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/security/LocalCertificateStore.java [moved from src/frontends/android/src/org/strongswan/android/security/LocalCertificateStore.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/security/TrustedCertificateEntry.java [moved from src/frontends/android/src/org/strongswan/android/security/TrustedCertificateEntry.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/ui/CertificateDeleteConfirmationDialog.java [moved from src/frontends/android/src/org/strongswan/android/ui/CertificateDeleteConfirmationDialog.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/ui/ImcStateFragment.java [moved from src/frontends/android/src/org/strongswan/android/ui/ImcStateFragment.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/ui/LogActivity.java [moved from src/frontends/android/src/org/strongswan/android/ui/LogActivity.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/ui/LogFragment.java [moved from src/frontends/android/src/org/strongswan/android/ui/LogFragment.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/ui/LogScrollView.java [moved from src/frontends/android/src/org/strongswan/android/ui/LogScrollView.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/ui/MainActivity.java [moved from src/frontends/android/src/org/strongswan/android/ui/MainActivity.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/ui/RemediationInstructionFragment.java [moved from src/frontends/android/src/org/strongswan/android/ui/RemediationInstructionFragment.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/ui/RemediationInstructionsActivity.java [moved from src/frontends/android/src/org/strongswan/android/ui/RemediationInstructionsActivity.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/ui/RemediationInstructionsFragment.java [moved from src/frontends/android/src/org/strongswan/android/ui/RemediationInstructionsFragment.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/ui/TrustedCertificateImportActivity.java [moved from src/frontends/android/src/org/strongswan/android/ui/TrustedCertificateImportActivity.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/ui/TrustedCertificateListFragment.java [moved from src/frontends/android/src/org/strongswan/android/ui/TrustedCertificateListFragment.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/ui/TrustedCertificatesActivity.java [moved from src/frontends/android/src/org/strongswan/android/ui/TrustedCertificatesActivity.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/ui/VpnProfileDetailActivity.java [moved from src/frontends/android/src/org/strongswan/android/ui/VpnProfileDetailActivity.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/ui/VpnProfileListFragment.java [moved from src/frontends/android/src/org/strongswan/android/ui/VpnProfileListFragment.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/ui/VpnProfileSelectActivity.java [moved from src/frontends/android/src/org/strongswan/android/ui/VpnProfileSelectActivity.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/ui/VpnStateFragment.java [moved from src/frontends/android/src/org/strongswan/android/ui/VpnStateFragment.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/ui/adapter/RemediationInstructionAdapter.java [moved from src/frontends/android/src/org/strongswan/android/ui/adapter/RemediationInstructionAdapter.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/ui/adapter/TrustedCertificateAdapter.java [moved from src/frontends/android/src/org/strongswan/android/ui/adapter/TrustedCertificateAdapter.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/ui/adapter/VpnProfileAdapter.java [moved from src/frontends/android/src/org/strongswan/android/ui/adapter/VpnProfileAdapter.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/utils/BufferedByteWriter.java [moved from src/frontends/android/src/org/strongswan/android/utils/BufferedByteWriter.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/utils/SettingsWriter.java [moved from src/frontends/android/src/org/strongswan/android/utils/SettingsWriter.java with 100% similarity]
src/frontends/android/app/src/main/java/org/strongswan/android/utils/Utils.java [moved from src/frontends/android/src/org/strongswan/android/utils/Utils.java with 100% similarity]
src/frontends/android/app/src/main/jni/.gitignore [moved from src/frontends/android/jni/.gitignore with 100% similarity]
src/frontends/android/app/src/main/jni/Android.mk [moved from src/frontends/android/jni/Android.mk with 100% similarity]
src/frontends/android/app/src/main/jni/Application.mk [moved from src/frontends/android/jni/Application.mk with 100% similarity]
src/frontends/android/app/src/main/jni/libandroidbridge/Android.mk [moved from src/frontends/android/jni/libandroidbridge/Android.mk with 100% similarity]
src/frontends/android/app/src/main/jni/libandroidbridge/android_jni.c [moved from src/frontends/android/jni/libandroidbridge/android_jni.c with 100% similarity]
src/frontends/android/app/src/main/jni/libandroidbridge/android_jni.h [moved from src/frontends/android/jni/libandroidbridge/android_jni.h with 100% similarity]
src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_attr.c [moved from src/frontends/android/jni/libandroidbridge/backend/android_attr.c with 100% similarity]
src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_attr.h [moved from src/frontends/android/jni/libandroidbridge/backend/android_attr.h with 100% similarity]
src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_creds.c [moved from src/frontends/android/jni/libandroidbridge/backend/android_creds.c with 100% similarity]
src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_creds.h [moved from src/frontends/android/jni/libandroidbridge/backend/android_creds.h with 100% similarity]
src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_dns_proxy.c [moved from src/frontends/android/jni/libandroidbridge/backend/android_dns_proxy.c with 100% similarity]
src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_dns_proxy.h [moved from src/frontends/android/jni/libandroidbridge/backend/android_dns_proxy.h with 100% similarity]
src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_private_key.c [moved from src/frontends/android/jni/libandroidbridge/backend/android_private_key.c with 100% similarity]
src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_private_key.h [moved from src/frontends/android/jni/libandroidbridge/backend/android_private_key.h with 100% similarity]
src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_service.c [moved from src/frontends/android/jni/libandroidbridge/backend/android_service.c with 100% similarity]
src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_service.h [moved from src/frontends/android/jni/libandroidbridge/backend/android_service.h with 100% similarity]
src/frontends/android/app/src/main/jni/libandroidbridge/byod/imc_android.c [moved from src/frontends/android/jni/libandroidbridge/byod/imc_android.c with 100% similarity]
src/frontends/android/app/src/main/jni/libandroidbridge/byod/imc_android.h [moved from src/frontends/android/jni/libandroidbridge/byod/imc_android.h with 100% similarity]
src/frontends/android/app/src/main/jni/libandroidbridge/byod/imc_android_state.c [moved from src/frontends/android/jni/libandroidbridge/byod/imc_android_state.c with 100% similarity]
src/frontends/android/app/src/main/jni/libandroidbridge/byod/imc_android_state.h [moved from src/frontends/android/jni/libandroidbridge/byod/imc_android_state.h with 100% similarity]
src/frontends/android/app/src/main/jni/libandroidbridge/charonservice.c [moved from src/frontends/android/jni/libandroidbridge/charonservice.c with 100% similarity]
src/frontends/android/app/src/main/jni/libandroidbridge/charonservice.h [moved from src/frontends/android/jni/libandroidbridge/charonservice.h with 100% similarity]
src/frontends/android/app/src/main/jni/libandroidbridge/kernel/android_ipsec.c [moved from src/frontends/android/jni/libandroidbridge/kernel/android_ipsec.c with 100% similarity]
src/frontends/android/app/src/main/jni/libandroidbridge/kernel/android_ipsec.h [moved from src/frontends/android/jni/libandroidbridge/kernel/android_ipsec.h with 100% similarity]
src/frontends/android/app/src/main/jni/libandroidbridge/kernel/android_net.c [moved from src/frontends/android/jni/libandroidbridge/kernel/android_net.c with 100% similarity]
src/frontends/android/app/src/main/jni/libandroidbridge/kernel/android_net.h [moved from src/frontends/android/jni/libandroidbridge/kernel/android_net.h with 100% similarity]
src/frontends/android/app/src/main/jni/libandroidbridge/kernel/network_manager.c [moved from src/frontends/android/jni/libandroidbridge/kernel/network_manager.c with 100% similarity]
src/frontends/android/app/src/main/jni/libandroidbridge/kernel/network_manager.h [moved from src/frontends/android/jni/libandroidbridge/kernel/network_manager.h with 100% similarity]
src/frontends/android/app/src/main/jni/libandroidbridge/vpnservice_builder.c [moved from src/frontends/android/jni/libandroidbridge/vpnservice_builder.c with 100% similarity]
src/frontends/android/app/src/main/jni/libandroidbridge/vpnservice_builder.h [moved from src/frontends/android/jni/libandroidbridge/vpnservice_builder.h with 100% similarity]
src/frontends/android/app/src/main/res/drawable-hdpi/ic_launcher.png [moved from src/frontends/android/res/drawable-hdpi/ic_launcher.png with 100% similarity]
src/frontends/android/app/src/main/res/drawable-mdpi/ic_launcher.png [moved from src/frontends/android/res/drawable-mdpi/ic_launcher.png with 100% similarity]
src/frontends/android/app/src/main/res/drawable-xhdpi/ic_launcher.png [moved from src/frontends/android/res/drawable-xhdpi/ic_launcher.png with 100% similarity]
src/frontends/android/app/src/main/res/drawable/remediation_instruction_background_large.xml [moved from src/frontends/android/res/drawable/remediation_instruction_background_large.xml with 100% similarity]
src/frontends/android/app/src/main/res/drawable/state_background.xml [moved from src/frontends/android/res/drawable/state_background.xml with 100% similarity]
src/frontends/android/app/src/main/res/layout-large/remediation_instructions.xml [moved from src/frontends/android/res/layout-large/remediation_instructions.xml with 100% similarity]
src/frontends/android/app/src/main/res/layout/imc_state_fragment.xml [moved from src/frontends/android/res/layout/imc_state_fragment.xml with 100% similarity]
src/frontends/android/app/src/main/res/layout/log_activity.xml [moved from src/frontends/android/res/layout/log_activity.xml with 100% similarity]
src/frontends/android/app/src/main/res/layout/log_fragment.xml [moved from src/frontends/android/res/layout/log_fragment.xml with 100% similarity]
src/frontends/android/app/src/main/res/layout/login_dialog.xml [moved from src/frontends/android/res/layout/login_dialog.xml with 100% similarity]
src/frontends/android/app/src/main/res/layout/main.xml [moved from src/frontends/android/res/layout/main.xml with 100% similarity]
src/frontends/android/app/src/main/res/layout/profile_detail_view.xml [moved from src/frontends/android/res/layout/profile_detail_view.xml with 100% similarity]
src/frontends/android/app/src/main/res/layout/profile_list_fragment.xml [moved from src/frontends/android/res/layout/profile_list_fragment.xml with 100% similarity]
src/frontends/android/app/src/main/res/layout/profile_list_item.xml [moved from src/frontends/android/res/layout/profile_list_item.xml with 100% similarity]
src/frontends/android/app/src/main/res/layout/remediation_instruction.xml [moved from src/frontends/android/res/layout/remediation_instruction.xml with 100% similarity]
src/frontends/android/app/src/main/res/layout/remediation_instruction_item.xml [moved from src/frontends/android/res/layout/remediation_instruction_item.xml with 100% similarity]
src/frontends/android/app/src/main/res/layout/remediation_instructions.xml [moved from src/frontends/android/res/layout/remediation_instructions.xml with 100% similarity]
src/frontends/android/app/src/main/res/layout/trusted_certificates_activity.xml [moved from src/frontends/android/res/layout/trusted_certificates_activity.xml with 100% similarity]
src/frontends/android/app/src/main/res/layout/trusted_certificates_item.xml [moved from src/frontends/android/res/layout/trusted_certificates_item.xml with 100% similarity]
src/frontends/android/app/src/main/res/layout/two_line_button.xml [moved from src/frontends/android/res/layout/two_line_button.xml with 100% similarity]
src/frontends/android/app/src/main/res/layout/vpn_profile_select.xml [moved from src/frontends/android/res/layout/vpn_profile_select.xml with 100% similarity]
src/frontends/android/app/src/main/res/layout/vpn_state_fragment.xml [moved from src/frontends/android/res/layout/vpn_state_fragment.xml with 100% similarity]
src/frontends/android/app/src/main/res/menu/certificates.xml [moved from src/frontends/android/res/menu/certificates.xml with 100% similarity]
src/frontends/android/app/src/main/res/menu/log.xml [moved from src/frontends/android/res/menu/log.xml with 100% similarity]
src/frontends/android/app/src/main/res/menu/main.xml [moved from src/frontends/android/res/menu/main.xml with 100% similarity]
src/frontends/android/app/src/main/res/menu/profile_edit.xml [moved from src/frontends/android/res/menu/profile_edit.xml with 100% similarity]
src/frontends/android/app/src/main/res/menu/profile_list.xml [moved from src/frontends/android/res/menu/profile_list.xml with 100% similarity]
src/frontends/android/app/src/main/res/menu/profile_list_context.xml [moved from src/frontends/android/res/menu/profile_list_context.xml with 100% similarity]
src/frontends/android/app/src/main/res/values-de/arrays.xml [moved from src/frontends/android/res/values-de/arrays.xml with 100% similarity]
src/frontends/android/app/src/main/res/values-de/strings.xml [moved from src/frontends/android/res/values-de/strings.xml with 100% similarity]
src/frontends/android/app/src/main/res/values-pl/arrays.xml [moved from src/frontends/android/res/values-pl/arrays.xml with 100% similarity]
src/frontends/android/app/src/main/res/values-pl/strings.xml [moved from src/frontends/android/res/values-pl/strings.xml with 100% similarity]
src/frontends/android/app/src/main/res/values-ru/arrays.xml [moved from src/frontends/android/res/values-ru/arrays.xml with 100% similarity]
src/frontends/android/app/src/main/res/values-ru/strings.xml [moved from src/frontends/android/res/values-ru/strings.xml with 100% similarity]
src/frontends/android/app/src/main/res/values-ua/arrays.xml [moved from src/frontends/android/res/values-ua/arrays.xml with 100% similarity]
src/frontends/android/app/src/main/res/values-ua/strings.xml [moved from src/frontends/android/res/values-ua/strings.xml with 100% similarity]
src/frontends/android/app/src/main/res/values/arrays.xml [moved from src/frontends/android/res/values/arrays.xml with 100% similarity]
src/frontends/android/app/src/main/res/values/attrs.xml [moved from src/frontends/android/res/values/attrs.xml with 100% similarity]
src/frontends/android/app/src/main/res/values/colors.xml [moved from src/frontends/android/res/values/colors.xml with 100% similarity]
src/frontends/android/app/src/main/res/values/strings.xml [moved from src/frontends/android/res/values/strings.xml with 100% similarity]
src/frontends/android/app/src/main/res/values/styles.xml [moved from src/frontends/android/res/values/styles.xml with 100% similarity]
src/frontends/android/build.gradle [new file with mode: 0644]
src/frontends/android/gradle/wrapper/gradle-wrapper.jar [new file with mode: 0644]
src/frontends/android/gradle/wrapper/gradle-wrapper.properties [new file with mode: 0644]
src/frontends/android/gradlew [new file with mode: 0755]
src/frontends/android/gradlew.bat [new file with mode: 0644]
src/frontends/android/proguard.cfg [deleted file]
src/frontends/android/project.properties [deleted file]
src/frontends/android/settings.gradle [new file with mode: 0644]

diff --git a/src/frontends/android/.classpath b/src/frontends/android/.classpath
deleted file mode 100644 (file)
index 5176974..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-       <classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
-       <classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>
-       <classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.DEPENDENCIES"/>
-       <classpathentry kind="src" path="src"/>
-       <classpathentry kind="src" path="gen"/>
-       <classpathentry kind="output" path="bin/classes"/>
-</classpath>
index a031dba583606783c8bc37b84ed169b66a242207..7e4bcfd4e5b649bcd1aba8885225d273867b2b90 100644 (file)
@@ -1,4 +1,7 @@
-bin/
-gen/
-libs/
-obj/
+.gradle/
+.idea/
+app/build/
+app/src/main/libs
+app/src/main/obj
+*.iml
+local.properties
index 699fa3f119c990f8fad6e02a3031f73a631fef2b..7c8cd309e98a8f1330e668156c44af176cb4076f 100644 (file)
@@ -1,5 +1,5 @@
-To build this within the NDK several things have to be added in the jni
-folder:
+To build this within the NDK several things have to be added in the
+app/src/main/jni/ folder:
 
  - strongswan: The strongSwan sources.  This can either be an extracted tarball,
    or a symlink to the Git repository.  To build from the repository the sources
diff --git a/src/frontends/android/app/build.gradle b/src/frontends/android/app/build.gradle
new file mode 100644 (file)
index 0000000..8280f50
--- /dev/null
@@ -0,0 +1,42 @@
+apply plugin: 'com.android.application'
+
+android {
+    compileSdkVersion 21
+    buildToolsVersion "22.0.1"
+
+    defaultConfig {
+        applicationId "org.strongswan.android"
+        minSdkVersion 15
+        targetSdkVersion 22
+        versionCode 28
+        versionName "1.5.0"
+    }
+
+    sourceSets.main {
+        jni.srcDirs = [] // disables the default ndk-build call (with on-the-fly Android.mk files)
+        jniLibs.srcDir 'src/main/libs'
+    }
+
+    task buildNative(type: Exec) {
+        workingDir 'src/main/jni'
+        commandLine "${android.ndkDirectory}/ndk-build", '-j', Runtime.runtime.availableProcessors()
+    }
+
+    task cleanNative(type: Exec) {
+        workingDir 'src/main/jni'
+        commandLine "${android.ndkDirectory}/ndk-build", 'clean'
+    }
+
+    tasks.withType(JavaCompile) {
+        compileTask -> compileTask.dependsOn buildNative
+    }
+
+    clean.dependsOn 'cleanNative'
+
+    buildTypes {
+        release {
+            minifyEnabled false
+            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
+        }
+    }
+}
similarity index 96%
rename from src/frontends/android/AndroidManifest.xml
rename to src/frontends/android/app/src/main/AndroidManifest.xml
index 65a8275dee503ef124b0737c576116c716b22ca4..2ab833cdb7c87f3545cf23c5eed37a6433945bf1 100644 (file)
     for more details.
 -->
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
-    package="org.strongswan.android"
-    android:versionCode="28"
-    android:versionName="1.5.0" >
-
-    <uses-sdk android:minSdkVersion="15" android:targetSdkVersion="22" />
+    package="org.strongswan.android">
 
     <uses-permission android:name="android.permission.INTERNET" />
     <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
diff --git a/src/frontends/android/build.gradle b/src/frontends/android/build.gradle
new file mode 100644 (file)
index 0000000..9b18c6e
--- /dev/null
@@ -0,0 +1,14 @@
+buildscript {
+    repositories {
+        jcenter()
+    }
+    dependencies {
+        classpath 'com.android.tools.build:gradle:1.3.0'
+    }
+}
+
+allprojects {
+    repositories {
+        jcenter()
+    }
+}
diff --git a/src/frontends/android/gradle/wrapper/gradle-wrapper.jar b/src/frontends/android/gradle/wrapper/gradle-wrapper.jar
new file mode 100644 (file)
index 0000000..8c0fb64
Binary files /dev/null and b/src/frontends/android/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/src/frontends/android/gradle/wrapper/gradle-wrapper.properties b/src/frontends/android/gradle/wrapper/gradle-wrapper.properties
new file mode 100644 (file)
index 0000000..0c71e76
--- /dev/null
@@ -0,0 +1,6 @@
+#Wed Apr 10 15:27:10 PDT 2013
+distributionBase=GRADLE_USER_HOME
+distributionPath=wrapper/dists
+zipStoreBase=GRADLE_USER_HOME
+zipStorePath=wrapper/dists
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/src/frontends/android/gradlew b/src/frontends/android/gradlew
new file mode 100755 (executable)
index 0000000..91a7e26
--- /dev/null
@@ -0,0 +1,164 @@
+#!/usr/bin/env bash
+
+##############################################################################
+##
+##  Gradle start up script for UN*X
+##
+##############################################################################
+
+# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
+DEFAULT_JVM_OPTS=""
+
+APP_NAME="Gradle"
+APP_BASE_NAME=`basename "$0"`
+
+# Use the maximum available, or set MAX_FD != -1 to use that value.
+MAX_FD="maximum"
+
+warn ( ) {
+    echo "$*"
+}
+
+die ( ) {
+    echo
+    echo "$*"
+    echo
+    exit 1
+}
+
+# OS specific support (must be 'true' or 'false').
+cygwin=false
+msys=false
+darwin=false
+case "`uname`" in
+  CYGWIN* )
+    cygwin=true
+    ;;
+  Darwin* )
+    darwin=true
+    ;;
+  MINGW* )
+    msys=true
+    ;;
+esac
+
+# For Cygwin, ensure paths are in UNIX format before anything is touched.
+if $cygwin ; then
+    [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
+fi
+
+# Attempt to set APP_HOME
+# Resolve links: $0 may be a link
+PRG="$0"
+# Need this for relative symlinks.
+while [ -h "$PRG" ] ; do
+    ls=`ls -ld "$PRG"`
+    link=`expr "$ls" : '.*-> \(.*\)$'`
+    if expr "$link" : '/.*' > /dev/null; then
+        PRG="$link"
+    else
+        PRG=`dirname "$PRG"`"/$link"
+    fi
+done
+SAVED="`pwd`"
+cd "`dirname \"$PRG\"`/" >&-
+APP_HOME="`pwd -P`"
+cd "$SAVED" >&-
+
+CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
+
+# Determine the Java command to use to start the JVM.
+if [ -n "$JAVA_HOME" ] ; then
+    if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
+        # IBM's JDK on AIX uses strange locations for the executables
+        JAVACMD="$JAVA_HOME/jre/sh/java"
+    else
+        JAVACMD="$JAVA_HOME/bin/java"
+    fi
+    if [ ! -x "$JAVACMD" ] ; then
+        die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
+
+Please set the JAVA_HOME variable in your environment to match the
+location of your Java installation."
+    fi
+else
+    JAVACMD="java"
+    which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+
+Please set the JAVA_HOME variable in your environment to match the
+location of your Java installation."
+fi
+
+# Increase the maximum file descriptors if we can.
+if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then
+    MAX_FD_LIMIT=`ulimit -H -n`
+    if [ $? -eq 0 ] ; then
+        if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
+            MAX_FD="$MAX_FD_LIMIT"
+        fi
+        ulimit -n $MAX_FD
+        if [ $? -ne 0 ] ; then
+            warn "Could not set maximum file descriptor limit: $MAX_FD"
+        fi
+    else
+        warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
+    fi
+fi
+
+# For Darwin, add options to specify how the application appears in the dock
+if $darwin; then
+    GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
+fi
+
+# For Cygwin, switch paths to Windows format before running java
+if $cygwin ; then
+    APP_HOME=`cygpath --path --mixed "$APP_HOME"`
+    CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
+
+    # We build the pattern for arguments to be converted via cygpath
+    ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
+    SEP=""
+    for dir in $ROOTDIRSRAW ; do
+        ROOTDIRS="$ROOTDIRS$SEP$dir"
+        SEP="|"
+    done
+    OURCYGPATTERN="(^($ROOTDIRS))"
+    # Add a user-defined pattern to the cygpath arguments
+    if [ "$GRADLE_CYGPATTERN" != "" ] ; then
+        OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
+    fi
+    # Now convert the arguments - kludge to limit ourselves to /bin/sh
+    i=0
+    for arg in "$@" ; do
+        CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
+        CHECK2=`echo "$arg"|egrep -c "^-"`                                 ### Determine if an option
+
+        if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then                    ### Added a condition
+            eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
+        else
+            eval `echo args$i`="\"$arg\""
+        fi
+        i=$((i+1))
+    done
+    case $i in
+        (0) set -- ;;
+        (1) set -- "$args0" ;;
+        (2) set -- "$args0" "$args1" ;;
+        (3) set -- "$args0" "$args1" "$args2" ;;
+        (4) set -- "$args0" "$args1" "$args2" "$args3" ;;
+        (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
+        (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
+        (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
+        (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
+        (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
+    esac
+fi
+
+# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules
+function splitJvmOpts() {
+    JVM_OPTS=("$@")
+}
+eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS
+JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME"
+
+exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@"
diff --git a/src/frontends/android/gradlew.bat b/src/frontends/android/gradlew.bat
new file mode 100644 (file)
index 0000000..aec9973
--- /dev/null
@@ -0,0 +1,90 @@
+@if "%DEBUG%" == "" @echo off\r
+@rem ##########################################################################\r
+@rem\r
+@rem  Gradle startup script for Windows\r
+@rem\r
+@rem ##########################################################################\r
+\r
+@rem Set local scope for the variables with windows NT shell\r
+if "%OS%"=="Windows_NT" setlocal\r
+\r
+@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.\r
+set DEFAULT_JVM_OPTS=\r
+\r
+set DIRNAME=%~dp0\r
+if "%DIRNAME%" == "" set DIRNAME=.\r
+set APP_BASE_NAME=%~n0\r
+set APP_HOME=%DIRNAME%\r
+\r
+@rem Find java.exe\r
+if defined JAVA_HOME goto findJavaFromJavaHome\r
+\r
+set JAVA_EXE=java.exe\r
+%JAVA_EXE% -version >NUL 2>&1\r
+if "%ERRORLEVEL%" == "0" goto init\r
+\r
+echo.\r
+echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.\r
+echo.\r
+echo Please set the JAVA_HOME variable in your environment to match the\r
+echo location of your Java installation.\r
+\r
+goto fail\r
+\r
+:findJavaFromJavaHome\r
+set JAVA_HOME=%JAVA_HOME:"=%\r
+set JAVA_EXE=%JAVA_HOME%/bin/java.exe\r
+\r
+if exist "%JAVA_EXE%" goto init\r
+\r
+echo.\r
+echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%\r
+echo.\r
+echo Please set the JAVA_HOME variable in your environment to match the\r
+echo location of your Java installation.\r
+\r
+goto fail\r
+\r
+:init\r
+@rem Get command-line arguments, handling Windowz variants\r
+\r
+if not "%OS%" == "Windows_NT" goto win9xME_args\r
+if "%@eval[2+2]" == "4" goto 4NT_args\r
+\r
+:win9xME_args\r
+@rem Slurp the command line arguments.\r
+set CMD_LINE_ARGS=\r
+set _SKIP=2\r
+\r
+:win9xME_args_slurp\r
+if "x%~1" == "x" goto execute\r
+\r
+set CMD_LINE_ARGS=%*\r
+goto execute\r
+\r
+:4NT_args\r
+@rem Get arguments from the 4NT Shell from JP Software\r
+set CMD_LINE_ARGS=%$\r
+\r
+:execute\r
+@rem Setup the command line\r
+\r
+set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar\r
+\r
+@rem Execute Gradle\r
+"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%\r
+\r
+:end\r
+@rem End local scope for the variables with windows NT shell\r
+if "%ERRORLEVEL%"=="0" goto mainEnd\r
+\r
+:fail\r
+rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of\r
+rem the _cmd.exe /c_ return code!\r
+if  not "" == "%GRADLE_EXIT_CONSOLE%" exit 1\r
+exit /b 1\r
+\r
+:mainEnd\r
+if "%OS%"=="Windows_NT" endlocal\r
+\r
+:omega\r
diff --git a/src/frontends/android/proguard.cfg b/src/frontends/android/proguard.cfg
deleted file mode 100644 (file)
index b1cdf17..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
--optimizationpasses 5
--dontusemixedcaseclassnames
--dontskipnonpubliclibraryclasses
--dontpreverify
--verbose
--optimizations !code/simplification/arithmetic,!field/*,!class/merging/*
-
--keep public class * extends android.app.Activity
--keep public class * extends android.app.Application
--keep public class * extends android.app.Service
--keep public class * extends android.content.BroadcastReceiver
--keep public class * extends android.content.ContentProvider
--keep public class * extends android.app.backup.BackupAgentHelper
--keep public class * extends android.preference.Preference
--keep public class com.android.vending.licensing.ILicensingService
-
--keepclasseswithmembernames class * {
-    native <methods>;
-}
-
--keepclasseswithmembers class * {
-    public <init>(android.content.Context, android.util.AttributeSet);
-}
-
--keepclasseswithmembers class * {
-    public <init>(android.content.Context, android.util.AttributeSet, int);
-}
-
--keepclassmembers class * extends android.app.Activity {
-   public void *(android.view.View);
-}
-
--keepclassmembers enum * {
-    public static **[] values();
-    public static ** valueOf(java.lang.String);
-}
-
--keep class * implements android.os.Parcelable {
-  public static final android.os.Parcelable$Creator *;
-}
diff --git a/src/frontends/android/project.properties b/src/frontends/android/project.properties
deleted file mode 100644 (file)
index bbe203c..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-# This file is automatically generated by Android Tools.
-# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
-#
-# This file must be checked in Version Control Systems.
-#
-# To customize properties used by the Ant build system use,
-# "ant.properties", and override values to adapt the script to your
-# project structure.
-
-# Project target.
-target=android-21
diff --git a/src/frontends/android/settings.gradle b/src/frontends/android/settings.gradle
new file mode 100644 (file)
index 0000000..e7b4def
--- /dev/null
@@ -0,0 +1 @@
+include ':app'