Migrate Spa to Kotlin DSL
Also the following changes,
- Upgrade gradle to 8.1
- Upgrade AGP to 8.0.2
- Enable Version Catalog
- Set target SDK to 34
Bug: 284913888
Test: Gradle Sync
Test: Run Gallery
Test: Unit test
Change-Id: I08e1f0517277f176d94c36b1cf18015c988d2a0d
diff --git a/packages/SettingsLib/Spa/build.gradle.kts b/packages/SettingsLib/Spa/build.gradle.kts
new file mode 100644
index 0000000..64b67d7
--- /dev/null
+++ b/packages/SettingsLib/Spa/build.gradle.kts
@@ -0,0 +1,66 @@
+/*
+ * Copyright 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import com.android.build.gradle.BaseExtension
+import com.android.build.gradle.api.AndroidBasePlugin
+import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
+
+plugins {
+ alias(libs.plugins.android.application) apply false
+ alias(libs.plugins.android.library) apply false
+ alias(libs.plugins.kotlin.android) apply false
+}
+
+allprojects {
+ extra["jetpackComposeVersion"] = "1.4.0-beta01"
+}
+
+subprojects {
+ plugins.withType<AndroidBasePlugin> {
+ configure<BaseExtension> {
+ compileSdkVersion(33)
+
+ defaultConfig {
+ minSdk = 21
+ targetSdk = 34
+ }
+
+ compileOptions {
+ sourceCompatibility = JavaVersion.VERSION_17
+ targetCompatibility = JavaVersion.VERSION_17
+ }
+ }
+ }
+
+ afterEvaluate {
+ plugins.withType<AndroidBasePlugin> {
+ configure<BaseExtension> {
+ if (buildFeatures.compose == true) {
+ composeOptions {
+ kotlinCompilerExtensionVersion = "1.4.4"
+ }
+ }
+ }
+ }
+ }
+
+ tasks.withType<KotlinCompile> {
+ kotlinOptions {
+ jvmTarget = "17"
+ freeCompilerArgs = listOf("-Xjvm-default=all")
+ }
+ }
+}