// // Copyright (C) 2014 The Android Open Source Project // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // java_defaults { name: "icu4j-defaults", host_supported: true, hostdex: true, // Use the same Java language version in the Android build configuration as used // in main/shared/build/common.properties for the ICU4J build configuration. java_version: "1.7", } java_library { name: "icu4j", defaults: ["icu4j-defaults"], srcs: ["main/classes/**/*.java"], java_resource_dirs: ["main/classes/*/src"], // User-supplied locale service providers (using the java.text.spi or // java.util.spi mechanisms) are not supported in Android: // // http://developer.android.com/reference/java/util/Locale.html exclude_srcs: ["main/classes/localespi/**/*.java"], exclude_java_resource_dirs: ["main/classes/localespi/src"], static_libs: [ "icu4j-icudata", "icu4j-icutzdata", ], } java_test { name: "icu4j-tests", defaults: ["icu4j-defaults"], srcs: ["main/tests/**/*.java"], java_resource_dirs: ["main/tests/*/src"], exclude_srcs: ["main/tests/localespi/**/*.java"], exclude_java_resource_dirs: ["main/tests/localespi/src"], static_libs: [ "icu4j", "icu4j-testdata", "junit-params", ], } java_import { name: "icu4j-icudata", host_supported: true, jars: ["main/shared/data/icudata.jar"], } java_import { name: "icu4j-icutzdata", host_supported: true, jars: ["main/shared/data/icutzdata.jar"], } java_import { name: "icu4j-testdata", host_supported: true, jars: ["main/shared/data/testdata.jar"], } // LayoutLib (frameworks/layoutlib) needs JarJar'd versions of the // icudata and icutzdata, so add rules for it. java_library_static { name: "icu4j-icudata-jarjar", defaults: ["icu4j-defaults"], static_libs: ["icu4j-icudata"], jarjar_rules: "liblayout-jarjar-rules.txt", } java_library_static { name: "icu4j-icutzdata-jarjar", defaults: ["icu4j-defaults"], static_libs: ["icu4j-icutzdata"], jarjar_rules: "liblayout-jarjar-rules.txt", } // Compatibility alias until references to icu4j-host are removed java_library_host { name: "icu4j-host", static_libs: ["icu4j"], } // Rules to generate android_icu4j files during build time // The following rules are used in the downstream branches master-icu-dev only, // but NOT used in AOSP. generate_script_srcs = [ "main/**/*", "samples/**/*", ] generate_script_tools = [ "android_icu4j_srcgen_binary", "soong_zip", ] generate_script_tool_files = [ ":generate_android_icu4j_script", ] // ANDROID_BUILD_TOP is needed to be set for generate_android_icu4j.sh generate_script_common_cmd = "export ANDROID_BUILD_TOP=$$(pwd) && " + "$(location :generate_android_icu4j_script) " + "--no-doc-patch " + "--gen $(genDir) " + "--srcgen-tool $(location android_icu4j_srcgen_binary)" genrule { name: "generated_android_icu4j_src_files", enabled: false, // http://b/117312606 srcs: generate_script_srcs, tools: generate_script_tools, tool_files: generate_script_tool_files, out: ["generated_android_icu4j.srcjar"], cmd: generate_script_common_cmd + "&& $(location soong_zip) -o $(out) -C $(genDir)/android_icu4j/src/main/java " + "-D $(genDir)/android_icu4j/src/main/java", } java_genrule { name: "generated_android_icu4j_resources", enabled: false, // http://b/117312606 host_supported: true, srcs: generate_script_srcs, tools: generate_script_tools, tool_files: generate_script_tool_files, out: ["generated_android_icu4j_resources.jar"], cmd: generate_script_common_cmd + "&& $(location soong_zip) -o $(out) -C $(genDir)/android_icu4j/resources " + "-D $(genDir)/android_icu4j/resources", } genrule { name: "generated_android_icu4j_test_files", enabled: false, // http://b/117312606 srcs: generate_script_srcs, tools: generate_script_tools, tool_files: generate_script_tool_files, out: ["generated_android_icu4j_test.srcjar"], cmd: generate_script_common_cmd + "&& find $(genDir)/android_icu4j/src/main/tests -type f -not -name \"*.java\" -exec rm {} \\; " + "&& $(location soong_zip) -o $(out) -C $(genDir)/android_icu4j/src/main/tests " + "-D $(genDir)/android_icu4j/src/main/tests", } java_genrule { name: "generated_android_icu4j_test_resources", enabled: false, // http://b/117312606 host_supported: true, srcs: generate_script_srcs, tools: generate_script_tools, tool_files: generate_script_tool_files, out: ["generated_android_icu4j_test_resources.jar"], cmd: generate_script_common_cmd + "&& find $(genDir)/android_icu4j/src/main/tests -type f -name \"*.java\" -exec rm {} \\; " + "&& $(location soong_zip) -o $(out) -C $(genDir)/android_icu4j/src/main/tests " + "-D $(genDir)/android_icu4j/src/main/tests", }