diff options
| author | Alexander Potapenko <glider@google.com> | 2013-10-28 08:21:35 +0000 |
|---|---|---|
| committer | Alexander Potapenko <glider@google.com> | 2013-10-28 08:21:35 +0000 |
| commit | bcaea0ee0ba0adaa502ecd536bf7a8a2cdf5a686 (patch) | |
| tree | 8b3956dd5a16b70c8686a33bd15861daa012f979 /clang/runtime/compiler-rt | |
| parent | 6094f30da2e717cdf159743c0140590994862244 (diff) | |
| download | bcm5719-llvm-bcaea0ee0ba0adaa502ecd536bf7a8a2cdf5a686.tar.gz bcm5719-llvm-bcaea0ee0ba0adaa502ecd536bf7a8a2cdf5a686.zip | |
[libsanitizer] configure+make: install include/sanitizer into Clang
When building Clang with compiler-rt, copy the contents of compiler-rt/include/sanitizer into lib/clang/3.4/include/sanitizer
llvm-svn: 193515
Diffstat (limited to 'clang/runtime/compiler-rt')
| -rw-r--r-- | clang/runtime/compiler-rt/Makefile | 26 |
1 files changed, 24 insertions, 2 deletions
diff --git a/clang/runtime/compiler-rt/Makefile b/clang/runtime/compiler-rt/Makefile index 96fb8fe7a4d..c4d2ad0cf95 100644 --- a/clang/runtime/compiler-rt/Makefile +++ b/clang/runtime/compiler-rt/Makefile @@ -23,7 +23,9 @@ 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 @@ -150,10 +152,18 @@ CleanRuntimeLibraries: ProjObjRoot=$(PROJ_OBJ_DIR) \ 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 @@ -210,9 +220,21 @@ 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.%) -install-local:: $(RuntimeDirs:%=RuntimeLibraryInstall.%) +all-local:: $(RuntimeDirs:%=RuntimeLibrary.%) RuntimeHeader +install-local:: $(RuntimeDirs:%=RuntimeLibraryInstall.%) RuntimeHeaderInstall clean-local:: CleanRuntimeLibraries endif |

