| // 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 {} |
| |
| 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"], |
| }, |
| }, |
| } |