Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 34837aca authored by Mohammed Althaf T's avatar Mohammed Althaf T 😊
Browse files

migrate gradle scripts to Kotlin DSL and add version catalog

parent 80896c21
Loading
Loading
Loading
Loading

app/build.gradle

deleted100644 → 0
+0 −81
Original line number Diff line number Diff line
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'com.google.devtools.ksp'

// Manifest version information!
def versionMajor = 1
def versionMinor = 0
def versionPatch = 0

android {
    compileSdk 36

    defaultConfig {
        applicationId "foundation.e.pwaplayer"
        minSdk 24
        targetSdk 36
        versionCode versionMajor * 10000 + versionMinor * 1000 + versionPatch * 100
        versionName "${versionMajor}.${versionMinor}.${versionPatch}"

        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    }

    signingConfigs {
        platform {
            storeFile = file("${rootDir.path}/keystore/platform.jks")
            storePassword = "platform"
            keyAlias = "platform"
            keyPassword = "platform"
        }
    }

    buildTypes {
        release {
            minifyEnabled true
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }

        debug {
            minifyEnabled = false
            signingConfig = signingConfigs.platform
        }
    }

    compileOptions {
        sourceCompatibility = JavaVersion.VERSION_21
        targetCompatibility = JavaVersion.VERSION_21
    }

    kotlinOptions {
        jvmTarget = "21"
    }

    buildFeatures {
        buildConfig = true
    }

    viewBinding {
        enabled = true
    }

    namespace = "foundation.e.pwaplayer"
}

dependencies {
    implementation "org.jetbrains.kotlin:kotlin-stdlib:2.3.0"
    implementation 'androidx.core:core-ktx:1.17.0'

    implementation "androidx.appcompat:appcompat:1.7.1"
    implementation "androidx.recyclerview:recyclerview:1.4.0"
    implementation "androidx.coordinatorlayout:coordinatorlayout:1.3.0"
    implementation "androidx.preference:preference-ktx:1.2.1"

    implementation "androidx.room:room-runtime:2.8.4"
    ksp "androidx.room:room-compiler:2.8.4"

    implementation 'androidx.constraintlayout:constraintlayout:2.2.1'
    testImplementation 'junit:junit:4.13.2'
    androidTestImplementation 'androidx.test:core:1.7.0'
    androidTestImplementation 'androidx.test.ext:junit:1.3.0'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.7.0'
}
 No newline at end of file

app/build.gradle.kts

0 → 100644
+83 −0
Original line number Diff line number Diff line
import org.jetbrains.kotlin.gradle.dsl.JvmTarget

plugins {
    alias(libs.plugins.android.application)
    alias(libs.plugins.kotlin.android)
    alias(libs.plugins.ksp)
}

// Manifest version information!
val versionMajor = 1
val versionMinor = 0
val versionPatch = 0

android {
    namespace = "foundation.e.pwaplayer"
    compileSdk = 36

    defaultConfig {
        applicationId = "foundation.e.pwaplayer"
        minSdk = 24
        targetSdk = 36
        versionCode = versionMajor * 10000 + versionMinor * 1000 + versionPatch * 100
        versionName = "${versionMajor}.${versionMinor}.${versionPatch}"

        testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
    }

    signingConfigs {
        create("platform") {
            storeFile = file("${rootDir.path}/keystore/platform.jks")
            storePassword = "platform"
            keyAlias = "platform"
            keyPassword = "platform"
        }
    }

    buildTypes {
        release {
            isMinifyEnabled = true
            signingConfig = signingConfigs.getByName("platform")
            proguardFiles(
                getDefaultProguardFile("proguard-android-optimize.txt"),
                "proguard-rules.pro"
            )
        }

        debug {
            isMinifyEnabled = false
            signingConfig = signingConfigs.getByName("platform")
        }
    }

    compileOptions {
        sourceCompatibility = JavaVersion.VERSION_21
        targetCompatibility = JavaVersion.VERSION_21
    }

    kotlin { compilerOptions { jvmTarget = JvmTarget.JVM_21 } }

    buildFeatures {
        buildConfig = true
        viewBinding = true
    }
}

