|  | @@ -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++
 |