xref: /aosp_15_r20/external/libultrahdr/Android.bp (revision 89a0ef05262152531a00a15832a2d3b1e3990773)
1*89a0ef05SAndroid Build Coastguard Worker// Copyright 2022 The Android Open Source Project
2*89a0ef05SAndroid Build Coastguard Worker//
3*89a0ef05SAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License");
4*89a0ef05SAndroid Build Coastguard Worker// you may not use this file except in compliance with the License.
5*89a0ef05SAndroid Build Coastguard Worker// You may obtain a copy of the License at
6*89a0ef05SAndroid Build Coastguard Worker//
7*89a0ef05SAndroid Build Coastguard Worker//      http://www.apache.org/licenses/LICENSE-2.0
8*89a0ef05SAndroid Build Coastguard Worker//
9*89a0ef05SAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software
10*89a0ef05SAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS,
11*89a0ef05SAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12*89a0ef05SAndroid Build Coastguard Worker// See the License for the specific language governing permissions and
13*89a0ef05SAndroid Build Coastguard Worker// limitations under the License.
14*89a0ef05SAndroid Build Coastguard Worker
15*89a0ef05SAndroid Build Coastguard Workerpackage {
16*89a0ef05SAndroid Build Coastguard Worker    // See: http://go/android-license-faq
17*89a0ef05SAndroid Build Coastguard Worker    default_applicable_licenses: [
18*89a0ef05SAndroid Build Coastguard Worker        "external_libultrahdr_license",
19*89a0ef05SAndroid Build Coastguard Worker        "adobe_hdr_gain_map_license",
20*89a0ef05SAndroid Build Coastguard Worker    ],
21*89a0ef05SAndroid Build Coastguard Worker}
22*89a0ef05SAndroid Build Coastguard Worker
23*89a0ef05SAndroid Build Coastguard Workerlicense {
24*89a0ef05SAndroid Build Coastguard Worker    name: "external_libultrahdr_license",
25*89a0ef05SAndroid Build Coastguard Worker    visibility: [":__subpackages__"],
26*89a0ef05SAndroid Build Coastguard Worker    license_kinds: [
27*89a0ef05SAndroid Build Coastguard Worker        "SPDX-license-identifier-Apache-2.0",
28*89a0ef05SAndroid Build Coastguard Worker    ],
29*89a0ef05SAndroid Build Coastguard Worker    license_text: [
30*89a0ef05SAndroid Build Coastguard Worker        "LICENSE",
31*89a0ef05SAndroid Build Coastguard Worker    ],
32*89a0ef05SAndroid Build Coastguard Worker}
33*89a0ef05SAndroid Build Coastguard Worker
34*89a0ef05SAndroid Build Coastguard Workercc_library {
35*89a0ef05SAndroid Build Coastguard Worker    name: "libultrahdr",
36*89a0ef05SAndroid Build Coastguard Worker    host_supported: true,
37*89a0ef05SAndroid Build Coastguard Worker    vendor_available: true,
38*89a0ef05SAndroid Build Coastguard Worker    export_include_dirs: [
39*89a0ef05SAndroid Build Coastguard Worker        ".",
40*89a0ef05SAndroid Build Coastguard Worker        "lib/include",
41*89a0ef05SAndroid Build Coastguard Worker    ],
42*89a0ef05SAndroid Build Coastguard Worker    local_include_dirs: ["lib/include"],
43*89a0ef05SAndroid Build Coastguard Worker    cflags: ["-DUHDR_ENABLE_INTRINSICS"],
44*89a0ef05SAndroid Build Coastguard Worker    srcs: [
45*89a0ef05SAndroid Build Coastguard Worker        "lib/src/icc.cpp",
46*89a0ef05SAndroid Build Coastguard Worker        "lib/src/jpegr.cpp",
47*89a0ef05SAndroid Build Coastguard Worker        "lib/src/gainmapmath.cpp",
48*89a0ef05SAndroid Build Coastguard Worker        "lib/src/gainmapmetadata.cpp",
49*89a0ef05SAndroid Build Coastguard Worker        "lib/src/jpegrutils.cpp",
50*89a0ef05SAndroid Build Coastguard Worker        "lib/src/multipictureformat.cpp",
51*89a0ef05SAndroid Build Coastguard Worker        "lib/src/editorhelper.cpp",
52*89a0ef05SAndroid Build Coastguard Worker        "lib/src/ultrahdr_api.cpp",
53*89a0ef05SAndroid Build Coastguard Worker    ],
54*89a0ef05SAndroid Build Coastguard Worker    shared_libs: [
55*89a0ef05SAndroid Build Coastguard Worker        "libimage_io",
56*89a0ef05SAndroid Build Coastguard Worker        "libjpeg",
57*89a0ef05SAndroid Build Coastguard Worker        "libjpegencoder",
58*89a0ef05SAndroid Build Coastguard Worker        "libjpegdecoder",
59*89a0ef05SAndroid Build Coastguard Worker        "liblog",
60*89a0ef05SAndroid Build Coastguard Worker    ],
61*89a0ef05SAndroid Build Coastguard Worker    rtti: true,
62*89a0ef05SAndroid Build Coastguard Worker    target: {
63*89a0ef05SAndroid Build Coastguard Worker        windows: {
64*89a0ef05SAndroid Build Coastguard Worker            enabled: true,
65*89a0ef05SAndroid Build Coastguard Worker        },
66*89a0ef05SAndroid Build Coastguard Worker        android: {
67*89a0ef05SAndroid Build Coastguard Worker            srcs: [
68*89a0ef05SAndroid Build Coastguard Worker                "lib/src/gpu/applygainmap_gl.cpp",
69*89a0ef05SAndroid Build Coastguard Worker                "lib/src/gpu/editorhelper_gl.cpp",
70*89a0ef05SAndroid Build Coastguard Worker                "lib/src/gpu/uhdr_gl_utils.cpp",
71*89a0ef05SAndroid Build Coastguard Worker            ],
72*89a0ef05SAndroid Build Coastguard Worker            cflags: ["-DUHDR_ENABLE_GLES"],
73*89a0ef05SAndroid Build Coastguard Worker            shared_libs: [
74*89a0ef05SAndroid Build Coastguard Worker                "libEGL",
75*89a0ef05SAndroid Build Coastguard Worker                "libGLESv3",
76*89a0ef05SAndroid Build Coastguard Worker            ],
77*89a0ef05SAndroid Build Coastguard Worker        },
78*89a0ef05SAndroid Build Coastguard Worker    },
79*89a0ef05SAndroid Build Coastguard Worker    arch: {
80*89a0ef05SAndroid Build Coastguard Worker        arm: {
81*89a0ef05SAndroid Build Coastguard Worker            srcs: [
82*89a0ef05SAndroid Build Coastguard Worker                "lib/src/dsp/arm/editorhelper_neon.cpp",
83*89a0ef05SAndroid Build Coastguard Worker                "lib/src/dsp/arm/gainmapmath_neon.cpp",
84*89a0ef05SAndroid Build Coastguard Worker            ],
85*89a0ef05SAndroid Build Coastguard Worker        },
86*89a0ef05SAndroid Build Coastguard Worker        arm64: {
87*89a0ef05SAndroid Build Coastguard Worker            srcs: [
88*89a0ef05SAndroid Build Coastguard Worker                "lib/src/dsp/arm/editorhelper_neon.cpp",
89*89a0ef05SAndroid Build Coastguard Worker                "lib/src/dsp/arm/gainmapmath_neon.cpp",
90*89a0ef05SAndroid Build Coastguard Worker            ],
91*89a0ef05SAndroid Build Coastguard Worker        },
92*89a0ef05SAndroid Build Coastguard Worker    },
93*89a0ef05SAndroid Build Coastguard Worker}
94*89a0ef05SAndroid Build Coastguard Worker
95*89a0ef05SAndroid Build Coastguard Workercc_library {
96*89a0ef05SAndroid Build Coastguard Worker    name: "libjpegencoder",
97*89a0ef05SAndroid Build Coastguard Worker    host_supported: true,
98*89a0ef05SAndroid Build Coastguard Worker    vendor_available: true,
99*89a0ef05SAndroid Build Coastguard Worker    shared_libs: [
100*89a0ef05SAndroid Build Coastguard Worker        "libjpeg",
101*89a0ef05SAndroid Build Coastguard Worker        "liblog",
102*89a0ef05SAndroid Build Coastguard Worker    ],
103*89a0ef05SAndroid Build Coastguard Worker    export_include_dirs: ["lib/include"],
104*89a0ef05SAndroid Build Coastguard Worker    srcs: [
105*89a0ef05SAndroid Build Coastguard Worker        "lib/src/jpegencoderhelper.cpp",
106*89a0ef05SAndroid Build Coastguard Worker    ],
107*89a0ef05SAndroid Build Coastguard Worker    target: {
108*89a0ef05SAndroid Build Coastguard Worker        windows: {
109*89a0ef05SAndroid Build Coastguard Worker            enabled: true,
110*89a0ef05SAndroid Build Coastguard Worker        },
111*89a0ef05SAndroid Build Coastguard Worker    },
112*89a0ef05SAndroid Build Coastguard Worker}
113*89a0ef05SAndroid Build Coastguard Worker
114*89a0ef05SAndroid Build Coastguard Workercc_library {
115*89a0ef05SAndroid Build Coastguard Worker    name: "libjpegdecoder",
116*89a0ef05SAndroid Build Coastguard Worker    host_supported: true,
117*89a0ef05SAndroid Build Coastguard Worker    vendor_available: true,
118*89a0ef05SAndroid Build Coastguard Worker    shared_libs: [
119*89a0ef05SAndroid Build Coastguard Worker        "libjpeg",
120*89a0ef05SAndroid Build Coastguard Worker        "liblog",
121*89a0ef05SAndroid Build Coastguard Worker    ],
122*89a0ef05SAndroid Build Coastguard Worker    export_include_dirs: ["lib/include"],
123*89a0ef05SAndroid Build Coastguard Worker    srcs: [
124*89a0ef05SAndroid Build Coastguard Worker        "lib/src/jpegdecoderhelper.cpp",
125*89a0ef05SAndroid Build Coastguard Worker    ],
126*89a0ef05SAndroid Build Coastguard Worker    target: {
127*89a0ef05SAndroid Build Coastguard Worker        windows: {
128*89a0ef05SAndroid Build Coastguard Worker            enabled: true,
129*89a0ef05SAndroid Build Coastguard Worker        },
130*89a0ef05SAndroid Build Coastguard Worker    },
131*89a0ef05SAndroid Build Coastguard Worker}
132