Home | History | Annotate | Download | only in bouncycastle
      1 //
      2 // Copyright (C) 2010 The Android Open Source Project
      3 //
      4 // Licensed under the Apache License, Version 2.0 (the "License");
      5 // you may not use this file except in compliance with the License.
      6 // You may obtain a copy of the License at
      7 //
      8 //      http://www.apache.org/licenses/LICENSE-2.0
      9 //
     10 // Unless required by applicable law or agreed to in writing, software
     11 // distributed under the License is distributed on an "AS IS" BASIS,
     12 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     13 // See the License for the specific language governing permissions and
     14 // limitations under the License.
     15 //
     16 
     17 java_defaults {
     18     name: "bouncycastle-errorprone-defaults",
     19     errorprone: {
     20         javacflags: [
     21             "-Xep:MissingOverride:OFF",  // Ignore missing @Override.
     22         ],
     23     },
     24 }
     25 
     26 // These cannot build in the PDK, because the PDK requires all libraries
     27 // compile against SDK versions.
     28 java_defaults {
     29     name: "bouncycastle-defaults",
     30     defaults: [
     31         "bouncycastle-errorprone-defaults",
     32     ],
     33     hostdex: true,
     34     target: {
     35         android: {
     36             product_variables: {
     37                 pdk: {
     38                     enabled: false,
     39                 },
     40             },
     41         },
     42     },
     43 }
     44 
     45 // A bouncycastle library in the original org.bouncycastle package for use
     46 // outside of the platform. e.g. for host or in unbundled apps.
     47 java_library_static {
     48     name: "bouncycastle-unbundled",
     49     defaults: ["bouncycastle-defaults"],
     50     host_supported: true,
     51 
     52     srcs: ["bcprov/src/main/java/**/*.java"],
     53     exclude_srcs: [
     54         "bcprov/src/main/java/org/bouncycastle/asn1/ocsp/**/*.java",
     55     ],
     56 
     57     sdk_version: "core_current",
     58     java_version: "1.7",
     59 }
     60 
     61 // The src files for bouncycastle, used to generate core platform / intra-core
     62 // API stubs.
     63 filegroup {
     64     name: "bouncycastle_java_files",
     65     srcs: ["repackaged/bcprov/src/main/java/**/*.java"],
     66 }
     67 
     68 // A bouncycastle library repackaged in com.android.org.bouncycastle for use
     69 // in the Android platform where it is important not to conflict with the
     70 // original org.bouncycastle package.
     71 java_library {
     72     name: "bouncycastle",
     73     defaults: ["bouncycastle-defaults"],
     74     installable: true,
     75 
     76     srcs: [":bouncycastle_java_files"],
     77 
     78     no_standard_libs: true,
     79     libs: [
     80         "core-all",
     81     ],
     82     system_modules: "core-all-system-modules",
     83 }
     84 
     85 // A guaranteed unstripped version of bouncycastle.
     86 // The build system may or may not strip the bouncycastle jar, but this one will
     87 // not be stripped. See b/24535627.
     88 java_library {
     89     name: "bouncycastle-testdex",
     90     defaults: ["bouncycastle-defaults"],
     91     installable: true,
     92 
     93     srcs: [":bouncycastle_java_files"],
     94 
     95     no_standard_libs: true,
     96     libs: [
     97         "core-all",
     98     ],
     99     dex_preopt: {
    100         enabled: false,
    101     },
    102     system_modules: "core-all-system-modules",
    103     java_version: "1.7",
    104 }
    105 
    106 // Bouncycastle PKIX classes in the original org.bouncycastle package for use
    107 // outside of the platform. e.g. for host or in unbundled apps / CTS tests.
    108 java_library_static {
    109     name: "bouncycastle-bcpkix-unbundled",
    110     defaults: ["bouncycastle-defaults"],
    111     host_supported: true,
    112 
    113     srcs: ["bcpkix/src/main/java/**/*.java"],
    114     exclude_srcs: ["bcpkix/src/main/java/org/bouncycastle/cert/ocsp/**/*.java"],
    115     libs: ["bouncycastle-unbundled"],
    116 
    117     sdk_version: "core_current",
    118 }
    119 
    120 // Bouncycastle OCSP classes in the original org.bouncycastle package for use
    121 // outside of the platform. e.g. for host or in unbundled apps / CTS tests.
    122 java_library_static {
    123     name: "bouncycastle-ocsp-unbundled",
    124     defaults: ["bouncycastle-defaults"],
    125     host_supported: true,
    126 
    127     srcs: [
    128         "bcpkix/src/main/java/org/bouncycastle/cert/ocsp/**/*.java",
    129         "bcprov/src/main/java/org/bouncycastle/asn1/ocsp/**/*.java",
    130     ],
    131     libs: [ "bouncycastle-unbundled",
    132             "bouncycastle-bcpkix-unbundled"
    133     ],
    134 
    135     sdk_version: "core_current",
    136 }
    137 
    138 // For compatibility with old bouncycastle-host name.
    139 java_library_host {
    140     name: "bouncycastle-host",
    141     static_libs: ["bouncycastle-unbundled"],
    142 }
    143 
    144 // For compatibility with old bouncycastle-bcpkix-host name.
    145 java_library_host {
    146     name: "bouncycastle-bcpkix-host",
    147     static_libs: ["bouncycastle-bcpkix-unbundled"],
    148 }
    149