Skip to content

Commit

Permalink
[ADD/#123] feature 모듈 gradle 설정
Browse files Browse the repository at this point in the history
  • Loading branch information
Marchbreeze committed Sep 8, 2024
1 parent ee64152 commit 91e18e2
Show file tree
Hide file tree
Showing 12 changed files with 492 additions and 142 deletions.
2 changes: 1 addition & 1 deletion app/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ dependencies {
implementation(project(":core"))
implementation(project(":data"))
implementation(project(":domain"))
implementation(project(":presentation"))
implementation(project(":feature"))

KotlinDependencies.run {
implementation(kotlin)
Expand Down
113 changes: 85 additions & 28 deletions feature/auth/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,46 +1,103 @@
import com.android.build.gradle.internal.cxx.configure.gradleLocalProperties

plugins {
id("com.android.application")
id("org.jetbrains.kotlin.android")
id("com.android.library")
kotlin("android")
kotlin("kapt")
id("dagger.hilt.android.plugin")
}

android {
namespace = "com.kkkk.auth"
compileSdk = 34
namespace = "co.orange.feature.auth"
compileSdk = Constants.compileSdk

defaultConfig {
applicationId = "com.kkkk.auth"
minSdk = 28
targetSdk = 34
versionCode = 1
versionName = "1.0"
minSdk = Constants.minSdk

testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
}
consumerProguardFiles("consumer-rules.pro")

buildConfigField(
"String",
"IAMPORT_CODE",
gradleLocalProperties(rootDir).getProperty("iamport.code"),
)

buildTypes {
release {
isMinifyEnabled = false
proguardFiles(
getDefaultProguardFile("proguard-android-optimize.txt"),
"proguard-rules.pro"
)
}
buildConfigField(
"String",
"MERCHANT_UID",
gradleLocalProperties(rootDir).getProperty("merchant.uid"),
)
}

compileOptions {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
sourceCompatibility = Versions.javaVersion
targetCompatibility = Versions.javaVersion
}

kotlinOptions {
jvmTarget = "1.8"
jvmTarget = Versions.jvmVersion
}

buildFeatures {
buildConfig = true
dataBinding = true
viewBinding = true
}
}

dependencies {
implementation(project(":core"))
implementation(project(":domain"))

KotlinDependencies.run {
implementation(kotlin)
implementation(coroutines)
implementation(jsonSerialization)
implementation(dateTime)
}

implementation(libs.androidx.core.ktx)
implementation(libs.androidx.appcompat)
implementation(libs.material)
testImplementation(libs.junit)
androidTestImplementation(libs.androidx.junit)
androidTestImplementation(libs.androidx.espresso.core)
}
AndroidXDependencies.run {
implementation(coreKtx)
implementation(appCompat)
implementation(constraintLayout)
implementation(fragment)
implementation(startup)
implementation(legacy)
implementation(security)
implementation(hilt)
implementation(lifeCycleKtx)
implementation(lifecycleJava8)
implementation(workManager)
implementation(hiltWorkManager)
}

KaptDependencies.run {
kapt(hiltCompiler)
kapt(hiltWorkManagerCompiler)
}

GoogleDependencies.run {
implementation(materialDesign)
}

TestDependencies.run {
testImplementation(jUnit)
androidTestImplementation(androidTest)
androidTestImplementation(espresso)
}

ThirdPartyDependencies.run {
implementation(coil)
implementation(timber)
implementation(lottie)
}

JitpackDependencies.run {
implementation(iamport)
}

KakaoDependencies.run {
implementation(user)
}
}
21 changes: 21 additions & 0 deletions feature/auth/consumer-rules.pro
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# Add project specific ProGuard rules here.
# You can control the set of applied configuration files using the
# proguardFiles setting in build.gradle.
#
# For more details, see
# http://developer.android.com/guide/developing/tools/proguard.html

# If your project uses WebView with JS, uncomment the following
# and specify the fully qualified class name to the JavaScript interface
# class:
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
# public *;
#}

# Uncomment this to preserve the line number information for
# debugging stack traces.
#-keepattributes SourceFile,LineNumberTable

# If you keep the line number information, uncomment this to
# hide the original source file name.
#-renamesourcefileattribute SourceFile
110 changes: 82 additions & 28 deletions feature/buy/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,46 +1,100 @@
import com.android.build.gradle.internal.cxx.configure.gradleLocalProperties

plugins {
id("com.android.application")
id("org.jetbrains.kotlin.android")
id("com.android.library")
kotlin("android")
kotlin("kapt")
id("dagger.hilt.android.plugin")
}

android {
namespace = "com.kkkk.buy"
compileSdk = 34
namespace = "co.orange.feature.buy"
compileSdk = Constants.compileSdk

defaultConfig {
applicationId = "com.kkkk.buy"
minSdk = 28
targetSdk = 34
versionCode = 1
versionName = "1.0"
minSdk = Constants.minSdk

testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
}
consumerProguardFiles("consumer-rules.pro")

buildTypes {
release {
isMinifyEnabled = false
proguardFiles(
getDefaultProguardFile("proguard-android-optimize.txt"),
"proguard-rules.pro"
)
}
buildConfigField(
"String",
"PAYMENT_UID",
gradleLocalProperties(rootDir).getProperty("payment.uid"),
)
}

compileOptions {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
sourceCompatibility = Versions.javaVersion
targetCompatibility = Versions.javaVersion
}

kotlinOptions {
jvmTarget = "1.8"
jvmTarget = Versions.jvmVersion
}

buildFeatures {
buildConfig = true
dataBinding = true
viewBinding = true
}
}

dependencies {
implementation(project(":core"))
implementation(project(":domain"))

KotlinDependencies.run {
implementation(kotlin)
implementation(coroutines)
implementation(jsonSerialization)
implementation(dateTime)
}

AndroidXDependencies.run {
implementation(coreKtx)
implementation(appCompat)
implementation(constraintLayout)
implementation(fragment)
implementation(startup)
implementation(legacy)
implementation(security)
implementation(hilt)
implementation(lifeCycleKtx)
implementation(lifecycleJava8)
implementation(splashScreen)
implementation(workManager)
implementation(hiltWorkManager)
}

KaptDependencies.run {
kapt(hiltCompiler)
kapt(hiltWorkManagerCompiler)
}

GoogleDependencies.run {
implementation(materialDesign)
}

implementation(libs.androidx.core.ktx)
implementation(libs.androidx.appcompat)
implementation(libs.material)
testImplementation(libs.junit)
androidTestImplementation(libs.androidx.junit)
androidTestImplementation(libs.androidx.espresso.core)
}
TestDependencies.run {
testImplementation(jUnit)
androidTestImplementation(androidTest)
androidTestImplementation(espresso)
}

ThirdPartyDependencies.run {
implementation(coil)
implementation(timber)
implementation(lottie)
}

JitpackDependencies.run {
implementation(iamport)
}

FirebaseDependencies.run {
implementation(platform(firebaseBom))
implementation(crashlytics)
implementation(analytics)
}
}
21 changes: 21 additions & 0 deletions feature/buy/consumer-rules.pro
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# Add project specific ProGuard rules here.
# You can control the set of applied configuration files using the
# proguardFiles setting in build.gradle.
#
# For more details, see
# http://developer.android.com/guide/developing/tools/proguard.html

# If your project uses WebView with JS, uncomment the following
# and specify the fully qualified class name to the JavaScript interface
# class:
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
# public *;
#}

# Uncomment this to preserve the line number information for
# debugging stack traces.
#-keepattributes SourceFile,LineNumberTable

# If you keep the line number information, uncomment this to
# hide the original source file name.
#-renamesourcefileattribute SourceFile
Loading

0 comments on commit 91e18e2

Please sign in to comment.