sample/build.gradle.kts
changeset 44 7732a7112b93
parent 34 ce299aacc068
child 47 246422783c0c
equal deleted inserted replaced
43:b144901856dc 44:7732a7112b93
    17  * GNU General Public License for more details.
    17  * GNU General Public License for more details.
    18  *
    18  *
    19  * You should have received a copy of the GNU General Public License
    19  * You should have received a copy of the GNU General Public License
    20  * along with AboutOss.  If not, see <http://www.gnu.org/licenses/>.
    20  * along with AboutOss.  If not, see <http://www.gnu.org/licenses/>.
    21  */
    21  */
       
    22 import org.jetbrains.kotlin.gradle.dsl.JvmTarget
       
    23 
    22 @Suppress("DSL_SCOPE_VIOLATION") // TODO: Remove once KTIJ-19369 is fixed
    24 @Suppress("DSL_SCOPE_VIOLATION") // TODO: Remove once KTIJ-19369 is fixed
    23 plugins {
    25 plugins {
    24     id("com.android.application")
    26     id("com.android.application")
    25     id("org.jetbrains.kotlin.android")
    27     kotlin("multiplatform")
    26     id("com.geekorum.build.source-license-checker")
    28     id("com.geekorum.build.source-license-checker")
    27     alias(libs.plugins.org.jetbrains.kotlin.compose.compiler)
    29     alias(libs.plugins.org.jetbrains.kotlin.compose.compiler)
       
    30     alias(libs.plugins.org.jetbrains.compose.multiplatform)
    28     alias(libs.plugins.google.gms.oss.license)
    31     alias(libs.plugins.google.gms.oss.license)
    29 }
    32 }
    30 
    33 
    31 // workaround bug https://issuetracker.google.com/issues/275534543
    34 // workaround bug https://issuetracker.google.com/issues/275534543
    32 buildscript {
    35 buildscript {
    33     dependencies {
    36     dependencies {
    34         classpath("com.android.tools.build:gradle:8.9.2")
    37         classpath("com.android.tools.build:gradle:8.9.2")
    35     }
    38     }
    36 }
    39 }
       
    40 
       
    41 kotlin {
       
    42     androidTarget {
       
    43         compilerOptions {
       
    44             jvmTarget.set(JvmTarget.JVM_17)
       
    45         }
       
    46     }
       
    47 
       
    48     jvm("desktop")
       
    49 
       
    50     listOf(
       
    51         iosX64(),
       
    52         iosArm64(),
       
    53         iosSimulatorArm64(),
       
    54     ).forEach { iosTarget ->
       
    55         iosTarget.binaries.framework {
       
    56             baseName = "aboutoss-sample-app"
       
    57             isStatic = true
       
    58         }
       
    59     }
       
    60 
       
    61     sourceSets {
       
    62         commonMain.dependencies {
       
    63             implementation(project(":core"))
       
    64             implementation(project(":ui:common"))
       
    65             implementation(project(":ui:material2"))
       
    66             implementation(project(":ui:material3"))
       
    67             implementation(compose.material3)
       
    68             implementation(compose.components.resources)
       
    69             implementation(compose.components.uiToolingPreview)
       
    70         }
       
    71 
       
    72         androidMain.dependencies {
       
    73             api(libs.androidx.activity)
       
    74             implementation(dependencies.enforcedPlatform(libs.androidx.compose.bom))
       
    75             implementation(libs.androidx.activity.compose)
       
    76             implementation(libs.geekdroid)
       
    77             implementation(libs.androidx.lifecycle.viewmodel.compose)
       
    78         }
       
    79     }
       
    80 }
       
    81 
    37 
    82 
    38 android {
    83 android {
    39     namespace = "com.geekorum.aboutoss.sampleapp"
    84     namespace = "com.geekorum.aboutoss.sampleapp"
    40     compileSdk = 35
    85     compileSdk = 35
    41 
    86 
    60                 "proguard-rules.pro"
   105                 "proguard-rules.pro"
    61             )
   106             )
    62         }
   107         }
    63     }
   108     }
    64     compileOptions {
   109     compileOptions {
    65         sourceCompatibility = JavaVersion.VERSION_1_8
   110         sourceCompatibility = JavaVersion.VERSION_17
    66         targetCompatibility = JavaVersion.VERSION_1_8
   111         targetCompatibility = JavaVersion.VERSION_17
    67     }
   112     }
    68     kotlinOptions {
   113 
    69         jvmTarget = "1.8"
       
    70     }
       
    71     buildFeatures {
   114     buildFeatures {
    72         compose = true
   115         compose = true
    73         buildConfig = true
   116         buildConfig = true
    74     }
   117     }
    75     packaging {
   118     packaging {
    78         }
   121         }
    79     }
   122     }
    80 }
   123 }
    81 
   124 
    82 dependencies {
   125 dependencies {
    83     implementation(project(":core"))
       
    84     implementation(project(":ui:common"))
       
    85     implementation(project(":ui:material2"))
       
    86     implementation(project(":ui:material3"))
       
    87 
       
    88     implementation(libs.geekdroid) {
       
    89         //TODO get rid of dagger platform in geekdroid
       
    90         exclude("com.google.dagger", "dagger-platform")
       
    91     }
       
    92 
       
    93 
       
    94     implementation(libs.androidx.lifecycle.viewmodel)
       
    95     implementation(libs.androidx.lifecycle.viewmodel.compose)
       
    96     implementation(libs.androidx.activity.compose)
       
    97     implementation(platform(libs.androidx.compose.bom))
       
    98     implementation(libs.androidx.compose.ui)
       
    99     implementation(libs.androidx.compose.ui.graphics)
       
   100     implementation(libs.androidx.compose.ui.tooling.preview)
       
   101     implementation(libs.androidx.compose.material3)
       
   102     testImplementation(libs.junit)
   126     testImplementation(libs.junit)
   103     androidTestImplementation(libs.androidx.test.ext.junit)
   127     androidTestImplementation(libs.androidx.test.ext.junit)
   104     androidTestImplementation(libs.espresso.core)
   128     androidTestImplementation(libs.espresso.core)
   105     androidTestImplementation(platform(libs.androidx.compose.bom))
   129     androidTestImplementation(platform(libs.androidx.compose.bom))
   106     androidTestImplementation(libs.androidx.compose.ui.test.junit4)
   130     androidTestImplementation(libs.androidx.compose.ui.test.junit4)