diff --git a/.github/workflows/Ubuntu20Dockerfile b/.github/workflows/UbuntuDockerfile similarity index 72% rename from .github/workflows/Ubuntu20Dockerfile rename to .github/workflows/UbuntuDockerfile index 95fe10b5c416..78a251a7b96c 100644 --- a/.github/workflows/Ubuntu20Dockerfile +++ b/.github/workflows/UbuntuDockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:20.04 +FROM ubuntu:22.04 ARG DEBIAN_FRONTEND=noninteractive ENV TZ=Europe/London @@ -24,15 +24,10 @@ RUN apt-get update && \ RUN apt-get install -y software-properties-common && \ apt-get update && \ add-apt-repository ppa:ubuntu-toolchain-r/test && \ - apt-get install -f -y gcc-9 g++-9 && \ - apt-get install -f -y gcc-10 g++-10 && \ - echo 'deb http://apt.llvm.org/focal/ llvm-toolchain-focal-11 main' | tee -a /etc/apt/sources.list.d/llvm.list && \ - echo 'deb-src http://apt.llvm.org/focal/ llvm-toolchain-focal-11 main' | tee -a /etc/apt/sources.list.d/llvm.list && \ - wget -q -O - http://apt.llvm.org/llvm-snapshot.gpg.key | apt-key add - && \ - apt-get update && \ - apt-get install -f -y llvm-9 clang-9 && \ - apt-get install -f -y llvm-10 clang-10 && \ - apt-get install -f -y llvm-11 clang-11 + apt-get install -f -y gcc-11 g++-11 && \ + apt-get install -f -y gcc-12 g++-12 && \ + apt-get install -f -y llvm-14 clang-14 && \ + apt-get install -f -y llvm-15 clang-15 # Install the tools for release_13x and newer RUN apt --fix-missing update && \ @@ -57,7 +52,7 @@ RUN if [ "$INITIAL_BUILD" != "true" ]; then \ mkdir /home/root && cd home/root && \ git clone --depth 1 --single-branch --branch $BRANCH_NAME https://github.com/flang-compiler/classic-flang-llvm-project.git classic-flang-llvm-project && \ cd classic-flang-llvm-project && \ - ./build-llvm-project.sh -t AArch64 -p /home/github/usr/local -n `nproc --ignore=1` -a /usr/bin/gcc-10 -b /usr/bin/g++-10 -i -x "-DLLVM_ENABLE_ASSERTIONS=ON" -v; \ + ./build-llvm-project.sh -t AArch64 -p /home/github/usr/local -n `nproc --ignore=1` -a /usr/bin/gcc-11 -b /usr/bin/g++-11 -i -x "-DLLVM_ENABLE_ASSERTIONS=ON" -v; \ fi RUN useradd github && \ diff --git a/.github/workflows/build_push_docker_image_Ubuntu20.yml b/.github/workflows/build_push_docker_image_Ubuntu.yml similarity index 79% rename from .github/workflows/build_push_docker_image_Ubuntu20.yml rename to .github/workflows/build_push_docker_image_Ubuntu.yml index f4b7fb3bab44..9098fa7088e8 100644 --- a/.github/workflows/build_push_docker_image_Ubuntu20.yml +++ b/.github/workflows/build_push_docker_image_Ubuntu.yml @@ -11,8 +11,8 @@ on: branches: - 'release_*x' paths-include: - - '**/.github/workflows/build_push_docker_image_Ubuntu20.yml' - - '**/.github/workflows/Ubuntu20Dockerfile.yml' + - '**/.github/workflows/build_push_docker_image_Ubuntu.yml' + - '**/.github/workflows/UbuntuDockerfile.yml' jobs: docker: @@ -38,11 +38,11 @@ jobs: - name: Build and push uses: docker/build-push-action@v2 with: - file: .github/workflows/Ubuntu20Dockerfile + file: .github/workflows/UbuntuDockerfile push: true no-cache: true context: .github/workflows - tags: ghcr.io/${{ github.repository_owner }}/ubuntu20-flang-${{ steps.extract_branch.outputs.branch }}:latest + tags: ghcr.io/${{ github.repository_owner }}/ubuntu-flang-${{ steps.extract_branch.outputs.branch }}:latest platforms: linux/arm64 build-args: | BRANCH_NAME=${{ steps.extract_branch.outputs.branch }} diff --git a/.github/workflows/flang-arm64-tests.yml b/.github/workflows/flang-arm64-tests.yml index 59f310f3a272..21308dcba7ca 100644 --- a/.github/workflows/flang-arm64-tests.yml +++ b/.github/workflows/flang-arm64-tests.yml @@ -12,7 +12,7 @@ jobs: build_path: /home/github install_prefix: /home/github/usr/local container: - image: ghcr.io/${{ github.repository_owner}}/ubuntu20-flang-${{ github.base_ref }}:latest + image: ghcr.io/${{ github.repository_owner}}/ubuntu-flang-${{ github.base_ref }}:latest credentials: username: github strategy: @@ -20,12 +20,12 @@ jobs: target: [AArch64] cc: [clang] cpp: [clang++] - version: [10, 11] + version: [14, 15] include: - target: AArch64 cc: gcc cpp: g++ - version: 10 + version: [11, 12] steps: - name: Check tools diff --git a/.github/workflows/flang-tests.yml b/.github/workflows/flang-tests.yml index 9d225e96c2a1..1471c3bbe2ae 100644 --- a/.github/workflows/flang-tests.yml +++ b/.github/workflows/flang-tests.yml @@ -7,7 +7,7 @@ on: jobs: build: - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 env: install_prefix: /usr/local strategy: @@ -15,12 +15,12 @@ jobs: target: [X86] cc: [clang] cpp: [clang++] - version: [10, 11] + version: [14, 15] include: - target: X86 cc: gcc cpp: g++ - version: 10 + version: [11, 12] steps: - uses: actions/checkout@v2 @@ -29,20 +29,15 @@ jobs: run: | sudo add-apt-repository ppa:ubuntu-toolchain-r/ppa sudo touch /etc/apt/sources.list.d/llvm.list - echo 'deb http://apt.llvm.org/focal/ llvm-toolchain-focal-11 main' | sudo tee -a /etc/apt/sources.list.d/llvm.list - echo 'deb-src http://apt.llvm.org/focal/ llvm-toolchain-focal-11 main' | sudo tee -a /etc/apt/sources.list.d/llvm.list - wget -q -O - http://apt.llvm.org/llvm-snapshot.gpg.key|sudo apt-key add - sudo apt update sudo apt install -f -y llvm-${{ matrix.version }} clang-${{ matrix.version}} - - if: matrix.cc == 'gcc' && matrix.version == '10' + - if: matrix.cc == 'gcc' run: | sudo add-apt-repository ppa:ubuntu-toolchain-r/ppa - sudo apt install gcc-10 g++-10 - sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 10 - sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 20 - sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-9 10 - sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-10 20 + sudo apt install gcc-${{ matrix.version }} g++-${{ matrix.version }} + sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-${{ matrix.version }} 20 + sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-${{ matrix.version }} 20 - name: ccache uses: hendrikmuhs/ccache-action@v1 diff --git a/.github/workflows/pre-compile_llvm.yml b/.github/workflows/pre-compile_llvm.yml index 841f6c1dc976..924918cded71 100644 --- a/.github/workflows/pre-compile_llvm.yml +++ b/.github/workflows/pre-compile_llvm.yml @@ -13,32 +13,26 @@ jobs: strategy: matrix: target: [X86] - cc: [clang, gcc] - version: [10, 11] + cc: [clang] + cpp: [clang++] + version: [14, 15] + include: + - target: X86 + cc: gcc + cpp: g++ + version: [11, 12] steps: - if: matrix.cc == 'clang' run: | - echo "cpp=clang++" >> $GITHUB_ENV sudo add-apt-repository ppa:ubuntu-toolchain-r/ppa - sudo touch /etc/apt/sources.list.d/llvm.list - echo 'deb http://apt.llvm.org/focal/ llvm-toolchain-focal-11 main' | sudo tee -a /etc/apt/sources.list.d/llvm.list - echo 'deb-src http://apt.llvm.org/focal/ llvm-toolchain-focal-11 main' | sudo tee -a /etc/apt/sources.list.d/llvm.list - wget -q -O - http://apt.llvm.org/llvm-snapshot.gpg.key|sudo apt-key add - sudo apt update - sudo apt install -f -y llvm-${{ matrix.version }} clang-${{ matrix.version}} - - - if: matrix.cc == 'gcc' && matrix.version == '10' - run: | - echo "cpp=g++" >> $GITHUB_ENV - sudo add-apt-repository ppa:ubuntu-toolchain-r/ppa - sudo apt install gcc-10 g++-10 + sudo apt install -f -y llvm-${{ matrix.version }} clang-${{ matrix.version }} - - if: matrix.cc == 'gcc' && matrix.version == '11' + - if: matrix.cc == 'gcc' run: | - echo "cpp=g++" >> $GITHUB_ENV sudo add-apt-repository ppa:ubuntu-toolchain-r/ppa - sudo apt install gcc-11 g++-11 + sudo apt install gcc-${{ matrix.version }} g++-${{ matrix.vresion }} - name: Check tools run: | @@ -46,7 +40,7 @@ jobs: cmake --version make --version ${{ matrix.cc }}-${{ matrix.version }} --version - ${{env.cpp}}-${{ matrix.version }} --version + ${{ matrix.cpp }}-${{ matrix.version }} --version - name: Extract branch name run: echo "::set-output name=branch::${GITHUB_REF#refs/heads/}" @@ -66,7 +60,7 @@ jobs: -t ${{ matrix.target }} \ -p /usr/local \ -a /usr/bin/${{ matrix.cc }}-${{ matrix.version }} \ - -b /usr/bin/${{env.cpp}}-${{ matrix.version }} \ + -b /usr/bin/${{ matrix.cpp }}-${{ matrix.version }} \ -n $(nproc) \ -x "-DLLVM_ENABLE_ASSERTIONS=ON" \ -v