Clone of mesa.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

Android.common.mk 3.5KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. # Mesa 3-D graphics library
  2. #
  3. # Copyright (C) 2010-2011 Chia-I Wu <olvaffe@gmail.com>
  4. # Copyright (C) 2010-2011 LunarG Inc.
  5. #
  6. # Permission is hereby granted, free of charge, to any person obtaining a
  7. # copy of this software and associated documentation files (the "Software"),
  8. # to deal in the Software without restriction, including without limitation
  9. # the rights to use, copy, modify, merge, publish, distribute, sublicense,
  10. # and/or sell copies of the Software, and to permit persons to whom the
  11. # Software is furnished to do so, subject to the following conditions:
  12. #
  13. # The above copyright notice and this permission notice shall be included
  14. # in all copies or substantial portions of the Software.
  15. #
  16. # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  17. # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  18. # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
  19. # THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
  20. # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
  21. # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
  22. # DEALINGS IN THE SOFTWARE.
  23. ifeq ($(LOCAL_IS_HOST_MODULE),true)
  24. LOCAL_CFLAGS += -D_GNU_SOURCE
  25. endif
  26. LOCAL_C_INCLUDES += \
  27. $(MESA_TOP)/src \
  28. $(MESA_TOP)/include
  29. MESA_VERSION := $(shell cat $(MESA_TOP)/VERSION)
  30. LOCAL_CFLAGS += \
  31. -Wno-unused-parameter \
  32. -Wno-pointer-arith \
  33. -Wno-missing-field-initializers \
  34. -Wno-initializer-overrides \
  35. -Wno-mismatched-tags \
  36. -DVERSION=\"$(MESA_VERSION)\" \
  37. -DPACKAGE_VERSION=\"$(MESA_VERSION)\" \
  38. -DPACKAGE_BUGREPORT=\"https://bugs.freedesktop.org/enter_bug.cgi?product=Mesa\"
  39. # XXX: The following __STDC_*_MACROS defines should not be needed.
  40. # It's likely due to a bug elsewhere, but let's temporarily add them
  41. # here to fix the radeonsi build.
  42. LOCAL_CFLAGS += \
  43. -DANDROID_API_LEVEL=$(PLATFORM_SDK_VERSION) \
  44. -DENABLE_SHADER_CACHE \
  45. -D__STDC_CONSTANT_MACROS \
  46. -D__STDC_LIMIT_MACROS \
  47. -DHAVE___BUILTIN_EXPECT \
  48. -DHAVE___BUILTIN_FFS \
  49. -DHAVE___BUILTIN_FFSLL \
  50. -DHAVE_FUNC_ATTRIBUTE_FLATTEN \
  51. -DHAVE_FUNC_ATTRIBUTE_UNUSED \
  52. -DHAVE_FUNC_ATTRIBUTE_FORMAT \
  53. -DHAVE_FUNC_ATTRIBUTE_PACKED \
  54. -DHAVE_FUNC_ATTRIBUTE_ALIAS \
  55. -DHAVE___BUILTIN_CTZ \
  56. -DHAVE___BUILTIN_POPCOUNT \
  57. -DHAVE___BUILTIN_POPCOUNTLL \
  58. -DHAVE___BUILTIN_CLZ \
  59. -DHAVE___BUILTIN_CLZLL \
  60. -DHAVE___BUILTIN_UNREACHABLE \
  61. -DHAVE_PTHREAD=1 \
  62. -DHAVE_DLADDR \
  63. -DHAVE_DL_ITERATE_PHDR \
  64. -DMAJOR_IN_SYSMACROS \
  65. -fvisibility=hidden \
  66. -Wno-sign-compare
  67. LOCAL_CPPFLAGS += \
  68. -D__STDC_CONSTANT_MACROS \
  69. -D__STDC_FORMAT_MACROS \
  70. -D__STDC_LIMIT_MACROS \
  71. -Wno-error=non-virtual-dtor \
  72. -Wno-non-virtual-dtor
  73. # mesa requires at least c99 compiler
  74. LOCAL_CONLYFLAGS += \
  75. -std=c99
  76. ifeq ($(strip $(MESA_ENABLE_ASM)),true)
  77. ifeq ($(TARGET_ARCH),x86)
  78. LOCAL_CFLAGS += \
  79. -DUSE_X86_ASM
  80. endif
  81. endif
  82. ifeq ($(ARCH_ARM_HAVE_NEON),true)
  83. LOCAL_CFLAGS_arm += -DUSE_ARM_ASM
  84. endif
  85. LOCAL_CFLAGS_arm64 += -DUSE_AARCH64_ASM
  86. ifneq ($(LOCAL_IS_HOST_MODULE),true)
  87. LOCAL_CFLAGS += -DHAVE_LIBDRM
  88. LOCAL_SHARED_LIBRARIES += libdrm
  89. endif
  90. LOCAL_CFLAGS_32 += -DDEFAULT_DRIVER_DIR=\"/vendor/lib/$(MESA_DRI_MODULE_REL_PATH)\"
  91. LOCAL_CFLAGS_64 += -DDEFAULT_DRIVER_DIR=\"/vendor/lib64/$(MESA_DRI_MODULE_REL_PATH)\"
  92. LOCAL_PROPRIETARY_MODULE := true
  93. # uncomment to keep the debug symbols
  94. #LOCAL_STRIP_MODULE := false
  95. ifeq ($(strip $(LOCAL_MODULE_TAGS)),)
  96. LOCAL_MODULE_TAGS := optional
  97. endif
  98. # Quiet down the build system and remove any .h files from the sources
  99. LOCAL_SRC_FILES := $(patsubst %.h, , $(LOCAL_SRC_FILES))