1#================= 2# Update clang to a version with improved tsan and fuzzing capabilities 3 4RUN git clone -n -b release_38 http://llvm.org/git/llvm.git && ${'\\'} 5 cd llvm && git checkout ad57503 && cd .. 6RUN git clone -n -b release_38 http://llvm.org/git/clang.git && ${'\\'} 7 cd clang && git checkout ad2c56e && cd .. 8RUN git clone -n -b release_38 http://llvm.org/git/compiler-rt.git && ${'\\'} 9 cd compiler-rt && git checkout 3176922 && cd .. 10RUN git clone -n -b release_38 ${'\\'} 11 http://llvm.org/git/clang-tools-extra.git && cd clang-tools-extra && ${'\\'} 12 git checkout c288525 && cd .. 13RUN git clone -n -b release_38 http://llvm.org/git/libcxx.git && ${'\\'} 14 cd libcxx && git checkout fda3549 && cd .. 15RUN git clone -n -b release_38 http://llvm.org/git/libcxxabi.git && ${'\\'} 16 cd libcxxabi && git checkout 8d4e51d && cd .. 17 18RUN mv clang llvm/tools 19RUN mv compiler-rt llvm/projects 20RUN mv clang-tools-extra llvm/tools/clang/tools 21RUN mv libcxx llvm/projects 22RUN mv libcxxabi llvm/projects 23 24RUN mkdir llvm-build 25RUN cd llvm-build && cmake ${'\\'} 26 -DCMAKE_BUILD_TYPE:STRING=Release ${'\\'} 27 -DCMAKE_INSTALL_PREFIX:STRING=/usr ${'\\'} 28 -DLLVM_TARGETS_TO_BUILD:STRING=X86 ${'\\'} 29 ../llvm 30RUN make -C llvm-build -j 12 && make -C llvm-build install && rm -rf llvm-build 31