xref: /aosp_15_r20/system/extras/libfec/Android.bp (revision 288bf5226967eb3dac5cce6c939ccc2a7f2b4fe5)
1*288bf522SAndroid Build Coastguard Worker// Copyright 2015 The Android Open Source Project
2*288bf522SAndroid Build Coastguard Worker
3*288bf522SAndroid Build Coastguard Workerpackage {
4*288bf522SAndroid Build Coastguard Worker    default_applicable_licenses: ["system_extras_libfec_license"],
5*288bf522SAndroid Build Coastguard Worker}
6*288bf522SAndroid Build Coastguard Worker
7*288bf522SAndroid Build Coastguard Worker// Added automatically by a large-scale-change
8*288bf522SAndroid Build Coastguard Worker// See: http://go/android-license-faq
9*288bf522SAndroid Build Coastguard Workerlicense {
10*288bf522SAndroid Build Coastguard Worker    name: "system_extras_libfec_license",
11*288bf522SAndroid Build Coastguard Worker    visibility: [":__subpackages__"],
12*288bf522SAndroid Build Coastguard Worker    license_kinds: [
13*288bf522SAndroid Build Coastguard Worker        "SPDX-license-identifier-Apache-2.0",
14*288bf522SAndroid Build Coastguard Worker    ],
15*288bf522SAndroid Build Coastguard Worker    license_text: [
16*288bf522SAndroid Build Coastguard Worker        "NOTICE",
17*288bf522SAndroid Build Coastguard Worker    ],
18*288bf522SAndroid Build Coastguard Worker}
19*288bf522SAndroid Build Coastguard Worker
20*288bf522SAndroid Build Coastguard Workercc_defaults {
21*288bf522SAndroid Build Coastguard Worker    name: "libfec_default",
22*288bf522SAndroid Build Coastguard Worker
23*288bf522SAndroid Build Coastguard Worker    cflags: [
24*288bf522SAndroid Build Coastguard Worker        "-Wall",
25*288bf522SAndroid Build Coastguard Worker        "-Werror",
26*288bf522SAndroid Build Coastguard Worker        "-O3",
27*288bf522SAndroid Build Coastguard Worker        "-D_LARGEFILE64_SOURCE",
28*288bf522SAndroid Build Coastguard Worker    ],
29*288bf522SAndroid Build Coastguard Worker
30*288bf522SAndroid Build Coastguard Worker    srcs: [
31*288bf522SAndroid Build Coastguard Worker        "fec_open.cpp",
32*288bf522SAndroid Build Coastguard Worker        "fec_read.cpp",
33*288bf522SAndroid Build Coastguard Worker        "fec_verity.cpp",
34*288bf522SAndroid Build Coastguard Worker        "fec_process.cpp",
35*288bf522SAndroid Build Coastguard Worker    ],
36*288bf522SAndroid Build Coastguard Worker
37*288bf522SAndroid Build Coastguard Worker    export_include_dirs: ["include"],
38*288bf522SAndroid Build Coastguard Worker    // Exported header include/fec/io.h includes crypto_utils headers.
39*288bf522SAndroid Build Coastguard Worker    export_shared_lib_headers: ["libcrypto_utils"],
40*288bf522SAndroid Build Coastguard Worker
41*288bf522SAndroid Build Coastguard Worker    shared_libs: [
42*288bf522SAndroid Build Coastguard Worker        "libbase",
43*288bf522SAndroid Build Coastguard Worker        "libcrypto",
44*288bf522SAndroid Build Coastguard Worker        "libcrypto_utils",
45*288bf522SAndroid Build Coastguard Worker        "libcutils",
46*288bf522SAndroid Build Coastguard Worker        "libext4_utils",
47*288bf522SAndroid Build Coastguard Worker        "libsquashfs_utils",
48*288bf522SAndroid Build Coastguard Worker    ],
49*288bf522SAndroid Build Coastguard Worker
50*288bf522SAndroid Build Coastguard Worker    static_libs: [
51*288bf522SAndroid Build Coastguard Worker        "libfec_rs",
52*288bf522SAndroid Build Coastguard Worker    ],
53*288bf522SAndroid Build Coastguard Worker
54*288bf522SAndroid Build Coastguard Worker    target: {
55*288bf522SAndroid Build Coastguard Worker        host: {
56*288bf522SAndroid Build Coastguard Worker            cflags: [
57*288bf522SAndroid Build Coastguard Worker                "-D_GNU_SOURCE",
58*288bf522SAndroid Build Coastguard Worker                "-DFEC_NO_KLOG",
59*288bf522SAndroid Build Coastguard Worker            ],
60*288bf522SAndroid Build Coastguard Worker        },
61*288bf522SAndroid Build Coastguard Worker        host_linux: {
62*288bf522SAndroid Build Coastguard Worker            sanitize: {
63*288bf522SAndroid Build Coastguard Worker                misc_undefined: ["integer"],
64*288bf522SAndroid Build Coastguard Worker            },
65*288bf522SAndroid Build Coastguard Worker        },
66*288bf522SAndroid Build Coastguard Worker    },
67*288bf522SAndroid Build Coastguard Worker}
68*288bf522SAndroid Build Coastguard Worker
69*288bf522SAndroid Build Coastguard Workercc_library {
70*288bf522SAndroid Build Coastguard Worker    name: "libfec",
71*288bf522SAndroid Build Coastguard Worker    defaults: ["libfec_default"],
72*288bf522SAndroid Build Coastguard Worker    host_supported: true,
73*288bf522SAndroid Build Coastguard Worker    ramdisk_available: true,
74*288bf522SAndroid Build Coastguard Worker    vendor_ramdisk_available: true,
75*288bf522SAndroid Build Coastguard Worker    recovery_available: true,
76*288bf522SAndroid Build Coastguard Worker
77*288bf522SAndroid Build Coastguard Worker    target: {
78*288bf522SAndroid Build Coastguard Worker        linux: {
79*288bf522SAndroid Build Coastguard Worker            srcs: [
80*288bf522SAndroid Build Coastguard Worker                "avb_utils.cpp",
81*288bf522SAndroid Build Coastguard Worker            ],
82*288bf522SAndroid Build Coastguard Worker            static_libs: [
83*288bf522SAndroid Build Coastguard Worker                "libavb",
84*288bf522SAndroid Build Coastguard Worker            ],
85*288bf522SAndroid Build Coastguard Worker        },
86*288bf522SAndroid Build Coastguard Worker
87*288bf522SAndroid Build Coastguard Worker        // libavb isn't available on mac.
88*288bf522SAndroid Build Coastguard Worker        darwin: {
89*288bf522SAndroid Build Coastguard Worker            srcs: [
90*288bf522SAndroid Build Coastguard Worker                "avb_utils_stub.cpp",
91*288bf522SAndroid Build Coastguard Worker            ],
92*288bf522SAndroid Build Coastguard Worker        },
93*288bf522SAndroid Build Coastguard Worker    },
94*288bf522SAndroid Build Coastguard Worker}
95