xref: /aosp_15_r20/external/robolectric/shadows/framework/build.gradle.kts (revision e6ba16074e6af37d123cb567d575f496bf0a58ee)

<lambda>null1*e6ba1607SAndroid Build Coastguard Worker plugins {
2*e6ba1607SAndroid Build Coastguard Worker   alias(libs.plugins.robolectric.deployed.java.module)
3*e6ba1607SAndroid Build Coastguard Worker   alias(libs.plugins.robolectric.java.module)
4*e6ba1607SAndroid Build Coastguard Worker   alias(libs.plugins.robolectric.shadows)
5*e6ba1607SAndroid Build Coastguard Worker }
6*e6ba1607SAndroid Build Coastguard Worker 
<lambda>null7*e6ba1607SAndroid Build Coastguard Worker shadows {
8*e6ba1607SAndroid Build Coastguard Worker   packageName = "org.robolectric"
9*e6ba1607SAndroid Build Coastguard Worker   sdkCheckMode = "ERROR"
10*e6ba1607SAndroid Build Coastguard Worker }
11*e6ba1607SAndroid Build Coastguard Worker 
12*e6ba1607SAndroid Build Coastguard Worker val sqlite4java = configurations.create("sqlite4java")
13*e6ba1607SAndroid Build Coastguard Worker val sqlite4javaVersion = libs.versions.sqlite4java.get()
14*e6ba1607SAndroid Build Coastguard Worker 
15*e6ba1607SAndroid Build Coastguard Worker val copySqliteNatives by
<lambda>null16*e6ba1607SAndroid Build Coastguard Worker   tasks.registering(Copy::class) {
17*e6ba1607SAndroid Build Coastguard Worker     from(sqlite4java) {
18*e6ba1607SAndroid Build Coastguard Worker       include("**/*.dll")
19*e6ba1607SAndroid Build Coastguard Worker       include("**/*.so")
20*e6ba1607SAndroid Build Coastguard Worker       include("**/*.dylib")
21*e6ba1607SAndroid Build Coastguard Worker 
22*e6ba1607SAndroid Build Coastguard Worker       rename { filename ->
23*e6ba1607SAndroid Build Coastguard Worker         val filenameMatch = "^([^\\-]+)-(.+)-${sqlite4javaVersion}\\.(.+)".toRegex().find(filename)
24*e6ba1607SAndroid Build Coastguard Worker         if (filenameMatch != null) {
25*e6ba1607SAndroid Build Coastguard Worker           val platformFilename = filenameMatch.groupValues[1]
26*e6ba1607SAndroid Build Coastguard Worker           val platformFolder = filenameMatch.groupValues[2]
27*e6ba1607SAndroid Build Coastguard Worker           val platformExtension = filenameMatch.groupValues[3]
28*e6ba1607SAndroid Build Coastguard Worker 
29*e6ba1607SAndroid Build Coastguard Worker           "$platformFolder/$platformFilename.$platformExtension"
30*e6ba1607SAndroid Build Coastguard Worker         } else {
31*e6ba1607SAndroid Build Coastguard Worker           filename
32*e6ba1607SAndroid Build Coastguard Worker         }
33*e6ba1607SAndroid Build Coastguard Worker       }
34*e6ba1607SAndroid Build Coastguard Worker     }
35*e6ba1607SAndroid Build Coastguard Worker     into(project.file(layout.buildDirectory.dir("resources/main/sqlite4java")))
36*e6ba1607SAndroid Build Coastguard Worker   }
37*e6ba1607SAndroid Build Coastguard Worker 
<lambda>null38*e6ba1607SAndroid Build Coastguard Worker tasks.jar.configure { dependsOn(copySqliteNatives) }
39*e6ba1607SAndroid Build Coastguard Worker 
<lambda>null40*e6ba1607SAndroid Build Coastguard Worker tasks.javadoc.configure { dependsOn(copySqliteNatives) }
41*e6ba1607SAndroid Build Coastguard Worker 
42*e6ba1607SAndroid Build Coastguard Worker val axtMonitorVersion: String by rootProject.extra
43*e6ba1607SAndroid Build Coastguard Worker 
<lambda>null44*e6ba1607SAndroid Build Coastguard Worker dependencies {
45*e6ba1607SAndroid Build Coastguard Worker   api(project(":annotations"))
46*e6ba1607SAndroid Build Coastguard Worker   api(project(":nativeruntime"))
47*e6ba1607SAndroid Build Coastguard Worker   api(project(":resources"))
48*e6ba1607SAndroid Build Coastguard Worker   api(project(":pluginapi"))
49*e6ba1607SAndroid Build Coastguard Worker   api(project(":sandbox"))
50*e6ba1607SAndroid Build Coastguard Worker   api(project(":shadowapi"))
51*e6ba1607SAndroid Build Coastguard Worker   api(project(":utils"))
52*e6ba1607SAndroid Build Coastguard Worker   api(project(":utils:reflector"))
53*e6ba1607SAndroid Build Coastguard Worker 
54*e6ba1607SAndroid Build Coastguard Worker   api("androidx.test:monitor:$axtMonitorVersion@aar")
55*e6ba1607SAndroid Build Coastguard Worker 
56*e6ba1607SAndroid Build Coastguard Worker   implementation(libs.error.prone.annotations)
57*e6ba1607SAndroid Build Coastguard Worker   compileOnly(libs.findbugs.jsr305)
58*e6ba1607SAndroid Build Coastguard Worker   api(libs.sqlite4java)
59*e6ba1607SAndroid Build Coastguard Worker   compileOnly(AndroidSdk.MAX_SDK.coordinates)
60*e6ba1607SAndroid Build Coastguard Worker   api(libs.icu4j)
61*e6ba1607SAndroid Build Coastguard Worker   api(libs.auto.value.annotations)
62*e6ba1607SAndroid Build Coastguard Worker   annotationProcessor(libs.auto.value)
63*e6ba1607SAndroid Build Coastguard Worker 
64*e6ba1607SAndroid Build Coastguard Worker   sqlite4java(libs.bundles.sqlite4java.native)
65*e6ba1607SAndroid Build Coastguard Worker }
66