xref: /aosp_15_r20/external/tremolo/Android.bp (revision bda690e46497e1f65c5077173b9c548e6e0cd5a1)
1package {
2    default_applicable_licenses: ["external_tremolo_license"],
3}
4
5// Added automatically by a large-scale-change that took the approach of
6// 'apply every license found to every target'. While this makes sure we respect
7// every license restriction, it may not be entirely correct.
8//
9// e.g. GPL in an MIT project might only apply to the contrib/ directory.
10//
11// Please consider splitting the single license below into multiple licenses,
12// taking care not to lose any license_kind information, and overriding the
13// default license using the 'licenses: [...]' property on targets as needed.
14//
15// For unused files, consider creating a 'fileGroup' with "//visibility:private"
16// to attach the license to, and including a comment whether the files may be
17// used in the current project.
18// See: http://go/android-license-faq
19license {
20    name: "external_tremolo_license",
21    visibility: [":__subpackages__"],
22    license_kinds: [
23        "SPDX-license-identifier-Apache-2.0",
24        "SPDX-license-identifier-BSD",
25    ],
26    license_text: [
27        "NOTICE",
28    ],
29}
30
31cc_library {
32    name: "libvorbisidec",
33    vendor_available: true,
34    host_supported: true,
35
36    srcs: [
37        "Tremolo/bitwise.c",
38        "Tremolo/codebook.c",
39        "Tremolo/dsp.c",
40        "Tremolo/floor0.c",
41        "Tremolo/floor1.c",
42        "Tremolo/floor_lookup.c",
43        "Tremolo/framing.c",
44        "Tremolo/mapping0.c",
45        "Tremolo/mdct.c",
46        "Tremolo/misc.c",
47        "Tremolo/res012.c",
48        "Tremolo/treminfo.c",
49        "Tremolo/vorbisfile.c",
50    ],
51
52    arch: {
53        arm: {
54            cflags: ["-D_ARM_ASSEM_"],
55            instruction_set: "arm",
56            srcs: [
57                "Tremolo/bitwiseARM.s",
58                "Tremolo/dpen.s",
59                "Tremolo/floor1ARM.s",
60                "Tremolo/mdctARM.s",
61            ],
62        },
63        arm64: {
64            cflags: ["-DONLY_C"],
65        },
66        x86: {
67            cflags: ["-DONLY_C"],
68        },
69        x86_64: {
70            cflags: ["-DONLY_C"],
71        },
72        riscv64: {
73            cflags: ["-DONLY_C"],
74        },
75    },
76
77    cflags: [
78        "-O2",
79        "-D_GNU_SOURCE",
80        "-funsigned-char",
81        "-Wall",
82        "-Werror",
83        "-Wno-unused-variable",
84    ],
85
86    local_include_dirs: ["Tremolo"],
87    export_include_dirs: ["."],
88
89    shared_libs: ["liblog"],
90
91    sanitize: {
92        integer_overflow: true,
93        misc_undefined: ["bounds"],
94    },
95
96    target: {
97        darwin: {
98            enabled: false,
99        },
100    },
101    min_sdk_version: "29",
102    apex_available: [
103        "//apex_available:platform",
104        "com.android.media",
105        "com.android.media.swcodec",
106    ],
107}
108