dependencies {
    implementation(libs.kotlin.stdlib)
    implementation(libs.androidx.core.ktx)

    implementation(libs.androidx.appcompat)
    implementation(libs.androidx.recyclerview)
    implementation(libs.androidx.coordinatorlayout)
    implementation(libs.androidx.preference.ktx)

    implementation(libs.androidx.room.runtime)
    ksp(libs.androidx.room.compiler)

    implementation(libs.androidx.constraintlayout)
    testImplementation(libs.junit)
    androidTestImplementation(libs.androidx.test.core)
    androidTestImplementation(libs.androidx.test.ext.junit)
    androidTestImplementation(libs.androidx.test.espresso.core)
}

build.gradle

deleted100644 → 0
+0 −29
Original line number Diff line number Diff line
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
    repositories {
        google()
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:8.13.2'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:2.3.0"

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

plugins {
    id 'com.google.devtools.ksp' version '2.3.3' apply false
}

allprojects {
    repositories {
        google()
        mavenCentral()
    }
}

tasks.register('clean', Delete) {
    delete rootProject.buildDir
}
 No newline at end of file

build.gradle.kts

0 → 100644
+5 −0
Original line number Diff line number Diff line
plugins {
    alias(libs.plugins.android.application) apply false
    alias(libs.plugins.kotlin.android) apply false
    alias(libs.plugins.ksp) apply false
}
+35 −0
Original line number Diff line number Diff line
[versions]
androidGradlePlugin = "8.13.2"
kotlin = "2.3.0"
ksp = "2.3.3"
androidxCoreKtx = "1.17.0"
androidxAppcompat = "1.7.1"
androidxRecyclerView = "1.4.0"
androidxCoordinatorLayout = "1.3.0"
androidxPreference = "1.2.1"
androidxRoom = "2.8.4"
androidxConstraintLayout = "2.2.1"
junit = "4.13.2"
androidxTestCore = "1.7.0"
androidxTestExtJunit = "1.3.0"
androidxTestEspresso = "3.7.0"

[libraries]
kotlin-stdlib = { module = "org.jetbrains.kotlin:kotlin-stdlib", version.ref = "kotlin" }
androidx-core-ktx = { module = "androidx.core:core-ktx", version.ref = "androidxCoreKtx" }
androidx-appcompat = { module = "androidx.appcompat:appcompat", version.ref = "androidxAppcompat" }
androidx-recyclerview = { module = "androidx.recyclerview:recyclerview", version.ref = "androidxRecyclerView" }
androidx-coordinatorlayout = { module = "androidx.coordinatorlayout:coordinatorlayout", version.ref = "androidxCoordinatorLayout" }
androidx-preference-ktx = { module = "androidx.preference:preference-ktx", version.ref = "androidxPreference" }
androidx-room-runtime = { module = "androidx.room:room-runtime", version.ref = "androidxRoom" }
androidx-room-compiler = { module = "androidx.room:room-compiler", version.ref = "androidxRoom" }
androidx-constraintlayout = { module = "androidx.constraintlayout:constraintlayout", version.ref = "androidxConstraintLayout" }
junit = { module = "junit:junit", version.ref = "junit" }
androidx-test-core = { module = "androidx.test:core", version.ref = "androidxTestCore" }
androidx-test-ext-junit = { module = "androidx.test.ext:junit", version.ref = "androidxTestExtJunit" }
androidx-test-espresso-core = { module = "androidx.test.espresso:espresso-core", version.ref = "androidxTestEspresso" }

[plugins]
android-application = { id = "com.android.application", version.ref = "androidGradlePlugin" }
kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" }
ksp = { id = "com.google.devtools.ksp", version.ref = "ksp" }
Loading