geekdroid/build.gradle.kts
author Da Risk <da_risk@geekorum.com>
Mon, 17 Feb 2025 19:12:53 -0400
changeset 78 62de1c715bc0
parent 77 05d65b432655
child 83 5ad573b6c84d
permissions -rw-r--r--
build: update dagger
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
6
99ad8c14fec2 Add missing source license headers
Da Risk <da_risk@geekorum.com>
parents: 3
diff changeset
     1
/*
99ad8c14fec2 Add missing source license headers
Da Risk <da_risk@geekorum.com>
parents: 3
diff changeset
     2
 * Geekdroid is a utility library for development on the Android
99ad8c14fec2 Add missing source license headers
Da Risk <da_risk@geekorum.com>
parents: 3
diff changeset
     3
 * Platform.
99ad8c14fec2 Add missing source license headers
Da Risk <da_risk@geekorum.com>
parents: 3
diff changeset
     4
 *
75
534a19e25217 build: update license headers
Da Risk <da_risk@geekorum.com>
parents: 70
diff changeset
     5
 * Copyright (C) 2017-2025 by Frederic-Charles Barthelery.
6
99ad8c14fec2 Add missing source license headers
Da Risk <da_risk@geekorum.com>
parents: 3
diff changeset
     6
 *
99ad8c14fec2 Add missing source license headers
Da Risk <da_risk@geekorum.com>
parents: 3
diff changeset
     7
 * This file is part of Geekdroid.
99ad8c14fec2 Add missing source license headers
Da Risk <da_risk@geekorum.com>
parents: 3
diff changeset
     8
 *
99ad8c14fec2 Add missing source license headers
Da Risk <da_risk@geekorum.com>
parents: 3
diff changeset
     9
 * Geekdroid is free software: you can redistribute it and/or modify
99ad8c14fec2 Add missing source license headers
Da Risk <da_risk@geekorum.com>
parents: 3
diff changeset
    10
 * it under the terms of the GNU General Public License as published by
99ad8c14fec2 Add missing source license headers
Da Risk <da_risk@geekorum.com>
parents: 3
diff changeset
    11
 * the Free Software Foundation, either version 3 of the License, or
99ad8c14fec2 Add missing source license headers
Da Risk <da_risk@geekorum.com>
parents: 3
diff changeset
    12
 * (at your option) any later version.
99ad8c14fec2 Add missing source license headers
Da Risk <da_risk@geekorum.com>
parents: 3
diff changeset
    13
 *
99ad8c14fec2 Add missing source license headers
Da Risk <da_risk@geekorum.com>
parents: 3
diff changeset
    14
 * Geekdroid is distributed in the hope that it will be useful,
99ad8c14fec2 Add missing source license headers
Da Risk <da_risk@geekorum.com>
parents: 3
diff changeset
    15
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
99ad8c14fec2 Add missing source license headers
Da Risk <da_risk@geekorum.com>
parents: 3
diff changeset
    16
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
99ad8c14fec2 Add missing source license headers
Da Risk <da_risk@geekorum.com>
parents: 3
diff changeset
    17
 * GNU General Public License for more details.
99ad8c14fec2 Add missing source license headers
Da Risk <da_risk@geekorum.com>
parents: 3
diff changeset
    18
 *
99ad8c14fec2 Add missing source license headers
Da Risk <da_risk@geekorum.com>
parents: 3
diff changeset
    19
 * You should have received a copy of the GNU General Public License
99ad8c14fec2 Add missing source license headers
Da Risk <da_risk@geekorum.com>
parents: 3
diff changeset
    20
 * along with Geekdroid.  If not, see <http://www.gnu.org/licenses/>.
99ad8c14fec2 Add missing source license headers
Da Risk <da_risk@geekorum.com>
parents: 3
diff changeset
    21
 */
1
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
    22
plugins {
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
    23
    id("com.android.library")
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
    24
    kotlin("android")
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
    25
    kotlin("kapt")
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
    26
    id("com.geekorum.build.android-tests")
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
    27
    id("com.geekorum.build.android-avdl")
2
99455c223e8f Add publishing to maven local
Da Risk <da_risk@geekorum.com>
parents: 1
diff changeset
    28
    `maven-publish`
77
05d65b432655 build: update kotlin and compose compiler
Da Risk <da_risk@geekorum.com>
parents: 75
diff changeset
    29
    alias(libs.plugins.compose.compiler)
1
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
    30
}
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
    31
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
    32
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
    33
