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.

95 lines
2.8KB

  1. apply plugin: 'com.android.application'
  2. android {
  3. compileSdkVersion 23
  4. buildToolsVersion "25.0.2"
  5. externalNativeBuild {
  6. cmake {
  7. path "CMakeLists.txt"
  8. }
  9. }
  10. signingConfigs {
  11. release {
  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++11", "-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. }
  37. release {
  38. initWith release
  39. debuggable false
  40. jniDebuggable false
  41. signingConfig signingConfigs.release
  42. }
  43. }
  44. productFlavors {
  45. debug_ {
  46. ndk {
  47. abiFilters "arm64-v8a"
  48. }
  49. externalNativeBuild {
  50. cmake {
  51. arguments "-DJUCE_BUILD_CONFIGFURATION=DEBUG"
  52. cFlags "-O0"
  53. cppFlags "-O0"
  54. }
  55. }
  56. }
  57. release_ {
  58. ndk {
  59. abiFilters "arm64-v8a"
  60. }
  61. externalNativeBuild {
  62. cmake {
  63. arguments "-DJUCE_BUILD_CONFIGFURATION=RELEASE"
  64. cFlags "-Ofast"
  65. cppFlags "-Ofast"
  66. }
  67. }
  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. }