The JUCE cross-platform C++ framework, with DISTRHO/KXStudio specific changes
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

98 lines
2.9KB

  1. apply plugin: 'com.android.application'
  2. android {
  3. compileSdkVersion 23
  4. buildToolsVersion "27.0.3"
  5. externalNativeBuild {
  6. cmake {
  7. path "CMakeLists.txt"
  8. }
  9. }
  10. signingConfigs {
  11. juceSigning {
  12. storeFile file("${System.properties['user.home']}${File.separator}.android${File.separator}debug.keystore")
  13. storePassword "android"
  14. keyAlias "androiddebugkey"
  15. keyPassword "android"
  16. storeType "jks"
  17. }
  18. }
  19. defaultConfig {
  20. applicationId "com.juce.audioperformancetest"
  21. minSdkVersion 23
  22. targetSdkVersion 23
  23. externalNativeBuild {
  24. cmake {
  25. arguments "-DANDROID_TOOLCHAIN=clang", "-DANDROID_PLATFORM=android-23", "-DANDROID_STL=c++_static", "-DANDROID_CPP_FEATURES=exceptions rtti", "-DANDROID_ARM_MODE=arm", "-DANDROID_ARM_NEON=TRUE"
  26. cFlags "-fsigned-char", "-mfpu=neon", "-mfloat-abi=hard", "-ffast-math", "-funroll-loops", "--param", "max-unroll-times=8", "-mhard-float", "-D_NDK_MATH_NO_SOFTFP=1", "-DJUCE_DISABLE_ASSERTIONS=1"
  27. cppFlags "-fsigned-char", "-std=c++14", "-mfpu=neon", "-mfloat-abi=hard", "-ffast-math", "-funroll-loops", "--param", "max-unroll-times=8", "-mhard-float", "-D_NDK_MATH_NO_SOFTFP=1", "-DJUCE_DISABLE_ASSERTIONS=1"
  28. }
  29. }
  30. }
  31. buildTypes {
  32. debug {
  33. initWith debug
  34. debuggable true
  35. jniDebuggable true
  36. signingConfig signingConfigs.juceSigning
  37. }
  38. release {
  39. initWith release
  40. debuggable false
  41. jniDebuggable false
  42. signingConfig signingConfigs.juceSigning
  43. }
  44. }
  45. flavorDimensions "default"
  46. productFlavors {
  47. debug_ {
  48. ndk {
  49. abiFilters "arm64-v8a"
  50. }
  51. externalNativeBuild {
  52. cmake {
  53. arguments "-DJUCE_BUILD_CONFIGURATION=DEBUG", "-DCMAKE_CXX_FLAGS_DEBUG=-O0", "-DCMAKE_C_FLAGS_DEBUG=-O0"
  54. }
  55. }
  56. dimension "default"
  57. }
  58. release_ {
  59. ndk {
  60. abiFilters "arm64-v8a"
  61. }
  62. externalNativeBuild {
  63. cmake {
  64. arguments "-DJUCE_BUILD_CONFIGURATION=RELEASE", "-DCMAKE_CXX_FLAGS_RELEASE=-Ofast", "-DCMAKE_C_FLAGS_RELEASE=-Ofast"
  65. }
  66. }
  67. dimension "default"
  68. }
  69. }
  70. variantFilter { variant ->
  71. def names = variant.flavors*.name
  72. if (names.contains ("debug_")
  73. && variant.buildType.name != "debug") {
  74. setIgnore(true)
  75. }
  76. if (names.contains ("release_")
  77. && variant.buildType.name != "release") {
  78. setIgnore(true)
  79. }
  80. }
  81. repositories {
  82. }
  83. dependencies {
  84. }
  85. }