# TODO(https://github.com/spdx/spdx-gradle-plugin/issues/16) remove `-DSPDXParser.OnlyUseLocalLicenses=true`
org.gradle.jvmargs=-Xmx8g -XX:+HeapDumpOnOutOfMemoryError -XX:+UseParallelGC -Dkotlin.daemon.jvm.options=-XX:MaxMetaspaceSize=1g -Dlint.nullness.ignore-deprecated=true -Dorg.gradle.configuration-cache.internal.report-link-as-warning=true -DSPDXParser.OnlyUseLocalLicenses=true
org.gradle.daemon=true
org.gradle.configureondemand=true
org.gradle.parallel=true
org.gradle.caching=true
org.gradle.welcome=never
org.gradle.projectcachedir=../../out/gradle-project-cache
# Disabled due to https://github.com/gradle/gradle/issues/18626
# org.gradle.vfs.watch=true
# Reenabled in gradlew, but disabled in Studio until these errors become shown (b/268380971) or computed more quickly (https://github.com/gradle/gradle/issues/23272)
org.gradle.dependency.verification=off
org.gradle.dependency.verification.console=verbose
org.gradle.configuration-cache=true
org.gradle.configuration-cache.problems=fail

# The following entries are workarounds
# fullsdk-linux/**/package.xml -> b/291331139
# androidx/compose/lint/common/build/libs/common.jar -> b/295395616
# .konan/kotlin-native-prebuilt-linux-x86_64-1.9.10 -> https://youtrack.jetbrains.com/issue/KT-61154/
org.gradle.configuration-cache.inputs.unsafe.ignore.file-system-checks=**/prebuilts/fullsdk-linux;**/prebuilts/fullsdk-linux/platforms/android-*/package.xml;**/androidx/compose/lint/common/build/libs/common.jar;**/.konan/kotlin-native-prebuilt-linux-x86_64-1.9.10/klib/common/stdlib;**/.konan/kotlin-native-prebuilt-linux-x86_64-1.9.10/konan/lib/*

android.lint.baselineOmitLineNumbers=true
android.lint.printStackTrace=true
android.builder.sdkDownload=false
android.uniquePackageNames=true
android.enableAdditionalTestOutput=true
android.useAndroidX=true
android.nonTransitiveRClass=true
# Pending cleanup to support non-constant R class IDs b/260409846
android.nonFinalResIds=false
android.experimental.lint.missingBaselineIsEmptyBaseline=true
android.experimental.lint.reservedMemoryPerTask=1g
# Required for Privacy Sandbox projects.
android.experimental.privacysandboxsdk.enable=true
android.experimental.privacysandboxsdk.requireServices=false

# Do generate versioned API files
androidx.writeVersionedApiFiles=true

# Do run the CheckAarMetadata task
android.experimental.disableCompileSdkChecks=false

# Don't warn about needing to update AGP
android.suppressUnsupportedCompileSdk=UpsideDownCake,VanillaIceCream,33,34

androidx.compileSdkVersion=android-34
androidx.targetSdkVersion=34
androidx.allowCustomCompileSdk=true

# Disable features we do not use
android.defaults.buildfeatures.aidl=false
android.defaults.buildfeatures.buildconfig=false
android.defaults.buildfeatures.renderscript=false
android.defaults.buildfeatures.resvalues=false
android.defaults.buildfeatures.shaders=false

# Enable adding baseline-prof.txt files to AAR artifacts
android.experimental.enableArtProfiles=true

# Disallow resolving dependencies at configuration time, which is a slight performance problem
android.dependencyResolutionAtConfigurationTime.disallow=true
android.suppressUnsupportedOptionWarnings=android.suppressUnsupportedOptionWarnings,android.dependencyResolutionAtConfigurationTime.disallow,android.experimental.lint.missingBaselineIsEmptyBaseline,android.lint.printStackTrace,android.lint.baselineOmitLineNumbers,android.experimental.disableCompileSdkChecks,android.overrideVersionCheck,android.r8.maxWorkers,android.experimental.privacysandboxsdk.enable,android.experimental.lint.reservedMemoryPerTask,android.experimental.privacysandboxsdk.requireServices
# Workaround for b/162074215
android.includeDependencyInfoInApks=false
# Allow multiple r8 tasks at once because otherwise they can make the critical path longer: b/256187923
android.r8.maxWorkers=2

kotlin.stdlib.default.dependency=false
# mac targets cannot be built on linux, suppress the warning.
kotlin.native.ignoreDisabledTargets=true
kotlin.mpp.enableCInteropCommonization=true
# Suppress pointless warning about mpp being experimental
kotlin.mpp.stability.nowarn=true
# b/227307216
kotlin.mpp.absentAndroidTarget.nowarn=true
kotlin.mpp.androidSourceSetLayoutVersion=2
# Suppress warnings about https://kotl.in/hierarchy-template
kotlin.mpp.applyDefaultHierarchyTemplate=false
# As of October 3 2022, AGP 7.4.0-alpha08 is higher than AGP 7.3
# Presumably complains if using a non-stable AGP, which we are regularly doing to test pre-stable.
kotlin.mpp.androidGradlePluginCompatibility.nowarn=true
# Until we get a newer AGP which doesn't do this
kotlin.options.suppressFreeCompilerArgsModificationWarning=true

# Properties we often want to toggle
ksp.version.check=false
