Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1332828b authored by Stephen Hines's avatar Stephen Hines
Browse files

Switch from clang 3.6 to new clang repository (with 3.8).

Bug: 23396112

Switch from "-fsanitize-undefined-trap-on-error" to
"-fsanitize-trap=all". The former ends up accidentally leaving
unresolved calls to __ubsan* helper functions in the object file with
clang 3.8. The latter is used when we don't include address sanitizer,
and replaces any misbehavior with a direct call to abort().

Change-Id: I8a67461b45f5f1dd9f2d179b6b64a4ca905e999f
parent 9073a5d9
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
## Clang configurations.

LLVM_PREBUILTS_VERSION := 3.6
LLVM_PREBUILTS_PATH := prebuilts/clang/$(BUILD_OS)-x86/host/$(LLVM_PREBUILTS_VERSION)/bin
LLVM_PREBUILTS_VERSION := 3.8
LLVM_PREBUILTS_PATH := prebuilts/clang/host/$(BUILD_OS)-x86/$(LLVM_PREBUILTS_VERSION)/bin
LLVM_RTLIB_PATH := $(LLVM_PREBUILTS_PATH)/../lib/clang/$(LLVM_PREBUILTS_VERSION)/lib/linux/

CLANG := $(LLVM_PREBUILTS_PATH)/clang$(BUILD_EXECUTABLE_SUFFIX)
+5 −3
Original line number Diff line number Diff line
@@ -84,7 +84,7 @@ ifneq ($(filter coverage,$(my_sanitize)),)
endif

ifneq ($(my_sanitize),)
  fsanitize_arg := $(subst $(space),$(comma),$(my_sanitize)),
  fsanitize_arg := $(subst $(space),$(comma),$(my_sanitize))
  my_cflags += -fsanitize=$(fsanitize_arg)

  ifdef LOCAL_IS_HOST_MODULE
@@ -92,8 +92,10 @@ ifneq ($(my_sanitize),)
    my_ldflags += -fsanitize=$(fsanitize_arg)
    my_ldlibs += -lrt -ldl
  else
    my_cflags += -fsanitize-undefined-trap-on-error
    ifeq ($(filter address,$(my_sanitize)),)
      my_cflags += -fsanitize-trap=all
      my_cflags += -ftrap-function=abort
    endif
    my_shared_libraries += libdl
  endif
endif