build(conf): core app config is not applied to :core:app module

This commit is contained in:
Akash Yadav
2024-06-19 09:01:14 +05:30
parent 5d6c8339da
commit 2cf9012c0e
5 changed files with 15 additions and 5 deletions
@@ -52,6 +52,10 @@ gradlePlugin {
id = "com.itsaky.androidide.build"
implementationClass = "com.itsaky.androidide.plugins.AndroidIDEPlugin"
}
create("com.itsaky.androidide.core-app") {
id = "com.itsaky.androidide.core-app"
implementationClass = "com.itsaky.androidide.plugins.AndroidIDECoreAppPlugin"
}
create("com.itsaky.androidide.build.propsparser") {
id = "com.itsaky.androidide.build.propsparser"
implementationClass = "com.itsaky.androidide.plugins.PropertiesParserPlugin"
@@ -48,7 +48,7 @@ class AndroidIDEPlugin : Plugin<Project> {
plugins.apply(SigningConfigPlugin::class.java)
}
if (isFDroidBuild && project.plugins.hasPlugin(AndroidIDECoreAppPlugin::class.java)) {
if (isFDroidBuild && project.plugins.hasPlugin("com.itsaky.androidide.core-app")) {
val baseExtension = extensions.getByType(BaseExtension::class.java)
logger.warn("Building for F-Droid with configuration:")
logger.warn("applicationId = ${baseExtension.defaultConfig.applicationId}")
@@ -17,8 +17,10 @@
package com.itsaky.androidide.plugins
import com.itsaky.androidide.plugins.util.isAndroidModule
import org.gradle.api.Plugin
import org.gradle.api.Project
import org.gradle.api.artifacts.VersionCatalogsExtension
/**
* Configures dependency injection in a module.
@@ -29,6 +31,12 @@ class DIConfigPlugin : Plugin<Project> {
override fun apply(target: Project) = target.run {
dependencies.add("implementation", "javax.inject:javax.inject:1")
if (isAndroidModule) {
val libs =
rootProject.extensions.getByType(VersionCatalogsExtension::class.java).named("libs")
val hiltAndroid = libs.findLibrary("hilt-android").get().get()
dependencies.add("implementation", hiltAndroid)
}
Unit
}
}
@@ -27,7 +27,6 @@ import com.itsaky.androidide.build.config.BuildConfig
import com.itsaky.androidide.build.config.FDroidConfig
import com.itsaky.androidide.build.config.isFDroidBuild
import com.itsaky.androidide.build.config.projectVersionCode
import com.itsaky.androidide.plugins.AndroidIDECoreAppPlugin
import com.itsaky.androidide.plugins.NoDesugarPlugin
import com.itsaky.androidide.plugins.util.SdkUtils.getAndroidJar
import org.gradle.api.Project
@@ -119,7 +118,7 @@ fun Project.configureAndroidModule(
configureCoreLibDesugaring(this, coreLibDesugDep)
if (project.plugins.hasPlugin(AndroidIDECoreAppPlugin::class.java)) {
if (project.plugins.hasPlugin("com.itsaky.androidide.core-app")) {
packagingOptions {
jniLibs {
useLegacyPackaging = true