android {
17
e395df7aa39f build: update to agp 7.0.2
Da Risk <da_risk@geekorum.com>
parents: 15
diff changeset
    34
    val compileSdkInt: Int by rootProject.extra
e395df7aa39f build: update to agp 7.0.2
Da Risk <da_risk@geekorum.com>
parents: 15
diff changeset
    35
    compileSdk = compileSdkInt
19
91a3ad3b1b9c build: update buildsrc
Da Risk <da_risk@geekorum.com>
parents: 17
diff changeset
    36
    namespace = "com.geekorum.geekdroid"
1
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
    37
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
    38
    defaultConfig {
17
e395df7aa39f build: update to agp 7.0.2
Da Risk <da_risk@geekorum.com>
parents: 15
diff changeset
    39
        minSdk = 24
1
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
    40
    }
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
    41
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
    42
    buildTypes {
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
    43
        getByName("release") {
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
    44
            isMinifyEnabled = false
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
    45
            proguardFiles(getDefaultProguardFile("proguard-android.txt"),
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
    46
                    "proguard-rules.pro")
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
    47
        }
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
    48
    }
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
    49
17
e395df7aa39f build: update to agp 7.0.2
Da Risk <da_risk@geekorum.com>
parents: 15
diff changeset
    50
    lint {
19
91a3ad3b1b9c build: update buildsrc
Da Risk <da_risk@geekorum.com>
parents: 17
diff changeset
    51
        abortOnError = false
1
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
    52
    }
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
    53
70
f6cf2e8bf04d geekdroid: add ModalBottomSheetActivity a compose based BottomSheetActivity.
Da Risk <da_risk@geekorum.com>
parents: 68
diff changeset
    54
    buildFeatures {
f6cf2e8bf04d geekdroid: add ModalBottomSheetActivity a compose based BottomSheetActivity.
Da Risk <da_risk@geekorum.com>
parents: 68
diff changeset
    55
        dataBinding = true
f6cf2e8bf04d geekdroid: add ModalBottomSheetActivity a compose based BottomSheetActivity.
Da Risk <da_risk@geekorum.com>
parents: 68
diff changeset
    56
        compose = true
f6cf2e8bf04d geekdroid: add ModalBottomSheetActivity a compose based BottomSheetActivity.
Da Risk <da_risk@geekorum.com>
parents: 68
diff changeset
    57
    }
f6cf2e8bf04d geekdroid: add ModalBottomSheetActivity a compose based BottomSheetActivity.
Da Risk <da_risk@geekorum.com>
parents: 68
diff changeset
    58
46
3eec74c864bf geekdroid: update dependencies
Da Risk <da_risk@geekorum.com>
parents: 45
diff changeset
    59
    packaging {
3eec74c864bf geekdroid: update dependencies
Da Risk <da_risk@geekorum.com>
parents: 45
diff changeset
    60
        resources {
3eec74c864bf geekdroid: update dependencies
Da Risk <da_risk@geekorum.com>
parents: 45
diff changeset
    61
            excludes += listOf("META-INF/LICENSE.md", "META-INF/LICENSE-notice.md")
3eec74c864bf geekdroid: update dependencies
Da Risk <da_risk@geekorum.com>
parents: 45
diff changeset
    62
        }
3eec74c864bf geekdroid: update dependencies
Da Risk <da_risk@geekorum.com>
parents: 45
diff changeset
    63
    }
3eec74c864bf geekdroid: update dependencies
Da Risk <da_risk@geekorum.com>
parents: 45
diff changeset
    64
32
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
    65
    publishing {
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
    66
        singleVariant("release") {
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
    67
            withSourcesJar()
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
    68
        }
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
    69
        singleVariant("debug") {
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
    70
            withSourcesJar()
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
    71
        }
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
    72
    }
1
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
    73
}
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
    74
44
275cbb10a516 build: update AGP and kotlin
Da Risk <da_risk@geekorum.com>
parents: 39
diff changeset
    75
kotlin {
56
070660a18848 use java17 jvm toolchain to compile
Da Risk <da_risk@geekorum.com>
parents: 46
diff changeset
    76
    jvmToolchain(17)
44
275cbb10a516 build: update AGP and kotlin
Da Risk <da_risk@geekorum.com>
parents: 39
diff changeset
    77
}
275cbb10a516 build: update AGP and kotlin
Da Risk <da_risk@geekorum.com>
parents: 39
diff changeset
    78
1
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
    79
