@@ -5,22 +5,22 @@ plugins {
5
5
alias(libs. plugins. kotlin. compose. compiler)
6
6
// alias(libs.plugins.devtools.ksp)
7
7
alias(libs. plugins. kotlin. kapt)
8
- id ' maven-publish'
8
+ id " maven-publish"
9
9
}
10
10
11
11
base {
12
- archivesName = ' colorpicker_' + version_name
12
+ archivesName = " colorpicker_${ libs.versions.app.version.name.get() } "
13
13
}
14
14
15
15
android {
16
- namespace ' io.syslogic.colorpicker'
17
- buildToolsVersion = ' 35.0.0 '
18
- compileSdk compile_sdk
16
+ namespace " io.syslogic.colorpicker"
17
+ buildToolsVersion = libs . versions . android . build . tools . get()
18
+ compileSdk Integer . parseInt(libs . versions . android . compile . sdk . get())
19
19
defaultConfig {
20
- testInstrumentationRunner ' androidx.test.runner.AndroidJUnitRunner '
21
- consumerProguardFiles " ${ project.rootDir } /proguard/consumer.pro "
22
- targetSdk target_sdk
23
- minSdk min_sdk
20
+ minSdk Integer . parseInt(libs . versions . android . min . sdk . get())
21
+ targetSdk Integer . parseInt(libs . versions . android . target . sdk . get())
22
+ testInstrumentationRunner " androidx.test.runner.AndroidJUnitRunner "
23
+ consumerProguardFiles " ${ project.getProjectDir().absolutePath } /consumer.pro "
24
24
}
25
25
26
26
sourceSets. main. java. srcDirs = [ " src/main/java" ]
@@ -34,12 +34,6 @@ android {
34
34
jvmTarget = 17
35
35
}
36
36
37
- buildFeatures {
38
- buildConfig true
39
- dataBinding true
40
- compose true
41
- }
42
-
43
37
composeOptions {
44
38
}
45
39
@@ -49,6 +43,12 @@ android {
49
43
stabilityConfigurationFile = rootProject. layout. projectDirectory. file(" stability_config.conf" )
50
44
}
51
45
46
+ buildFeatures {
47
+ buildConfig true
48
+ dataBinding true
49
+ compose true
50
+ }
51
+
52
52
buildTypes {
53
53
debug {
54
54
// it breaks the data-binding, eg. when running ./gradlew :library:publishToMavenLocal
@@ -74,12 +74,14 @@ android {
74
74
}
75
75
76
76
packagingOptions {
77
- resources. pickFirsts. add(' META-INF/LGPL2.1' )
78
- resources. pickFirsts. add(' META-INF/AL2.0' )
77
+ resources. pickFirsts. add(" META-INF/LGPL2.1" )
78
+ resources. pickFirsts. add(" META-INF/AL2.0" )
79
+ // Unable to strip the following libraries, packaging them as they are:
80
+ jniLibs. keepDebugSymbols. add(" **/libandroidx.graphics.path.so" )
79
81
}
80
82
81
83
publishing {
82
- singleVariant(' release' ) {
84
+ singleVariant(" release" ) {
83
85
withSourcesJar()
84
86
withJavadocJar()
85
87
}
@@ -103,7 +105,7 @@ dependencies {
103
105
debugImplementation libs. bundles. androidx. compose. tooling
104
106
}
105
107
106
- tasks. register(' javadoc' , Javadoc ) { it ->
108
+ tasks. register(" javadoc" , Javadoc ) { it ->
107
109
108
110
title = " Color Picker ${ android.defaultConfig.versionName} API"
109
111
source = android. sourceSets. main. java. srcDirs
@@ -129,12 +131,12 @@ tasks.register('javadoc', Javadoc) { it ->
129
131
130
132
// extract AAR files
131
133
configurations. implementation
132
- .filter { it. name. endsWith(' .aar' ) }
134
+ .filter { it. name. endsWith(" .aar" ) }
133
135
.each { aar ->
134
136
copy {
135
137
from zipTree(aar)
136
138
include " **/classes.jar"
137
- into project. file(" build/tmp/aarsToJars/${ aar.name.replace(' .aar', '' )} /" )
139
+ into project. file(" build/tmp/aarsToJars/${ aar.name.replace(" .aar", "" )} /" )
138
140
}
139
141
}
140
142
@@ -154,36 +156,36 @@ javadoc.onlyIf {
154
156
project. file(" build/intermediates/aar_main_jar" ). exists()
155
157
}
156
158
157
- tasks. register(' javadocJar' , Jar ) {
159
+ tasks. register(" javadocJar" , Jar ) {
158
160
dependsOn javadoc
159
- archiveClassifier. set(' javadoc' )
161
+ archiveClassifier. set(" javadoc" )
160
162
from javadoc. destinationDir
161
163
}
162
164
163
- tasks. register(' sourcesJar' , Jar ) {
165
+ tasks. register(" sourcesJar" , Jar ) {
164
166
from android. sourceSets. main. java. srcDirs
165
- archiveClassifier. set(' sources' )
167
+ archiveClassifier. set(" sources" )
166
168
}
167
169
168
170
artifacts {
169
171
archives javadocJar
170
172
archives sourcesJar
171
173
}
172
174
173
- group = ' io.syslogic'
174
- version = version_name
175
+ group = " io.syslogic"
176
+ version = libs . versions . app . version . name . get()
175
177
176
178
afterEvaluate {
177
179
publishing {
178
180
publications {
179
181
release(MavenPublication ) {
180
182
groupId = group
181
- artifactId = ' androidx-colorpicker'
182
- from components. getByName(' release' )
183
- version = version_name
183
+ artifactId = " androidx-colorpicker"
184
+ from components. getByName(" release" )
185
+ version = libs . versions . app . version . name . get()
184
186
pom {
185
- name = ' Color Picker'
186
- description = ' A simple color-picker library for Android'
187
+ name = " Color Picker"
188
+ description = " A simple color-picker library for Android"
187
189
url = " https://github.com/syslogic/${ artifactId} "
188
190
scm {
189
191
connection = " scm:git:git://github.com/syslogic/${ artifactId} .git"
0 commit comments