| // |
| // Copyright (C) 2018 The Android Open Source Project |
| // |
| // Licensed under the Apache License, Version 2.0 (the "License"); |
| // you may not use this file except in compliance with the License. |
| // You may obtain a copy of the License at |
| // |
| // http://www.apache.org/licenses/LICENSE-2.0 |
| // |
| // Unless required by applicable law or agreed to in writing, software |
| // distributed under the License is distributed on an "AS IS" BASIS, |
| // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| // See the License for the specific language governing permissions and |
| // limitations under the License. |
| // |
| |
| cc_library_headers { |
| name: "virgl_headers", |
| host_supported: true, |
| export_include_dirs: ["src"], |
| } |
| |
| cc_library { |
| name: "libvirglrenderer", |
| host_supported: true, |
| cflags: [ |
| "-DHAVE_CONFIG_H", |
| "-Wno-null-pointer-arithmetic", |
| "-Wno-macro-redefined", |
| "-Wno-unused-function", |
| "-Wno-incompatible-pointer-types-discards-qualifiers", |
| "-Wno-unused-parameter", |
| ], |
| c_std: "experimental", |
| local_include_dirs: [ |
| "prebuilt-intermediates", |
| "src", |
| "src/gallium/auxiliary", |
| "src/gallium/auxiliary/util", |
| "src/gallium/include", |
| ], |
| srcs: [ |
| "prebuilt-intermediates/src/u_format_table.c", |
| "src/gallium/auxiliary/cso_cache/cso_cache.c", |
| "src/gallium/auxiliary/cso_cache/cso_hash.c", |
| "src/gallium/auxiliary/os/os_misc.c", |
| "src/gallium/auxiliary/tgsi/tgsi_build.c", |
| "src/gallium/auxiliary/tgsi/tgsi_dump.c", |
| "src/gallium/auxiliary/tgsi/tgsi_iterate.c", |
| "src/gallium/auxiliary/tgsi/tgsi_parse.c", |
| "src/gallium/auxiliary/tgsi/tgsi_sanity.c", |
| "src/gallium/auxiliary/tgsi/tgsi_scan.c", |
| "src/gallium/auxiliary/tgsi/tgsi_text.c", |
| "src/gallium/auxiliary/tgsi/tgsi_transform.c", |
| "src/gallium/auxiliary/tgsi/tgsi_info.c", |
| "src/gallium/auxiliary/tgsi/tgsi_strings.c", |
| "src/gallium/auxiliary/tgsi/tgsi_ureg.c", |
| "src/gallium/auxiliary/tgsi/tgsi_util.c", |
| "src/gallium/auxiliary/util/u_bitmask.c", |
| "src/gallium/auxiliary/util/u_cpu_detect.c", |
| "src/gallium/auxiliary/util/u_debug.c", |
| "src/gallium/auxiliary/util/u_debug_describe.c", |
| "src/gallium/auxiliary/util/u_format.c", |
| "src/gallium/auxiliary/util/u_hash_table.c", |
| "src/gallium/auxiliary/util/u_math.c", |
| "src/gallium/auxiliary/util/u_texture.c", |
| "src/gallium/auxiliary/util/u_surface.c", |
| "src/iov.c", |
| "src/virgl_context.c", |
| "src/virgl_egl_context.c", |
| "src/virgl_gbm.c", |
| "src/virglrenderer.c", |
| "src/virgl_resource.c", |
| "src/virgl_util.c", |
| "src/vrend_blitter.c", |
| "src/vrend_debug.c", |
| "src/vrend_decode.c", |
| "src/vrend_formats.c", |
| "src/vrend_object.c", |
| "src/vrend_renderer.c", |
| "src/vrend_shader.c", |
| "src/vrend_tweaks.c", |
| ], |
| target: { |
| linux_glibc: { |
| // Avoid linking to another host copy of libdrm; this library will cause |
| // binary GPU drivers to be loaded from the host, which might be linked |
| // to a system copy of libdrm, which conflicts with the AOSP one |
| allow_undefined_symbols: true, |
| header_libs: ["libdrm"], |
| shared_libs: [ |
| "libepoxy", |
| "libgbm" |
| ], |
| }, |
| linux_bionic: { |
| shared_libs: [ |
| "libdrm", |
| "libepoxy", |
| "libgbm", |
| ], |
| }, |
| android: { |
| shared_libs: [ |
| "libdrm", |
| "liblog", |
| ], |
| static_libs: [ |
| "libepoxy", |
| "libgbm", |
| ], |
| }, |
| }, |
| apex_available: [ |
| "//apex_available:platform", |
| "com.android.virt", |
| ], |
| } |