1// Copyright (C) 2018 The Android Open Source Project
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//      http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15package {
16    // See: http://go/android-license-faq
17    // A large-scale-change added 'default_applicable_licenses' to import
18    // all of the 'license_kinds' from "external_icu_icu4c_license"
19    // to get the below license kinds:
20    //   SPDX-license-identifier-Unicode-DFS
21    default_applicable_licenses: ["external_icu_icu4c_license"],
22}
23
24cc_defaults {
25    name: "cintltst_defaults",
26    defaults: ["icu_test_defaults"],
27    srcs: [
28        "**/*.c",
29        "**/*.cpp",
30    ],
31    cflags: [
32        "-DZERO_EXIT_CODE_FOR_FAILURES",
33    ],
34    exclude_srcs: [
35        // Not built directly, but #included from other sources.
36        "usrchdat.c",
37    ],
38}
39
40// Build exactly one variant even for 32-bit / 64-bit only target, because
41// CtsIcu4cTestCases depends on this module from the "data:" property which allows single-variant
42// dependency only.
43// Soong selects the first variant where 32-bit is prioritized on "cintltst32" and 64-bit is
44// prioritized on "cintltst64".
45cc_test {
46    name: "cintltst32",
47    defaults: ["cintltst_defaults"],
48    multilib: {
49        // On 64-bit platform, this binary is compiled, but not used.
50        lib64: {
51            suffix: "_fake",
52        },
53    },
54    compile_multilib: "first_prefer32",
55}
56
57cc_test {
58    name: "cintltst64",
59    defaults: ["cintltst_defaults"],
60    multilib: {
61        // On 32-bit platform, this binary is compiled, but not used.
62        lib32: {
63            suffix: "_fake",
64        },
65    },
66    compile_multilib: "first",
67}
68