Merge branch 'master' into dependabot/submodules/vtr-verilog-to-routing-4834fd0
This commit is contained in:
commit
243704c089
|
@ -22,7 +22,7 @@ env:
|
||||||
jobs:
|
jobs:
|
||||||
change_detect:
|
change_detect:
|
||||||
name: "Detect code changes"
|
name: "Detect code changes"
|
||||||
runs-on: ubuntu-18.04
|
runs-on: ubuntu-20.04
|
||||||
outputs:
|
outputs:
|
||||||
# this is output as string, see https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#jobsjob_idoutputs
|
# this is output as string, see https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#jobsjob_idoutputs
|
||||||
source_modified: ${{ steps.changes.outputs.status_code == '1' }}
|
source_modified: ${{ steps.changes.outputs.status_code == '1' }}
|
||||||
|
@ -67,7 +67,7 @@ jobs:
|
||||||
needs: change_detect
|
needs: change_detect
|
||||||
if: ${{ fromJSON(needs.change_detect.outputs.source_modified) }}
|
if: ${{ fromJSON(needs.change_detect.outputs.source_modified) }}
|
||||||
name: ${{ matrix.config.name }}
|
name: ${{ matrix.config.name }}
|
||||||
runs-on: ubuntu-18.04
|
runs-on: ubuntu-20.04
|
||||||
# Note: dependencies are installed in the container. See details about dependency list in docker/Dockerfile.master
|
# Note: dependencies are installed in the container. See details about dependency list in docker/Dockerfile.master
|
||||||
# Comment the line out when base image is built again
|
# Comment the line out when base image is built again
|
||||||
#container: ghcr.io/${{ needs.change_detect.outputs.docker_repo }}/openfpga-build-${{ matrix.config.cc}}
|
#container: ghcr.io/${{ needs.change_detect.outputs.docker_repo }}/openfpga-build-${{ matrix.config.cc}}
|
||||||
|
@ -76,31 +76,31 @@ jobs:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
config:
|
config:
|
||||||
- name: "Build Compatibility: GCC-7 (Ubuntu 18.04)"
|
- name: "Build Compatibility: GCC-7 (Ubuntu 20.04)"
|
||||||
cc: gcc-7
|
cc: gcc-7
|
||||||
cxx: g++-7
|
cxx: g++-7
|
||||||
- name: "Build Compatibility: GCC-8 (Ubuntu 18.04)"
|
- name: "Build Compatibility: GCC-8 (Ubuntu 20.04)"
|
||||||
cc: gcc-8
|
cc: gcc-8
|
||||||
cxx: g++-8
|
cxx: g++-8
|
||||||
- name: "Build Compatibility: GCC-9 (Ubuntu 18.04)"
|
- name: "Build Compatibility: GCC-9 (Ubuntu 20.04)"
|
||||||
cc: gcc-9
|
cc: gcc-9
|
||||||
cxx: g++-9
|
cxx: g++-9
|
||||||
- name: "Build Compatibility: GCC-10 (Ubuntu 18.04)"
|
- name: "Build Compatibility: GCC-10 (Ubuntu 20.04)"
|
||||||
cc: gcc-10
|
cc: gcc-10
|
||||||
cxx: g++-10
|
cxx: g++-10
|
||||||
- name: "Build Compatibility: GCC-11 (Ubuntu 18.04)"
|
- name: "Build Compatibility: GCC-11 (Ubuntu 20.04)"
|
||||||
cc: gcc-11
|
cc: gcc-11
|
||||||
cxx: g++-11
|
cxx: g++-11
|
||||||
- name: "Build Compatibility: Clang-6 (Ubuntu 18.04)"
|
- name: "Build Compatibility: Clang-6 (Ubuntu 20.04)"
|
||||||
cc: clang-6.0
|
cc: clang-6.0
|
||||||
cxx: clang++-6.0
|
cxx: clang++-6.0
|
||||||
- name: "Build Compatibility: Clang-7 (Ubuntu 18.04)"
|
- name: "Build Compatibility: Clang-7 (Ubuntu 20.04)"
|
||||||
cc: clang-7
|
cc: clang-7
|
||||||
cxx: clang++-7
|
cxx: clang++-7
|
||||||
- name: "Build Compatibility: Clang-8 (Ubuntu 18.04)"
|
- name: "Build Compatibility: Clang-8 (Ubuntu 20.04)"
|
||||||
cc: clang-8
|
cc: clang-8
|
||||||
cxx: clang++-8
|
cxx: clang++-8
|
||||||
- name: "Build Compatibility: Clang-10 (Ubuntu 18.04)"
|
- name: "Build Compatibility: Clang-10 (Ubuntu 20.04)"
|
||||||
cc: clang-10
|
cc: clang-10
|
||||||
cxx: clang++-10
|
cxx: clang++-10
|
||||||
# Define the steps to run the build job
|
# Define the steps to run the build job
|
||||||
|
@ -119,7 +119,7 @@ jobs:
|
||||||
submodules: true
|
submodules: true
|
||||||
|
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: ./.github/workflows/install_dependencies_build.sh
|
run: sudo bash ./.github/workflows/install_dependencies_build.sh
|
||||||
|
|
||||||
- name: Dump tool versions
|
- name: Dump tool versions
|
||||||
run: |
|
run: |
|
||||||
|
@ -200,7 +200,7 @@ jobs:
|
||||||
submodules: true
|
submodules: true
|
||||||
|
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: ./.github/workflows/install_dependencies_build.sh
|
run: sudo bash ./.github/workflows/install_dependencies_build.sh
|
||||||
|
|
||||||
- name: Dump tool versions
|
- name: Dump tool versions
|
||||||
run: |
|
run: |
|
||||||
|
@ -217,7 +217,7 @@ jobs:
|
||||||
|
|
||||||
docker_distribution:
|
docker_distribution:
|
||||||
name: Build docker image for distribution
|
name: Build docker image for distribution
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-20.04
|
||||||
needs: [linux_build, change_detect]
|
needs: [linux_build, change_detect]
|
||||||
steps:
|
steps:
|
||||||
- name: Cancel previous
|
- name: Cancel previous
|
||||||
|
@ -251,9 +251,10 @@ jobs:
|
||||||
tags: |
|
tags: |
|
||||||
ghcr.io/${{ needs.change_detect.outputs.docker_repo }}/openfpga-master:latest
|
ghcr.io/${{ needs.change_detect.outputs.docker_repo }}/openfpga-master:latest
|
||||||
ghcr.io/${{ needs.change_detect.outputs.docker_repo }}/openfpga-master:${{ needs.change_detect.outputs.sha_short }}
|
ghcr.io/${{ needs.change_detect.outputs.docker_repo }}/openfpga-master:${{ needs.change_detect.outputs.sha_short }}
|
||||||
|
|
||||||
linux_regression_tests:
|
linux_regression_tests:
|
||||||
name: linux_regression_tests
|
name: linux_regression_tests
|
||||||
runs-on: ubuntu-18.04
|
runs-on: ubuntu-20.04
|
||||||
needs: [linux_build, change_detect]
|
needs: [linux_build, change_detect]
|
||||||
container: ghcr.io/${{ needs.change_detect.outputs.docker_repo }}/openfpga-env
|
container: ghcr.io/${{ needs.change_detect.outputs.docker_repo }}/openfpga-env
|
||||||
strategy:
|
strategy:
|
||||||
|
@ -293,7 +294,7 @@ jobs:
|
||||||
chmod +x yosys/install/bin/yosys-config
|
chmod +x yosys/install/bin/yosys-config
|
||||||
chmod +x yosys/install/bin/yosys-filterlib
|
chmod +x yosys/install/bin/yosys-filterlib
|
||||||
chmod +x yosys/install/bin/yosys-smtbmc
|
chmod +x yosys/install/bin/yosys-smtbmc
|
||||||
- name: ${{matrix.config.name}}_GCC-8_(Ubuntu 18.04)
|
- name: ${{matrix.config.name}}_GCC-8_(Ubuntu 20.04)
|
||||||
shell: bash
|
shell: bash
|
||||||
run: source openfpga.sh && source openfpga_flow/regression_test_scripts/${{matrix.config.name}}.sh --debug --show_thread_logs
|
run: source openfpga.sh && source openfpga_flow/regression_test_scripts/${{matrix.config.name}}.sh --debug --show_thread_logs
|
||||||
- name: Upload artifact
|
- name: Upload artifact
|
||||||
|
@ -304,11 +305,12 @@ jobs:
|
||||||
retention-days: 1
|
retention-days: 1
|
||||||
path: |
|
path: |
|
||||||
openfpga_flow/**/*.log
|
openfpga_flow/**/*.log
|
||||||
|
|
||||||
docker_regression_tests:
|
docker_regression_tests:
|
||||||
needs: change_detect
|
needs: change_detect
|
||||||
if: ${{ !fromJSON(needs.change_detect.outputs.source_modified) }}
|
if: ${{ !fromJSON(needs.change_detect.outputs.source_modified) }}
|
||||||
name: docker_regression_tests
|
name: docker_regression_tests
|
||||||
runs-on: ubuntu-18.04
|
runs-on: ubuntu-20.04
|
||||||
container:
|
container:
|
||||||
image: ghcr.io/${{ needs.change_detect.outputs.docker_repo }}/openfpga-master:latest
|
image: ghcr.io/${{ needs.change_detect.outputs.docker_repo }}/openfpga-master:latest
|
||||||
options: --user root --workdir /home/openfpga_user
|
options: --user root --workdir /home/openfpga_user
|
||||||
|
@ -336,7 +338,7 @@ jobs:
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v2
|
||||||
with:
|
with:
|
||||||
submodules: true
|
submodules: true
|
||||||
- name: ${{matrix.config.name}}_GCC-8_(Ubuntu 18.04)
|
- name: ${{matrix.config.name}}_GCC-8_(Ubuntu 20.04)
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
bash .github/workflows/install_dependencies_run.sh
|
bash .github/workflows/install_dependencies_run.sh
|
||||||
|
|
|
@ -13,7 +13,7 @@ jobs:
|
||||||
# Test the RTL compilation compatibility
|
# Test the RTL compilation compatibility
|
||||||
verilog:
|
verilog:
|
||||||
name: RTL compilation and tests
|
name: RTL compilation and tests
|
||||||
runs-on: ubuntu-18.04
|
runs-on: ubuntu-20.04
|
||||||
steps:
|
steps:
|
||||||
- name: Cancel previous
|
- name: Cancel previous
|
||||||
uses: styfle/cancel-workflow-action@0.9.1
|
uses: styfle/cancel-workflow-action@0.9.1
|
||||||
|
|
|
@ -10,7 +10,7 @@ env:
|
||||||
jobs:
|
jobs:
|
||||||
change_detect:
|
change_detect:
|
||||||
name: "Detect code changes"
|
name: "Detect code changes"
|
||||||
runs-on: ubuntu-18.04
|
runs-on: ubuntu-20.04
|
||||||
outputs:
|
outputs:
|
||||||
docker_repo: ${{ steps.changes.outputs.docker_repo }}
|
docker_repo: ${{ steps.changes.outputs.docker_repo }}
|
||||||
steps:
|
steps:
|
||||||
|
|
|
@ -31,7 +31,7 @@ jobs:
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v2
|
||||||
|
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: ./.github/workflows/install_dependencies_build.sh
|
run: sudo bash ./.github/workflows/install_dependencies_build.sh
|
||||||
|
|
||||||
- name: Dump tool versions
|
- name: Dump tool versions
|
||||||
run: |
|
run: |
|
||||||
|
|
|
@ -1,8 +1,9 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
# The package list is designed for Ubuntu 20.04 LTS
|
# The package list is designed for Ubuntu 20.04 LTS
|
||||||
sudo apt-get update
|
add-apt-repository -y ppa:ubuntu-toolchain-r/test
|
||||||
sudo apt-get install -y \
|
apt-get update
|
||||||
|
apt-get install -y \
|
||||||
autoconf \
|
autoconf \
|
||||||
automake \
|
automake \
|
||||||
bison \
|
bison \
|
||||||
|
@ -25,6 +26,7 @@ sudo apt-get install -y \
|
||||||
liblist-moreutils-perl \
|
liblist-moreutils-perl \
|
||||||
libncurses5-dev \
|
libncurses5-dev \
|
||||||
libreadline-dev \
|
libreadline-dev \
|
||||||
|
libreadline8 \
|
||||||
libx11-dev \
|
libx11-dev \
|
||||||
libxft-dev \
|
libxft-dev \
|
||||||
libxml++2.6-dev \
|
libxml++2.6-dev \
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
apt-get install --no-install-recommends -y \
|
apt-get install --no-install-recommends -y \
|
||||||
libdatetime-perl libc6 libffi6 libgcc1 libreadline7 libstdc++6 \
|
libdatetime-perl libc6 libffi-dev libgcc1 libreadline8 libstdc++6 \
|
||||||
libtcl8.6 python3.8 python3-pip zlib1g libbz2-1.0 \
|
libtcl8.6 python3.8 python3-pip zlib1g libbz2-1.0 \
|
||||||
iverilog git rsync make curl wget tree python3.8-venv
|
iverilog git rsync make curl wget tree python3.8-venv
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
FROM ubuntu:18.04
|
FROM ubuntu:20.04
|
||||||
ENV DEBIAN_FRONTEND=noninteractive
|
ENV DEBIAN_FRONTEND=noninteractive
|
||||||
RUN apt-get update && apt-get install software-properties-common -y
|
RUN apt-get update && apt-get install software-properties-common -y
|
||||||
# 18.04 includes 2.17 but github requires 2.18+ to support submodules.
|
# 18.04 includes 2.17 but github requires 2.18+ to support submodules.
|
||||||
|
|
|
@ -1,14 +1,15 @@
|
||||||
FROM ubuntu:18.04
|
FROM ubuntu:20.04
|
||||||
ENV DEBIAN_FRONTEND=noninteractive
|
ENV DEBIAN_FRONTEND=noninteractive
|
||||||
RUN apt-get update && apt-get install --no-install-recommends software-properties-common -y
|
RUN apt-get update && apt-get install --no-install-recommends software-properties-common -y
|
||||||
# 18.04 includes 2.17 but github requires 2.18+ to support submodules.
|
# 18.04 includes 2.17 but github requires 2.18+ to support submodules.
|
||||||
RUN add-apt-repository ppa:git-core/ppa
|
#RUN add-apt-repository ppa:git-core/ppa
|
||||||
ADD .github/workflows/install_dependencies_run.sh install_dependencies_run.sh
|
ADD .github/workflows/install_dependencies_run.sh install_dependencies_run.sh
|
||||||
RUN bash install_dependencies_run.sh
|
RUN bash install_dependencies_run.sh
|
||||||
RUN curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
|
RUN curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
|
||||||
RUN python3.8 get-pip.py && rm get-pip.py
|
RUN python3.8 get-pip.py && rm get-pip.py
|
||||||
RUN update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.8 2
|
RUN update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.8 2
|
||||||
RUN update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.6 1
|
# Comment out this line since Ubuntu 20.04 does not support it
|
||||||
|
# RUN update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.6 1
|
||||||
ADD requirements.txt requirements.txt
|
ADD requirements.txt requirements.txt
|
||||||
ENV PYTHON_EXEC=python3.8
|
ENV PYTHON_EXEC=python3.8
|
||||||
RUN ${PYTHON_EXEC} -m pip install -r requirements.txt
|
RUN ${PYTHON_EXEC} -m pip install -r requirements.txt
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
FROM ghcr.io/lnis-uofu/openfpga-build-base
|
FROM ghcr.io/lnis-uofu/openfpga-build-base
|
||||||
RUN apt-get update && apt-get install -y gcc-10 g++-10
|
RUN add-apt-repository -y ppa:ubuntu-toolchain-r/test && apt-get update && apt-get install -y gcc-10 g++-10
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
FROM ghcr.io/lnis-uofu/openfpga-build-base
|
FROM ghcr.io/lnis-uofu/openfpga-build-base
|
||||||
RUN apt-get update && apt-get install -y gcc-11 g++-11
|
RUN add-apt-repository -y ppa:ubuntu-toolchain-r/test && apt-get update && apt-get install -y gcc-11 g++-11
|
||||||
|
|
Loading…
Reference in New Issue