diff --git a/clang/docs/AddressSanitizer.rst b/clang/docs/AddressSanitizer.rst index cbdd7c65e847..617543334d05 100644 --- a/clang/docs/AddressSanitizer.rst +++ b/clang/docs/AddressSanitizer.rst @@ -23,8 +23,7 @@ Typical slowdown introduced by AddressSanitizer is **2x**. How to build ============ -Follow the `clang build instructions <../get_started.html>`_. CMake build is -supported. +Build LLVM/Clang with `CMake `_. Usage ===== diff --git a/clang/docs/MemorySanitizer.rst b/clang/docs/MemorySanitizer.rst index 262ca76eb1ed..8841fc3501da 100644 --- a/clang/docs/MemorySanitizer.rst +++ b/clang/docs/MemorySanitizer.rst @@ -16,8 +16,7 @@ Typical slowdown introduced by MemorySanitizer is **3x**. How to build ============ -Follow the `clang build instructions <../get_started.html>`_. CMake -build is supported. +Build LLVM/Clang with `CMake `_. Usage ===== diff --git a/clang/docs/ThreadSanitizer.rst b/clang/docs/ThreadSanitizer.rst index a1d81e9a9c29..d1aeaa8a58c3 100644 --- a/clang/docs/ThreadSanitizer.rst +++ b/clang/docs/ThreadSanitizer.rst @@ -12,8 +12,7 @@ ThreadSanitizer is about **5x-10x**. How to build ------------ -Follow the `Clang build instructions <../get_started.html>`_. CMake build is -supported. +Build LLVM/Clang with `CMake `_. Supported Platforms ------------------- diff --git a/clang/runtime/compiler-rt/Makefile b/clang/runtime/compiler-rt/Makefile index f06ef990f8e5..6daa6d1c5df9 100644 --- a/clang/runtime/compiler-rt/Makefile +++ b/clang/runtime/compiler-rt/Makefile @@ -23,9 +23,7 @@ ResourceDir := $(PROJ_OBJ_ROOT)/$(BuildMode)/lib/clang/$(CLANG_VERSION) PROJ_resources := $(DESTDIR)$(PROJ_prefix)/lib/clang/$(CLANG_VERSION) ResourceLibDir := $(ResourceDir)/lib -ResourceIncludeDir := $(ResourceDir)/include PROJ_resources_lib := $(PROJ_resources)/lib -PROJ_resources_include := $(PROJ_resources)/include # Expect compiler-rt to be in llvm/projects/compiler-rt COMPILERRT_SRC_ROOT := $(LLVM_SRC_ROOT)/projects/compiler-rt @@ -77,9 +75,7 @@ ifeq ($(OS),Darwin) RuntimeDirs += darwin macho_embedded RuntimeLibrary.darwin.Configs := \ eprintf.a 10.4.a osx.a cc_kext.a \ - asan_osx_dynamic.dylib \ - profile_osx.a \ - ubsan_osx.a + profile_osx.a IOS_SDK := $(shell xcrun --show-sdk-path -sdk iphoneos 2> /dev/null) IOSSIM_SDK := $(shell xcrun --show-sdk-path -sdk iphonesimulator 2> /dev/null) @@ -92,10 +88,6 @@ ifneq ($(IOS_SDK),) RuntimeLibrary.darwin.Configs += cc_kext_ios5.a endif -ifneq ($(IOSSIM_SDK),) -RuntimeLibrary.darwin.Configs += asan_iossim_dynamic.dylib -endif - RuntimeLibrary.macho_embedded.Configs := \ hard_static.a hard_pic.a ifneq (,$(findstring ARM,$(TARGETS_TO_BUILD))) @@ -122,8 +114,7 @@ TryCompile = \ # We try to build 32-bit runtimes both on 32-bit hosts and 64-bit hosts. Runtime32BitConfigs = \ - builtins-i386.a profile-i386.a san-i386.a asan-i386.a asan_cxx-i386.a \ - ubsan-i386.a ubsan_cxx-i386.a + builtins-i386.a profile-i386.a # We currently only try to generate runtime libraries on x86. ifeq ($(ARCH),x86) @@ -132,21 +123,15 @@ endif ifeq ($(ARCH),x86_64) RuntimeLibrary.linux.Configs += \ - builtins-x86_64.a profile-x86_64.a san-x86_64.a asan-x86_64.a \ - asan_cxx-x86_64.a tsan-x86_64.a msan-x86_64.a ubsan-x86_64.a \ - ubsan_cxx-x86_64.a dfsan-x86_64.a lsan-x86_64.a -# We need to build 32-bit ASan/UBsan libraries on 64-bit platform, and add them -# to the list of runtime libraries to make -# "clang -fsanitize=(address|undefined) -m32" work. + builtins-x86_64.a profile-x86_64.a +# We need to build 32-bit libraries on 64-bit platform, and add them +# to the list of runtime libraries to make "clang -m32" work. # We check that Clang can produce working 32-bit binaries by compiling a simple # executable. test_source = $(LLVM_SRC_ROOT)/tools/clang/runtime/compiler-rt/clang_linux_test_input.c ifeq ($(call TryCompile,$(ToolDir)/clang,$(test_source),-m32),0) RuntimeLibrary.linux.Configs += $(Runtime32BitConfigs) endif -ifneq ($(LLVM_ANDROID_TOOLCHAIN_DIR),) -RuntimeLibrary.linux.Configs += asan-arm-android.so -endif endif endif @@ -166,7 +151,6 @@ BuildRuntimeLibraries: ProjObjRoot=$(PROJ_OBJ_DIR) \ CC="$(ToolDir)/clang" \ VERBOSE=$(VERBOSE) \ - LLVM_ANDROID_TOOLCHAIN_DIR="$(LLVM_ANDROID_TOOLCHAIN_DIR)" \ $(RuntimeDirs:%=clang_%) .PHONY: BuildRuntimeLibraries CleanRuntimeLibraries: @@ -176,18 +160,10 @@ CleanRuntimeLibraries: VERBOSE=$(VERBOSE) \ clean .PHONY: CleanRuntimeLibraries -RuntimeHeader: $(ResourceIncludeDir)/sanitizer $(PROJ_resources_lib): $(Verb) $(MKDIR) $@ -$(ResourceIncludeDir): - $(Verb) $(MKDIR) $@ - -$(ResourceIncludeDir)/sanitizer: $(ResourceIncludeDir) - $(Verb) $(MKDIR) $@ - $(Verb) cp $(COMPILERRT_SRC_ROOT)/include/sanitizer/*.h $@ - # Expand rules for copying/installing each individual library. We can't use # implicit rules here because we need to match against multiple things. define RuntimeLibraryTemplate @@ -242,21 +218,9 @@ RuntimeLibraryInstall.$1: \ endef $(foreach lib,$(RuntimeDirs), $(eval $(call RuntimeLibraryTemplate,$(lib)))) -$(PROJ_resources_include): - $(Verb) $(MKDIR) $@ - -$(PROJ_resources_include)/sanitizer: $(ResourceIncludeDir)/sanitizer $(PROJ_resources_include) - $(Verb) $(MKDIR) $@ - $(Echo) Installing compiler runtime headers - $(Verb) $(DataInstall) $(ResourceIncludeDir)/sanitizer/* \ - $(PROJ_resources_include)/sanitizer - -RuntimeHeaderInstall: $(PROJ_resources_include)/sanitizer -.PHONY: RuntimeHeaderInstall - # Hook into the standard Makefile rules. -all-local:: $(RuntimeDirs:%=RuntimeLibrary.%) RuntimeHeader -install-local:: $(RuntimeDirs:%=RuntimeLibraryInstall.%) RuntimeHeaderInstall +all-local:: $(RuntimeDirs:%=RuntimeLibrary.%) +install-local:: $(RuntimeDirs:%=RuntimeLibraryInstall.%) clean-local:: CleanRuntimeLibraries endif