#===- libcxx/utils/docker/debian9/Dockerfile --------------------------------------------------===//
#
# Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
# See https://llvm.org/LICENSE.txt for license information.
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
#
#===-------------------------------------------------------------------------------------------===//

# Setup the base builder image with the packages we'll need to build GCC and Clang from source.
FROM launcher.gcr.io/google/debian9:latest AS builder-base
LABEL maintainer "libc++ Developers"

RUN apt-get update && \
    apt-get install -y --no-install-recommends \
      ca-certificates \
      gnupg \
      build-essential \
      wget \
      subversion \
      unzip \
      automake \
      python \
      cmake \
      ninja-build \
      curl \
      git \
      gcc-multilib \
      g++-multilib \
      libc6-dev \
      bison \
      flex \
      libtool \
      autoconf \
      binutils-dev \
      binutils-gold \
      software-properties-common \
      gnupg \
      apt-transport-https \
      sudo \
      systemd \
      sysvinit-utils \
      systemd-sysv && \
  update-alternatives --install "/usr/bin/ld" "ld" "/usr/bin/ld.gold" 20 && \
  update-alternatives --install "/usr/bin/ld" "ld" "/usr/bin/ld.bfd" 10 && \
  rm -rf /var/lib/apt/lists/*


# Build GCC versions
FROM builder-base as gcc-48-builder
LABEL maintainer "libc++ Developers"

ADD scripts/build_gcc_version.sh /tmp/build_gcc_version.sh
RUN /tmp/build_gcc_version.sh --install /opt/gcc-4.8.5 --branch gcc-4_8_5-release \
    --cherry-pick ec1cc0263f156f70693a62cf17b254a0029f4852

FROM builder-base as gcc-49-builder
LABEL maintainer "libc++ Developers"

ADD scripts/build_gcc_version.sh /tmp/build_gcc_version.sh
RUN /tmp/build_gcc_version.sh --install /opt/gcc-4.9.4 --branch gcc-4_9_4-release

FROM builder-base as gcc-5-builder
LABEL maintainer "libc++ Developers"

ADD scripts/build_gcc_version.sh /tmp/build_gcc_version.sh
RUN /tmp/build_gcc_version.sh --install /opt/gcc-5 --branch gcc-5_5_0-release

FROM builder-base as gcc-6-builder
LABEL maintainer "libc++ Developers"

ADD scripts/build_gcc_version.sh /tmp/build_gcc_version.sh
RUN /tmp/build_gcc_version.sh --install /opt/gcc-6 --branch gcc-6_5_0-release

FROM builder-base as gcc-7-builder
LABEL maintainer "libc++ Developers"

ADD scripts/build_gcc_version.sh /tmp/build_gcc_version.sh
RUN /tmp/build_gcc_version.sh --install /opt/gcc-7 --branch gcc-7_4_0-release

FROM builder-base as gcc-8-builder
LABEL maintainer "libc++ Developers"

ADD scripts/build_gcc_version.sh /tmp/build_gcc_version.sh
RUN /tmp/build_gcc_version.sh --install /opt/gcc-8 --branch gcc-8_2_0-release

FROM builder-base as gcc-tot-builder
LABEL maintainer "libc++ Developers"

ADD scripts/build_gcc_version.sh /tmp/build_gcc_version.sh
RUN /tmp/build_gcc_version.sh --install /opt/gcc-tot --branch master

# Build additional LLVM versions
FROM builder-base as llvm-36-builder
LABEL maintainer "libc++ Developers"

ADD scripts/build_llvm_version.sh /tmp/build_llvm_version.sh
RUN /tmp/build_llvm_version.sh --install /opt/llvm-3.6 --branch release/3.6.x

FROM builder-base as llvm-37-builder
LABEL maintainer "libc++ Developers"

ADD scripts/build_llvm_version.sh /tmp/build_llvm_version.sh
RUN /tmp/build_llvm_version.sh --install /opt/llvm-3.7 --branch release/3.7.x

FROM builder-base as llvm-38-builder
LABEL maintainer "libc++ Developers"

ADD scripts/build_llvm_version.sh /tmp/build_llvm_version.sh
RUN /tmp/build_llvm_version.sh --install /opt/llvm-3.8 --branch release/3.8.x

FROM builder-base as llvm-39-builder
LABEL maintainer "libc++ Developers"

ADD scripts/build_llvm_version.sh /tmp/build_llvm_version.sh
RUN /tmp/build_llvm_version.sh --install /opt/llvm-3.9 --branch release/3.9.x

FROM builder-base as llvm-4-builder
LABEL maintainer "libc++ Developers"

ADD scripts/build_llvm_version.sh /tmp/build_llvm_version.sh
RUN /tmp/build_llvm_version.sh --install /opt/llvm-4.0 --branch release/4.x

FROM builder-base as llvm-5-builder
LABEL maintainer "libc++ Developers"

ADD scripts/build_llvm_version.sh /tmp/build_llvm_version.sh
RUN /tmp/build_llvm_version.sh --install /opt/llvm-5.0 --branch release/5.x

FROM builder-base as llvm-6-builder
LABEL maintainer "libc++ Developers"

ADD scripts/build_llvm_version.sh /tmp/build_llvm_version.sh
RUN /tmp/build_llvm_version.sh --install /opt/llvm-6.0 --branch release/6.x

FROM builder-base as llvm-7-builder
LABEL maintainer "libc++ Developers"

ADD scripts/build_llvm_version.sh /tmp/build_llvm_version.sh
RUN /tmp/build_llvm_version.sh --install /opt/llvm-7.0 --branch release/7.x

FROM builder-base as llvm-8-builder
LABEL maintainer "libc++ Developers"

ADD scripts/build_llvm_version.sh /tmp/build_llvm_version.sh
RUN /tmp/build_llvm_version.sh --install /opt/llvm-8.0 --branch release/8.x

FROM builder-base as llvm-tot-builder
LABEL maintainer "libc++ Developers"

ADD scripts/build_llvm_version.sh /tmp/build_llvm_version.sh
RUN /tmp/build_llvm_version.sh --install /opt/llvm-tot --branch master


#===-------------------------------------------------------------------------------------------===//
# buildslave
#===-------------------------------------------------------------------------------------------===//
FROM builder-base AS buildbot

# Copy over the GCC and Clang installations
COPY --from=gcc-5-builder /opt/gcc-5 /opt/gcc-5
COPY --from=gcc-tot-builder /opt/gcc-tot /opt/gcc-tot
COPY --from=llvm-4-builder /opt/llvm-4.0 /opt/llvm-4.0

RUN ln -s /opt/gcc-5/bin/gcc /usr/local/bin/gcc-4.9 && \
    ln -s /opt/gcc-5/bin/g++ /usr/local/bin/g++-4.9

RUN apt-get update && \
    apt-get install -y --no-install-recommends \
    bash-completion \
    vim \
    buildbot-slave \
  && rm -rf /var/lib/apt/lists/*

ADD scripts/install_clang_packages.sh /tmp/install_clang_packages.sh
RUN /tmp/install_clang_packages.sh && rm /tmp/install_clang_packages.sh

RUN git clone https://git.llvm.org/git/libcxx.git /libcxx

#===-------------------------------------------------------------------------------------------===//
#  compiler-zoo
#===-------------------------------------------------------------------------------------------===//
FROM  buildbot AS compiler-zoo
LABEL maintainer "libc++ Developers"

# Copy over the GCC and Clang installations
COPY --from=gcc-48-builder /opt/gcc-4.8.5 /opt/gcc-4.8.5
COPY --from=gcc-49-builder /opt/gcc-4.9.4 /opt/gcc-4.9.4
COPY --from=gcc-5-builder /opt/gcc-5   /opt/gcc-5
COPY --from=gcc-6-builder /opt/gcc-6   /opt/gcc-6
COPY --from=gcc-7-builder /opt/gcc-7   /opt/gcc-7
COPY --from=gcc-8-builder /opt/gcc-8   /opt/gcc-8
COPY --from=gcc-tot-builder /opt/gcc-tot /opt/gcc-tot

COPY --from=llvm-36-builder /opt/llvm-3.6 /opt/llvm-3.6
COPY --from=llvm-37-builder /opt/llvm-3.7 /opt/llvm-3.7
COPY --from=llvm-38-builder /opt/llvm-3.8 /opt/llvm-3.8
COPY --from=llvm-39-builder /opt/llvm-3.9 /opt/llvm-3.9
COPY --from=llvm-4-builder /opt/llvm-4.0 /opt/llvm-4.0
COPY --from=llvm-5-builder /opt/llvm-5.0 /opt/llvm-5.0
COPY --from=llvm-6-builder /opt/llvm-6.0 /opt/llvm-6.0
COPY --from=llvm-7-builder /opt/llvm-7.0 /opt/llvm-7.0
COPY --from=llvm-8-builder /opt/llvm-8.0 /opt/llvm-8.0
COPY --from=llvm-tot-builder /opt/llvm-tot /opt/llvm-tot


