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.

91 lines
2.8KB

  1. apply plugin: 'com.android.application'
  2. android {
  3. compileSdkVersion 23
  4. buildToolsVersion "26.0.0"
  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", "-DCMAKE_CXX_FLAGS_DEBUG=-O0", "-DCMAKE_C_FLAGS_DEBUG=-O0"
  52. }
  53. }
  54. }
  55. release_ {
  56. ndk {
  57. abiFilters "arm64-v8a"
  58. }
  59. externalNativeBuild {
  60. cmake {
  61. arguments "-DJUCE_BUILD_CONFIGFURATION=RELEASE", "-DCMAKE_CXX_FLAGS_RELEASE=-Ofast", "-DCMAKE_C_FLAGS_RELEASE=-Ofast"
  62. }
  63. }
  64. }
  65. }
  66. variantFilter { variant ->
  67. def names = variant.flavors*.name
  68. if (names.contains ("debug_")
  69. && variant.buildType.name != "debug") {
  70. setIgnore(true)
  71. }
  72. if (names.contains ("release_")
  73. && variant.buildType.name != "release") {
  74. setIgnore(true)
  75. }
  76. }
  77. repositories {
  78. }
  79. dependencies {
  80. }
  81. }