FROM dockcross/base:latest MAINTAINER Matt McCormick "matt.mccormick@kitware.com" # This image use Tinycc as C compiler and GCC as C++ compiler ARG REPO_URL=https://repo.or.cz/tinycc.git ENV REPO_URL=${REPO_URL} # Disable options: --with-libgcc --disable-static RUN git clone --recurse-submodules --remote-submodules ${REPO_URL} \ && cd tinycc \ && ./configure --cpu=x86_64 \ && make -j$(nproc) \ && make test \ && make install ENV PATH="/usr/local/bin:${PATH}" # Test if compiler work RUN tcc -v ENV CROSS_TRIPLE x86_64-linux-gnu ENV CROSS_ROOT /usr/bin ENV AS=/usr/bin/${CROSS_TRIPLE}-as \ AR=/usr/bin/${CROSS_TRIPLE}-ar \ CC=/usr/local/bin/tcc \ CPP=/usr/bin/${CROSS_TRIPLE}-cpp \ CXX=/usr/bin/${CROSS_TRIPLE}-g++ \ LD=/usr/bin/${CROSS_TRIPLE}-ld \ FC=/usr/bin/${CROSS_TRIPLE}-gfortran COPY ${CROSS_TRIPLE}-noop.sh /usr/bin/${CROSS_TRIPLE}-noop COPY Toolchain.cmake /usr/lib/${CROSS_TRIPLE}/ ENV CMAKE_TOOLCHAIN_FILE /usr/lib/${CROSS_TRIPLE}/Toolchain.cmake #include "common.label-and-env"