From d8261ac0fbf8957ad7b24c893850e060647d43a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Storsj=C3=B6?= Date: Wed, 25 Oct 2017 21:54:42 +0300 Subject: [PATCH] Don't rely on AR/RANLIB env variables during the toolchain build Instead manually specify the tools to be used in all of these steps. --- Dockerfile | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/Dockerfile b/Dockerfile index 5dc2d0e..5b676be 100644 --- a/Dockerfile +++ b/Dockerfile @@ -72,11 +72,6 @@ RUN for arch in armv7 aarch64 i686 x86_64; do \ done; \ done -ENV AR=llvm-ar -ENV RANLIB=llvm-ranlib -ENV AS=llvm-as -ENV NM=llvm-nm - # Build mingw with our freshly built cross compiler RUN cd mingw-w64/mingw-w64-crt && \ for arch in armv7 aarch64 i686 x86_64; do \ @@ -96,7 +91,7 @@ RUN cd mingw-w64/mingw-w64-crt && \ ;; \ esac && \ CC=$arch-w64-mingw32-clang \ - AR=llvm-ar DLLTOOL=llvm-dlltool ../configure --host=$arch-w64-mingw32 --prefix=$TOOLCHAIN_PREFIX/$arch-w64-mingw32 $FLAGS && \ + AR=llvm-ar RANLIB=llvm-ranlib DLLTOOL=llvm-dlltool ../configure --host=$arch-w64-mingw32 --prefix=$TOOLCHAIN_PREFIX/$arch-w64-mingw32 $FLAGS && \ make -j4 && make install && \ cd .. || exit 1; \ done @@ -129,8 +124,8 @@ RUN cd compiler-rt && \ mkdir build-$arch && cd build-$arch && cmake \ -DCMAKE_C_COMPILER=$arch-w64-mingw32-clang \ -DCMAKE_SYSTEM_NAME=Windows \ - -DCMAKE_AR=$TOOLCHAIN_PREFIX/bin/$AR \ - -DCMAKE_RANLIB=$TOOLCHAIN_PREFIX/bin/$RANLIB \ + -DCMAKE_AR=$TOOLCHAIN_PREFIX/bin/llvm-ar \ + -DCMAKE_RANLIB=$TOOLCHAIN_PREFIX/bin/llvm-ranlib \ -DCMAKE_C_COMPILER_WORKS=1 \ -DCMAKE_C_COMPILER_TARGET=$buildarchname-windows-gnu \ -DCOMPILER_RT_DEFAULT_TARGET_ONLY=TRUE \ @@ -183,8 +178,8 @@ RUN cd libcxxabi && \ -DCMAKE_SYSTEM_NAME=Windows \ -DCMAKE_C_COMPILER_WORKS=TRUE \ -DCMAKE_CXX_COMPILER_WORKS=TRUE \ - -DCMAKE_AR=$TOOLCHAIN_PREFIX/bin/$AR \ - -DCMAKE_RANLIB=$TOOLCHAIN_PREFIX/bin/$RANLIB \ + -DCMAKE_AR=$TOOLCHAIN_PREFIX/bin/llvm-ar \ + -DCMAKE_RANLIB=$TOOLCHAIN_PREFIX/bin/llvm-ranlib \ -DLIBCXXABI_USE_COMPILER_RT=ON \ -DLIBCXXABI_ENABLE_EXCEPTIONS=$EXCEPTIONS \ -DLIBCXXABI_ENABLE_THREADS=OFF \ @@ -218,8 +213,8 @@ RUN cd libcxx && \ -DCMAKE_SYSTEM_NAME=Windows \ -DCMAKE_C_COMPILER_WORKS=TRUE \ -DCMAKE_CXX_COMPILER_WORKS=TRUE \ - -DCMAKE_AR=$TOOLCHAIN_PREFIX/bin/$AR \ - -DCMAKE_RANLIB=$TOOLCHAIN_PREFIX/bin/$RANLIB \ + -DCMAKE_AR=$TOOLCHAIN_PREFIX/bin/llvm-ar \ + -DCMAKE_RANLIB=$TOOLCHAIN_PREFIX/bin/llvm-ranlib \ -DLIBCXX_USE_COMPILER_RT=ON \ -DLIBCXX_INSTALL_HEADERS=ON \ -DLIBCXX_ENABLE_EXCEPTIONS=$EXCEPTIONS \ @@ -253,8 +248,8 @@ RUN cd libunwind && \ -DCMAKE_SYSTEM_NAME=Windows \ -DCMAKE_C_COMPILER_WORKS=TRUE \ -DCMAKE_CXX_COMPILER_WORKS=TRUE \ - -DCMAKE_AR=$TOOLCHAIN_PREFIX/bin/$AR \ - -DCMAKE_RANLIB=$TOOLCHAIN_PREFIX/bin/$RANLIB \ + -DCMAKE_AR=$TOOLCHAIN_PREFIX/bin/llvm-ar \ + -DCMAKE_RANLIB=$TOOLCHAIN_PREFIX/bin/llvm-ranlib \ -DLLVM_NO_OLD_LIBSTDCXX=TRUE \ -DLIBUNWIND_USE_COMPILER_RT=TRUE \ -DLIBUNWIND_ENABLE_THREADS=TRUE \ @@ -288,3 +283,8 @@ RUN cd /build/hello && \ for arch in armv7 x86_64 i686; do \ $arch-w64-mingw32-clang++ hello-exception.cpp -o hello-exception-$arch.exe -fsjlj-exceptions || exit 1; \ done + +ENV AR=llvm-ar +ENV RANLIB=llvm-ranlib +ENV AS=llvm-as +ENV NM=llvm-nm