| 
					
				 | 
			
			
				@@ -67,6 +67,39 @@ RUN apt-get update && apt-get install -y time && apt-get clean 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 # C++ dependencies 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 RUN apt-get update && apt-get -y install libgflags-dev libgtest-dev libc++-dev clang && apt-get clean 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#================= 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# Update clang to a version with improved tsan 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+RUN apt-get update && apt-get -y install python cmake && apt-get clean 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+RUN git clone -n -b release_38 http://llvm.org/git/llvm.git && \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  cd llvm && git checkout ad57503 && cd .. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+RUN git clone -n -b release_38 http://llvm.org/git/clang.git && \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  cd clang && git checkout ad2c56e && cd .. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+RUN git clone -n -b release_38 http://llvm.org/git/compiler-rt.git && \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  cd compiler-rt && git checkout 3176922 && cd .. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+RUN git clone -n -b release_38 \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  http://llvm.org/git/clang-tools-extra.git && cd clang-tools-extra && \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  git checkout c288525 && cd .. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+RUN git clone -n -b release_38 http://llvm.org/git/libcxx.git && \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  cd libcxx && git checkout fda3549  && cd .. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+RUN git clone -n -b release_38 http://llvm.org/git/libcxxabi.git && \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  cd libcxxabi && git checkout 8d4e51d && cd .. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+RUN mv clang llvm/tools 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+RUN mv compiler-rt llvm/projects 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+RUN mv clang-tools-extra llvm/tools/clang/tools 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+RUN mv libcxx llvm/projects 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+RUN mv libcxxabi llvm/projects 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+RUN mkdir llvm-build 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+RUN cd llvm-build && cmake \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  -DCMAKE_BUILD_TYPE:STRING=Release \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  -DCMAKE_INSTALL_PREFIX:STRING=/usr \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  -DLLVM_TARGETS_TO_BUILD:STRING=X86 \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  ../llvm 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+RUN make -C llvm-build && make -C llvm-build install && rm -rf llvm-build 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 # Prepare ccache 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 RUN ln -s /usr/bin/ccache /usr/local/bin/gcc 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 RUN ln -s /usr/bin/ccache /usr/local/bin/g++ 
			 |