dependencies {
45
e8e44d416387 build: use gradle version catalog
Da Risk <da_risk@geekorum.com>
parents: 44
diff changeset
    80
    api(libs.recyclerview)
e8e44d416387 build: use gradle version catalog
Da Risk <da_risk@geekorum.com>
parents: 44
diff changeset
    81
    api(libs.material)
e8e44d416387 build: use gradle version catalog
Da Risk <da_risk@geekorum.com>
parents: 44
diff changeset
    82
    api(libs.constraintlayout)
e8e44d416387 build: use gradle version catalog
Da Risk <da_risk@geekorum.com>
parents: 44
diff changeset
    83
    api(libs.coordinatorlayout)
e8e44d416387 build: use gradle version catalog
Da Risk <da_risk@geekorum.com>
parents: 44
diff changeset
    84
    implementation(libs.annotation)
e8e44d416387 build: use gradle version catalog
Da Risk <da_risk@geekorum.com>
parents: 44
diff changeset
    85
    implementation(libs.core.ktx)
e8e44d416387 build: use gradle version catalog
Da Risk <da_risk@geekorum.com>
parents: 44
diff changeset
    86
    api(libs.fragment.ktx)
1
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
    87
45
e8e44d416387 build: use gradle version catalog
Da Risk <da_risk@geekorum.com>
parents: 44
diff changeset
    88
    api(libs.okhttp)
1
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
    89
45
e8e44d416387 build: use gradle version catalog
Da Risk <da_risk@geekorum.com>
parents: 44
diff changeset
    90
    implementation(libs.dagger.compiler)
e8e44d416387 build: use gradle version catalog
Da Risk <da_risk@geekorum.com>
parents: 44
diff changeset
    91
    kapt(libs.dagger.compiler)
1
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
    92
32
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
    93
    implementation(platform(kotlin("bom")))
1
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
    94
    implementation(kotlin("stdlib-jdk8"))
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
    95
45
e8e44d416387 build: use gradle version catalog
Da Risk <da_risk@geekorum.com>
parents: 44
diff changeset
    96
    implementation(platform(libs.kotlinx.coroutines.bom))
e8e44d416387 build: use gradle version catalog
Da Risk <da_risk@geekorum.com>
parents: 44
diff changeset
    97
    implementation(libs.kotlinx.coroutines.core)
1
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
    98
45
e8e44d416387 build: use gradle version catalog
Da Risk <da_risk@geekorum.com>
parents: 44
diff changeset
    99
    api(libs.lifecycle.livedata.core.ktx)
e8e44d416387 build: use gradle version catalog
Da Risk <da_risk@geekorum.com>
parents: 44
diff changeset
   100
    api(libs.lifecycle.viewmodel.savedstate)
e8e44d416387 build: use gradle version catalog
Da Risk <da_risk@geekorum.com>
parents: 44
diff changeset
   101
    testImplementation(libs.core.testing)
1
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
   102
45
e8e44d416387 build: use gradle version catalog
Da Risk <da_risk@geekorum.com>
parents: 44
diff changeset
   103
    implementation(libs.room.runtime)
e8e44d416387 build: use gradle version catalog
Da Risk <da_risk@geekorum.com>
parents: 44
diff changeset
   104
    implementation(libs.browser)
e8e44d416387 build: use gradle version catalog
Da Risk <da_risk@geekorum.com>
parents: 44
diff changeset
   105
    implementation(libs.work.runtime)
64
5db96a3b9aa3 geekdroid: remove a few deprecated warnings
Da Risk <da_risk@geekorum.com>
parents: 61
diff changeset
   106
    implementation(libs.preference.ktx)
5db96a3b9aa3 geekdroid: remove a few deprecated warnings
Da Risk <da_risk@geekorum.com>
parents: 61
diff changeset
   107
70
f6cf2e8bf04d geekdroid: add ModalBottomSheetActivity a compose based BottomSheetActivity.
Da Risk <da_risk@geekorum.com>
parents: 68
diff changeset
   108
    // compose stuff
f6cf2e8bf04d geekdroid: add ModalBottomSheetActivity a compose based BottomSheetActivity.
Da Risk <da_risk@geekorum.com>
parents: 68
diff changeset
   109
    implementation(platform(libs.androidx.compose.bom))
f6cf2e8bf04d geekdroid: add ModalBottomSheetActivity a compose based BottomSheetActivity.
Da Risk <da_risk@geekorum.com>
parents: 68
diff changeset
   110
    implementation(libs.androidx.compose.material3)
f6cf2e8bf04d geekdroid: add ModalBottomSheetActivity a compose based BottomSheetActivity.
Da Risk <da_risk@geekorum.com>
parents: 68
diff changeset
   111
    implementation(libs.androidx.activity.compose)
f6cf2e8bf04d geekdroid: add ModalBottomSheetActivity a compose based BottomSheetActivity.
Da Risk <da_risk@geekorum.com>
parents: 68
diff changeset
   112
1
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
   113
}
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
   114
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
   115
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
   116
apply {
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
   117
    from("$projectDir/../config/source-archive.gradle")
831cffa9c991 source import
Da Risk <da_risk@geekorum.com>
parents:
diff changeset
   118
}
32
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   119
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   120
publishing {
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   121
    publications {
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   122
        val pomConfiguration: (MavenPom).() -> Unit = {
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   123
            name.set("Geekdroid")
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   124
            description.set("An Android library used in various Android projects. ")
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   125
            licenses {
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   126
                license {
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   127
                    name.set("GPL-3.0-or-later")
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   128
                    url.set("https://www.gnu.org/licenses/gpl-3.0.html")
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   129
                    distribution.set("repo")
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   130
                }
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   131
            }
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   132
            inceptionYear.set("2017")
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   133
        }
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   134
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   135
        register<MavenPublication>("release") {
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   136
            afterEvaluate {
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   137
                from(components["release"])
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   138
            }
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   139
            artifactId = "geekdroid"
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   140
            pom(pomConfiguration)
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   141
        }
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   142
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   143
        register<MavenPublication>("debugSnapshot") {
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   144
            afterEvaluate {
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   145
                from(components["debug"])
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   146
            }
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   147
            artifactId = "geekdroid"
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   148
            version = "$version-SNAPSHOT"
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   149
            pom(pomConfiguration)
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   150
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   151
        }
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   152
    }
f165a9538ee3 build: improve maven publication
Da Risk <da_risk@geekorum.com>
parents: 26
diff changeset
   153
}