xref: /aosp_15_r20/external/sg3_utils/Android.bp (revision 44704f698541f6367e81f991ef8bb54ccbf3fc18)
1*44704f69SBart Van Assche// Copyright 2022 The Android Open Source Project
2*44704f69SBart Van Assche
3*44704f69SBart Van Asschepackage {
4*44704f69SBart Van Assche    default_applicable_licenses: ["external_sg3_utils_license"],
5*44704f69SBart Van Assche}
6*44704f69SBart Van Assche
7*44704f69SBart Van Assche// See also https://spdx.org/licenses/
8*44704f69SBart Van Asschelicense {
9*44704f69SBart Van Assche    name: "external_sg3_utils_license",
10*44704f69SBart Van Assche    visibility: [":__subpackages__"],
11*44704f69SBart Van Assche    license_kinds: [
12*44704f69SBart Van Assche        "SPDX-license-identifier-BSD-2-Clause",
13*44704f69SBart Van Assche        "SPDX-license-identifier-BSD-2-Clause-NetBSD",
14*44704f69SBart Van Assche        "SPDX-license-identifier-BSD-3-Clause",
15*44704f69SBart Van Assche        "SPDX-license-identifier-GPL-2.0-only",
16*44704f69SBart Van Assche        "SPDX-license-identifier-GPL-2.0-or-later",
17*44704f69SBart Van Assche        "SPDX-license-identifier-GPL-3.0-or-later",
18*44704f69SBart Van Assche    ],
19*44704f69SBart Van Assche    license_text: [
20*44704f69SBart Van Assche        "LICENSE",
21*44704f69SBart Van Assche        "COPYING",
22*44704f69SBart Van Assche    ],
23*44704f69SBart Van Assche}
24*44704f69SBart Van Assche
25*44704f69SBart Van Asschecc_defaults {
26*44704f69SBart Van Assche    name: "sg3_utils-defaults",
27*44704f69SBart Van Assche    cflags: [
28*44704f69SBart Van Assche        "-D_FILE_OFFSET_BITS=64",
29*44704f69SBart Van Assche        "-D_LARGEFILE64_SOURCE",
30*44704f69SBart Van Assche        "-Wextra",
31*44704f69SBart Van Assche        "-Wall",
32*44704f69SBart Van Assche        "-Werror",
33*44704f69SBart Van Assche    ],
34*44704f69SBart Van Assche    local_include_dirs: [
35*44704f69SBart Van Assche        "include",
36*44704f69SBart Van Assche    ],
37*44704f69SBart Van Assche    // vendor only. See also https://source.android.com/docs/core/architecture/bootloader/partitions/product-interfaces.
38*44704f69SBart Van Assche    vendor: true,
39*44704f69SBart Van Assche    target: {
40*44704f69SBart Van Assche        host: {
41*44704f69SBart Van Assche            enabled: false,
42*44704f69SBart Van Assche        },
43*44704f69SBart Van Assche        windows: {
44*44704f69SBart Van Assche            enabled: false,
45*44704f69SBart Van Assche        },
46*44704f69SBart Van Assche    },
47*44704f69SBart Van Assche}
48*44704f69SBart Van Assche
49*44704f69SBart Van Asschecc_library {
50*44704f69SBart Van Assche    name: "libsgutils2",
51*44704f69SBart Van Assche    defaults: ["sg3_utils-defaults"],
52*44704f69SBart Van Assche    srcs: [
53*44704f69SBart Van Assche        "lib/sg_lib.c",
54*44704f69SBart Van Assche        "lib/sg_pr2serr.c",
55*44704f69SBart Van Assche        "lib/sg_lib_data.c",
56*44704f69SBart Van Assche        "lib/sg_lib_names.c",
57*44704f69SBart Van Assche        "lib/sg_cmds_basic.c",
58*44704f69SBart Van Assche        "lib/sg_cmds_basic2.c",
59*44704f69SBart Van Assche        "lib/sg_cmds_extra.c",
60*44704f69SBart Van Assche        "lib/sg_cmds_mmc.c",
61*44704f69SBart Van Assche        "lib/sg_pt_common.c",
62*44704f69SBart Van Assche        "lib/sg_json_builder.c",
63*44704f69SBart Van Assche        // Linux only.
64*44704f69SBart Van Assche        "lib/sg_pt_linux.c",
65*44704f69SBart Van Assche        "lib/sg_io_linux.c",
66*44704f69SBart Van Assche        "lib/sg_pt_linux_nvme.c",
67*44704f69SBart Van Assche    ],
68*44704f69SBart Van Assche}
69*44704f69SBart Van Assche
70*44704f69SBart Van Asschecc_binary {
71*44704f69SBart Van Assche    name: "sg_read_buffer",
72*44704f69SBart Van Assche    defaults: ["sg3_utils-defaults"],
73*44704f69SBart Van Assche    srcs: ["src/sg_read_buffer.c"],
74*44704f69SBart Van Assche    shared_libs: ["libsgutils2"],
75*44704f69SBart Van Assche}
76*44704f69SBart Van Assche
77*44704f69SBart Van Asschecc_binary {
78*44704f69SBart Van Assche    name: "sg_write_buffer",
79*44704f69SBart Van Assche    defaults: ["sg3_utils-defaults"],
80*44704f69SBart Van Assche    srcs: ["src/sg_write_buffer.c"],
81*44704f69SBart Van Assche    shared_libs: ["libsgutils2"],
82*44704f69SBart Van Assche}
83