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.

104 lines
2.7KB

  1. apply plugin: 'com.android.application'
  2. android {
  3. compileSdkVersion 28
  4. externalNativeBuild {
  5. cmake {
  6. path "CMakeLists.txt"
  7. }
  8. }
  9. signingConfigs {
  10. juceSigning {
  11. storeFile file("${System.properties['user.home']}${File.separator}.android${File.separator}debug.keystore")
  12. storePassword "android"
  13. keyAlias "androiddebugkey"
  14. keyPassword "android"
  15. storeType "jks"
  16. }
  17. }
  18. defaultConfig {
  19. applicationId "com.juce.networkgraphicsdemo"
  20. minSdkVersion 16
  21. targetSdkVersion 28
  22. externalNativeBuild {
  23. cmake {
  24. arguments "-DANDROID_TOOLCHAIN=clang", "-DANDROID_PLATFORM=android-16", "-DANDROID_STL=c++_static", "-DANDROID_CPP_FEATURES=exceptions rtti", "-DANDROID_ARM_MODE=arm", "-DANDROID_ARM_NEON=TRUE"
  25. cFlags "-fsigned-char"
  26. cppFlags "-fsigned-char", "-std=c++14"
  27. }
  28. }
  29. }
  30. buildTypes {
  31. debug {
  32. initWith debug
  33. debuggable true
  34. jniDebuggable true
  35. signingConfig signingConfigs.juceSigning
  36. }
  37. release {
  38. initWith release
  39. debuggable false
  40. jniDebuggable false
  41. signingConfig signingConfigs.juceSigning
  42. }
  43. }
  44. flavorDimensions "default"
  45. productFlavors {
  46. debug_ {
  47. ndk {
  48. abiFilters "armeabi-v7a", "x86"
  49. }
  50. externalNativeBuild {
  51. cmake {
  52. arguments "-DJUCE_BUILD_CONFIGURATION=DEBUG", "-DCMAKE_CXX_FLAGS_DEBUG=-Ofast", "-DCMAKE_C_FLAGS_DEBUG=-Ofast"
  53. }
  54. }
  55. dimension "default"
  56. }
  57. release_ {
  58. externalNativeBuild {
  59. cmake {
  60. arguments "-DJUCE_BUILD_CONFIGURATION=RELEASE", "-DCMAKE_CXX_FLAGS_RELEASE=-O3", "-DCMAKE_C_FLAGS_RELEASE=-O3"
  61. }
  62. }
  63. dimension "default"
  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. sourceSets {
  78. main.java.srcDirs +=
  79. ["../../../../../modules/juce_core/native/javacore/init",
  80. "../../../../../modules/juce_core/native/javacore/app",
  81. "../../../../../modules/juce_gui_basics/native/javacore/app"]
  82. main.res.srcDirs +=
  83. []
  84. }
  85. repositories {
  86. }
  87. dependencies {
  88. }
  89. }