| LOCAL_CFLAGS += \ |
| -D_GNU_SOURCE \ |
| -D__STDC_LIMIT_MACROS \ |
| -fomit-frame-pointer \ |
| -Wall \ |
| -W \ |
| -Wno-sign-compare \ |
| -Wno-unused-parameter \ |
| -Wno-maybe-uninitialized \ |
| -Wno-missing-field-initializers \ |
| -Wwrite-strings \ |
| -Werror \ |
| -Dsprintf=sprintf \ |
| $(LOCAL_CFLAGS) |
| |
| # Disable certain warnings for use with mingw. |
| # We also must undefine WIN32_LEAN_AND_MEAN, since it is being passed globally |
| # on the command line, and LLVM defines this internally itself. |
| LOCAL_CFLAGS_windows += -Wno-array-bounds \ |
| -Wno-comment \ |
| -UWIN32_LEAN_AND_MEAN |
| |
| # Enable debug build only on Linux and Darwin |
| ifeq ($(FORCE_BUILD_LLVM_DEBUG),true) |
| LOCAL_CFLAGS_linux += -O0 -g |
| LOCAL_CFLAGS_darwin += -O0 -g |
| endif |
| |
| ifeq ($(FORCE_BUILD_LLVM_DISABLE_NDEBUG),true) |
| LOCAL_CFLAGS := \ |
| $(LOCAL_CFLAGS) \ |
| -D_DEBUG \ |
| -UNDEBUG |
| endif |
| |
| LOCAL_CFLAGS += -fno-exceptions |
| LOCAL_CPPFLAGS += -fno-rtti |
| |
| LOCAL_CPPFLAGS := \ |
| $(LOCAL_CPPFLAGS) \ |
| -Wno-sign-promo \ |
| -std=c++11 |
| |
| LOCAL_CPPFLAGS_linux := \ |
| -Woverloaded-virtual |
| |
| LOCAL_CPPFLAGS_darwin += \ |
| -Wno-deprecated-declarations \ |
| -Woverloaded-virtual |
| |
| # Make sure bionic is first so we can include system headers. |
| LOCAL_C_INCLUDES := \ |
| $(LLVM_ROOT_PATH) \ |
| $(LLVM_ROOT_PATH)/include \ |
| $(LLVM_ROOT_PATH)/host/include \ |
| $(LOCAL_C_INCLUDES) |
| |
| LOCAL_LDLIBS_linux += -lgcc_s |
| LOCAL_LDLIBS_windows += -luuid |
| |
| LOCAL_IS_HOST_MODULE := true |
| |
| ifeq (libLLVM, $(filter libLLVM,$(LOCAL_SHARED_LIBRARIES)$(LOCAL_SHARED_LIBRARIES_$(HOST_OS)))) |
| # Skip building a 32-bit shared object if they are using libLLVM. |
| LOCAL_MULTILIB := first |
| endif |