tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

build.gradle (3763B)


      1 apply plugin: 'com.android.library'
      2 
      3 dependencies {
      4    // For exoplayer.
      5    compileOnly "com.google.code.findbugs:jsr305:3.0.2"
      6    compileOnly "org.checkerframework:checker-compat-qual:2.5.0"
      7    compileOnly "org.checkerframework:checker-qual:2.5.0"
      8    compileOnly libs.kotlin.annotations.jvm
      9 
     10    implementation libs.androidx.annotation
     11 }
     12 
     13 android {
     14    buildToolsVersion = project.ext.buildToolsVersion
     15    compileSdk {
     16        version = release(project.ext.compileSdkMajorVersion) { minorApiLevel = project.ext.compileSdkMinorVersion }
     17    }
     18 
     19    defaultConfig {
     20        targetSdk project.ext.targetSdkVersion
     21        minSdk project.ext.minSdkVersion
     22 
     23        versionCode project.ext.versionCode
     24        versionName project.ext.versionName
     25    }
     26 
     27    sourceSets {
     28        main {
     29            java {
     30                srcDir "${topsrcdir}/mobile/android/exoplayer2/src/main/java"
     31            }
     32        }
     33    }
     34 
     35    publishing {
     36        singleVariant("debug")
     37    }
     38 
     39    namespace = 'org.mozilla.geckoview.thirdparty'
     40 }
     41 
     42 apply plugin: 'maven-publish'
     43 
     44 version = getVersionNumber()
     45 group = 'org.mozilla.geckoview'
     46 
     47 android.libraryVariants.all { variant ->
     48    def javadoc = task "javadoc${name.capitalize()}"(type: Javadoc) {
     49    }
     50    task("javadocJar${name.capitalize()}", type: Jar, dependsOn: javadoc) {
     51        archiveClassifier = 'javadoc'
     52        destinationDirectory = javadoc.destinationDir
     53    }
     54    task("sourcesJar${name.capitalize()}", type: Jar) {
     55        archiveClassifier = 'sources'
     56        description = "Generate Javadoc for build variant $name"
     57        destinationDirectory =
     58                file("${topobjdir}/mobile/android/geckoview-exoplayer2/sources/${variant.baseName}")
     59        from files(variant.sourceSets.collect({ it.java.srcDirs }).flatten())
     60    }
     61 }
     62 
     63 publishing {
     64    publications {
     65        android.libraryVariants.all { variant ->
     66            "${variant.name}"(MavenPublication) {
     67                from components.findByName(variant.name)
     68 
     69                pom {
     70                    afterEvaluate {
     71                        artifactId = "geckoview-exoplayer2" + project.ext.artifactSuffix
     72                    }
     73 
     74                    url = 'https://geckoview.dev'
     75 
     76                    licenses {
     77                        license {
     78                            name = 'The Mozilla Public License, v. 2.0'
     79                            url = 'http://mozilla.org/MPL/2.0/'
     80                            distribution = 'repo'
     81                        }
     82                    }
     83 
     84                    scm {
     85                        if (gradle.mozconfig.substs.MOZ_INCLUDE_SOURCE_INFO) {
     86                            // URL is like "https://hg.mozilla.org/mozilla-central/rev/1e64b8a0c546a49459d404aaf930d5b1f621246a".
     87                            connection = "scm:hg:${gradle.mozconfig.source_repo.MOZ_SOURCE_REPO}"
     88                            url = gradle.mozconfig.source_repo.MOZ_SOURCE_URL
     89                            tag = gradle.mozconfig.source_repo.MOZ_SOURCE_STAMP
     90                        } else {
     91                            // Default to mozilla-central.
     92                            connection = 'scm:hg:https://hg.mozilla.org/mozilla-central/'
     93                            url = 'https://hg.mozilla.org/mozilla-central/'
     94                        }
     95                    }
     96                }
     97 
     98                // Javadoc and sources for developer ergononomics.
     99                artifact tasks["javadocJar${variant.name.capitalize()}"]
    100                artifact tasks["sourcesJar${variant.name.capitalize()}"]
    101            }
    102        }
    103    }
    104    repositories {
    105        maven {
    106            url = "${topobjdir}/gradle/maven"
    107        }
    108    }
    109 }
    110 
    111 java {
    112    sourceCompatibility = JavaVersion.VERSION_1_8
    113    targetCompatibility = JavaVersion.VERSION_1_8
    114 }