summaryrefslogtreecommitdiffstats
path: root/mobile/android/android-components/components/feature/search/build.gradle
diff options
context:
space:
mode:
Diffstat (limited to 'mobile/android/android-components/components/feature/search/build.gradle')
-rw-r--r--mobile/android/android-components/components/feature/search/build.gradle80
1 files changed, 80 insertions, 0 deletions
diff --git a/mobile/android/android-components/components/feature/search/build.gradle b/mobile/android/android-components/components/feature/search/build.gradle
new file mode 100644
index 0000000000..2444b45437
--- /dev/null
+++ b/mobile/android/android-components/components/feature/search/build.gradle
@@ -0,0 +1,80 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
+
+apply plugin: 'com.android.library'
+apply plugin: 'kotlin-android'
+
+android {
+ defaultConfig {
+ minSdkVersion config.minSdkVersion
+ compileSdk config.compileSdkVersion
+ targetSdkVersion config.targetSdkVersion
+ }
+
+ buildTypes {
+ release {
+ minifyEnabled false
+ proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
+ }
+ }
+
+ sourceSets {
+ test {
+ resources {
+ // We want to access the assets from unit tests. With this configuration we can just
+ // read the files directly and do not need to rely on Robolectric.
+ srcDir "${projectDir}/src/main/assets/"
+ }
+ }
+ }
+
+ namespace 'mozilla.components.feature.search'
+}
+
+tasks.withType(KotlinCompile).configureEach {
+ kotlinOptions.freeCompilerArgs += [
+ "-opt-in=kotlinx.coroutines.FlowPreview",
+ "-opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi"
+ ]
+}
+
+dependencies {
+ implementation project(":feature-tabs")
+ implementation project(':browser-state')
+ implementation project(':concept-engine')
+ implementation project(':service-location')
+ implementation project(':support-utils')
+ implementation project(':support-ktx')
+ implementation project(':ui-colors')
+ implementation project(':support-base')
+ implementation project(':support-remotesettings')
+
+ implementation ComponentsDependencies.androidx_core_ktx
+ implementation ComponentsDependencies.mozilla_remote_settings
+
+ testImplementation project(':support-test')
+ testImplementation project(':support-test-fakes')
+ testImplementation project(':support-test-libstate')
+ testImplementation ComponentsDependencies.androidx_test_core
+ testImplementation ComponentsDependencies.androidx_test_junit
+ testImplementation ComponentsDependencies.testing_robolectric
+ testImplementation ComponentsDependencies.testing_coroutines
+}
+
+tasks.register("updateAdsExtensionVersion", Copy) { task ->
+ updateExtensionVersion(task, 'src/main/assets/extensions/ads')
+}
+
+tasks.register("updateCookiesExtensionVersion", Copy) { task ->
+ updateExtensionVersion(task, 'src/main/assets/extensions/search')
+}
+
+preBuild.dependsOn "updateAdsExtensionVersion"
+preBuild.dependsOn "updateCookiesExtensionVersion"
+
+apply from: '../../../android-lint.gradle'
+apply from: '../../../publish.gradle'
+ext.configurePublish(config.componentsGroupId, archivesBaseName, project.ext.description)