| // Mesa 3-D graphics library |
| // |
| // Copyright (C) 2010-2011 Chia-I Wu <olvaffe@gmail.com> |
| // Copyright (C) 2010-2011 LunarG Inc. |
| // |
| // Permission is hereby granted, free of charge, to any person obtaining a |
| // copy of this software and associated documentation files (the "Software"), |
| // to deal in the Software without restriction, including without limitation |
| // the rights to use, copy, modify, merge, publish, distribute, sublicense, |
| // and/or sell copies of the Software, and to permit persons to whom the |
| // Software is furnished to do so, subject to the following conditions: |
| // |
| // The above copyright notice and this permission notice shall be included |
| // in all copies or substantial portions of the Software. |
| // |
| // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR |
| // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
| // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL |
| // THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER |
| // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING |
| // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER |
| // DEALINGS IN THE SOFTWARE. |
| |
| soong_namespace {} |
| |
| // *** THIS PACKAGE HAS SPECIAL LICENSING CONDITIONS. PLEASE |
| // CONSULT THE OWNERS AND opensource-licensing@google.com BEFORE |
| // DEPENDING ON IT IN YOUR PROJECT. *** |
| package { |
| default_applicable_licenses: ["external_mesa3d_license"], |
| } |
| |
| // Added automatically by a large-scale-change that took the approach of |
| // 'apply every license found to every target'. While this makes sure we respect |
| // every license restriction, it may not be entirely correct. |
| // |
| // e.g. GPL in an MIT project might only apply to the contrib/ directory. |
| // |
| // Please consider splitting the single license below into multiple licenses, |
| // taking care not to lose any license_kind information, and overriding the |
| // default license using the 'licenses: [...]' property on targets as needed. |
| // |
| // For unused files, consider creating a 'fileGroup' with "//visibility:private" |
| // to attach the license to, and including a comment whether the files may be |
| // used in the current project. |
| // See: http://go/android-license-faq |
| license { |
| name: "external_mesa3d_license", |
| visibility: [":__subpackages__"], |
| license_kinds: [ |
| "SPDX-license-identifier-Apache-2.0", |
| "SPDX-license-identifier-BSD", |
| "SPDX-license-identifier-BSL-1.0", |
| "SPDX-license-identifier-GPL", |
| "SPDX-license-identifier-GPL-2.0", |
| "SPDX-license-identifier-ISC", |
| "SPDX-license-identifier-MIT", |
| "SPDX-license-identifier-Unlicense", |
| "legacy_by_exception_only", // by exception only |
| "legacy_notice", |
| "legacy_unencumbered", |
| ], |
| license_text: [ |
| "LICENSE", |
| ], |
| } |
| |
| build = ["Android.gen.bp"] |
| |
| cc_library_headers { |
| name: "mesa_common_headers", |
| export_include_dirs: [ |
| "src", |
| "include", |
| ], |
| host_supported: true, |
| vendor: true, |
| visibility: [":__subpackages__"], |
| } |
| |
| // This needs to be kept in sync with Android.common.mk |
| cc_defaults { |
| name: "mesa_common_defaults", |
| defaults: ["mesa_version_defaults"], |
| |
| // uncomment to keep the debug symbols |
| // strip: { none: true, }, |
| |
| vendor: true, |
| header_libs: ["mesa_common_headers"], |
| |
| cflags: [ |
| "-Wno-error", |
| "-Werror=incompatible-pointer-types", |
| "-Wno-unused-parameter", |
| "-Wno-pointer-arith", |
| "-Wno-missing-field-initializers", |
| "-Wno-initializer-overrides", |
| "-Wno-mismatched-tags", |
| // PACKAGE_VERSION is in mesa_version_defaults |
| "-DPACKAGE_BUGREPORT=\"https://bugs.freedesktop.org/enter_bug.cgi?product=Mesa\"", |
| |
| // XXX: The following __STDC_*_MACROS defines should not be needed. |
| // It's likely due to a bug elsewhere, but let's temporarily add them |
| // here to fix the radeonsi build. |
| "-DENABLE_SHADER_CACHE", |
| "-D__STDC_CONSTANT_MACROS", |
| "-D__STDC_LIMIT_MACROS", |
| "-DHAVE___BUILTIN_EXPECT", |
| "-DHAVE___BUILTIN_FFS", |
| "-DHAVE___BUILTIN_FFSLL", |
| "-DHAVE_DLFCN_H", |
| "-DHAVE_FUNC_ATTRIBUTE_FLATTEN", |
| "-DHAVE_FUNC_ATTRIBUTE_UNUSED", |
| "-DHAVE_FUNC_ATTRIBUTE_FORMAT", |
| "-DHAVE_FUNC_ATTRIBUTE_PACKED", |
| "-DHAVE_FUNC_ATTRIBUTE_ALIAS", |
| "-DHAVE_FUNC_ATTRIBUTE_NORETURN", |
| "-DHAVE_FUNC_ATTRIBUTE_RETURNS_NONNULL", |
| "-DHAVE_FUNC_ATTRIBUTE_WARN_UNUSED_RESULT", |
| "-DHAVE___BUILTIN_CTZ", |
| "-DHAVE___BUILTIN_POPCOUNT", |
| "-DHAVE___BUILTIN_POPCOUNTLL", |
| "-DHAVE___BUILTIN_CLZ", |
| "-DHAVE___BUILTIN_CLZLL", |
| "-DHAVE___BUILTIN_UNREACHABLE", |
| "-DHAVE_PTHREAD=1", |
| "-DHAVE_DLADDR", |
| "-DHAVE_DL_ITERATE_PHDR", |
| "-DHAVE_LINUX_FUTEX_H", |
| "-DHAVE_ENDIAN_H", |
| "-DHAVE_ZLIB", |
| "-DMAJOR_IN_SYSMACROS", |
| "-DVK_USE_PLATFORM_ANDROID_KHR", |
| "-fvisibility=hidden", |
| "-fno-math-errno", |
| "-fno-trapping-math", |
| "-Werror", |
| "-Wno-#warnings", |
| "-Wno-asm-operand-widths", |
| "-Wno-cast-calling-convention", |
| "-Wno-constant-logical-operand", |
| "-Wno-enum-conversion", |
| "-Wno-format", |
| "-Wno-gnu-variable-sized-type-not-at-end", |
| "-Wno-implicit-fallthrough", |
| "-Wno-incompatible-pointer-types", |
| "-Wno-missing-braces", |
| "-Wno-overloaded-virtual", |
| "-Wno-self-assign", |
| "-Wno-shift-negative-value", |
| "-Wno-sign-compare", |
| "-Wno-sometimes-uninitialized", |
| "-Wno-switch", |
| "-Wno-typedef-redefinition", |
| "-Wno-uninitialized", |
| "-DHAVE_TIMESPEC_GET", |
| ], |
| |
| // mesa requires at least c99 compiler |
| c_std: "c99", |
| |
| cppflags: [ |
| "-D__STDC_CONSTANT_MACROS", |
| "-D__STDC_FORMAT_MACROS", |
| "-D__STDC_LIMIT_MACROS", |
| "-Wno-error=non-virtual-dtor", |
| "-Wno-non-virtual-dtor", |
| ], |
| |
| arch: { |
| arm: { |
| neon: { |
| cflags: ["-DUSE_ARM_ASM"], |
| }, |
| }, |
| arm64: { |
| cflags: ["-DUSE_AARCH64_ASM"], |
| }, |
| }, |
| |
| multilib: { |
| lib32: { |
| cflags: ["-DDEFAULT_DRIVER_DIR=\"/vendor/lib/dri\""], |
| }, |
| lib64: { |
| cflags: ["-DDEFAULT_DRIVER_DIR=\"/vendor/lib64/dri\""], |
| }, |
| }, |
| |
| product_variables: { |
| platform_sdk_version: { |
| cflags: ["-DANDROID_API_LEVEL=%d"], |
| }, |
| }, |
| |
| target: { |
| host: { |
| cflags: [ |
| "-D_GNU_SOURCE", |
| "-DHAVE_LIBDRM", |
| ], |
| shared_libs: ["libdrm"], |
| }, |
| }, |
| } |