buildscript { ext.kotlin_version = '1.7.20' repositories { google() mavenCentral() jcenter { content { includeVersion 'org.jetbrains.trove4j', 'trove4j', '20160824' includeGroupByRegex "com\\.archinamon.*" } } maven { url "https://plugins.gradle.org/m2/" content { includeGroupByRegex "org\\.jlleitschuh\\.gradle.*" } } } dependencies { classpath 'com.android.tools:r8:3.3.75' classpath 'com.android.tools.build:gradle:7.2.2' classpath 'androidx.navigation:navigation-safe-args-gradle-plugin:2.5.2' classpath 'com.google.protobuf:protobuf-gradle-plugin:0.8.17' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" classpath "org.jlleitschuh.gradle:ktlint-gradle:10.2.1" classpath 'app.cash.exhaustive:exhaustive-gradle:0.1.1' } } ext { BUILD_TOOL_VERSION = '32.0.0' COMPILE_SDK = 33 TARGET_SDK = 31 MINIMUM_SDK = 21 JAVA_VERSION = JavaVersion.VERSION_1_8 } wrapper { distributionType = Wrapper.DistributionType.ALL } allprojects { repositories { google() mavenCentral() mavenLocal() } } subprojects { ext.lib_signal_service_version_number = "2.15.3" ext.lib_signal_service_group_info = "org.whispersystems" ext.lib_signal_client_version = "0.1.0" if (JavaVersion.current().isJava8Compatible()) { allprojects { tasks.withType(Javadoc) { options.addStringOption('Xdoclint:none', '-quiet') } } } if (project.name != "Signal-Android" && project.name != "libsignal-service" && project.name != "lintchecks" && !project.name.endsWith("-app")) { task qa { group 'Verification' description 'Quality Assurance. Run before pushing' dependsOn 'clean', 'testReleaseUnitTest', 'lintRelease' } } } task qa { group 'Verification' description 'Quality Assurance. Run before pushing.' dependsOn 'clean', ':Signal-Android:testPlayProdReleaseUnitTest', ':Signal-Android:lintPlayProdRelease', 'Signal-Android:ktlintCheck', ':libsignal-service:test', ':libsignal-service:ktlintCheck', ':Signal-Android:assemblePlayProdRelease' } task clean(type: Delete) { delete rootProject.buildDir }