Merge pull request #1648 from lnis-uofu/xt_ubuntu2204
Migrate CI env from ubuntu 20.04 to ubuntu 22.04
This commit is contained in:
commit
fda9a8e07c
|
@ -22,7 +22,7 @@ env:
|
||||||
jobs:
|
jobs:
|
||||||
change_detect:
|
change_detect:
|
||||||
name: "Detect code changes"
|
name: "Detect code changes"
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-22.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-20.04
|
runs-on: ubuntu-22.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,30 +76,38 @@ jobs:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
config:
|
config:
|
||||||
- name: "Build Compatibility: GCC-8 (Ubuntu 20.04)"
|
- name: "Build Compatibility: GCC-9 (Ubuntu 22.04)"
|
||||||
cc: gcc-8
|
|
||||||
cxx: g++-8
|
|
||||||
- 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 20.04)"
|
dependency_version: "ubuntu22p04"
|
||||||
|
- name: "Build Compatibility: GCC-10 (Ubuntu 22.04)"
|
||||||
cc: gcc-10
|
cc: gcc-10
|
||||||
cxx: g++-10
|
cxx: g++-10
|
||||||
- name: "Build Compatibility: GCC-11 (Ubuntu 20.04)"
|
dependency_version: "ubuntu22p04"
|
||||||
|
- name: "Build Compatibility: GCC-11 (Ubuntu 22.04)"
|
||||||
cc: gcc-11
|
cc: gcc-11
|
||||||
cxx: g++-11
|
cxx: g++-11
|
||||||
- name: "Build Compatibility: Clang-6 (Ubuntu 20.04)"
|
dependency_version: "ubuntu22p04"
|
||||||
cc: clang-6.0
|
- name: "Build Compatibility: GCC-12 (Ubuntu 22.04)"
|
||||||
cxx: clang++-6.0
|
cc: gcc-12
|
||||||
- name: "Build Compatibility: Clang-7 (Ubuntu 20.04)"
|
cxx: g++-12
|
||||||
cc: clang-7
|
dependency_version: "ubuntu22p04"
|
||||||
cxx: clang++-7
|
- name: "Build Compatibility: Clang-11 (Ubuntu 22.04)"
|
||||||
- name: "Build Compatibility: Clang-8 (Ubuntu 20.04)"
|
cc: clang-11
|
||||||
cc: clang-8
|
cxx: clang++-11
|
||||||
cxx: clang++-8
|
dependency_version: "ubuntu22p04"
|
||||||
- name: "Build Compatibility: Clang-10 (Ubuntu 20.04)"
|
- name: "Build Compatibility: Clang-12 (Ubuntu 22.04)"
|
||||||
cc: clang-10
|
cc: clang-12
|
||||||
cxx: clang++-10
|
cxx: clang++-12
|
||||||
|
dependency_version: "ubuntu22p04"
|
||||||
|
- name: "Build Compatibility: Clang-13 (Ubuntu 22.04)"
|
||||||
|
cc: clang-13
|
||||||
|
cxx: clang++-13
|
||||||
|
dependency_version: "ubuntu22p04"
|
||||||
|
- name: "Build Compatibility: Clang-14 (Ubuntu 22.04)"
|
||||||
|
cc: clang-14
|
||||||
|
cxx: clang++-14
|
||||||
|
dependency_version: "ubuntu22p04"
|
||||||
# Define the steps to run the build job
|
# Define the steps to run the build job
|
||||||
env:
|
env:
|
||||||
CC: ${{ matrix.config.cc }}
|
CC: ${{ matrix.config.cc }}
|
||||||
|
@ -114,7 +122,7 @@ jobs:
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v3
|
||||||
|
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: sudo bash ./.github/workflows/install_dependencies_build.sh
|
run: sudo bash ./.github/workflows/install_dependencies_build_${{ matrix.config.dependency_version }}.sh
|
||||||
|
|
||||||
- name: Dump tool versions
|
- name: Dump tool versions
|
||||||
run: |
|
run: |
|
||||||
|
@ -129,12 +137,18 @@ jobs:
|
||||||
run: |
|
run: |
|
||||||
make all BUILD_TYPE=$BUILD_TYPE
|
make all BUILD_TYPE=$BUILD_TYPE
|
||||||
|
|
||||||
|
- name: Clear error log
|
||||||
|
if: ${{ failure() }}
|
||||||
|
shell: bash
|
||||||
|
run: |
|
||||||
|
make all BUILD_TYPE=$BUILD_TYPE -j1
|
||||||
|
|
||||||
# Check the cache size and see if it is over the limit
|
# Check the cache size and see if it is over the limit
|
||||||
- name: Check ccache size
|
- name: Check ccache size
|
||||||
run: ccache -s
|
run: ccache -s
|
||||||
- name: Upload artifact
|
- name: Upload artifact
|
||||||
uses: actions/upload-artifact@v2
|
uses: actions/upload-artifact@v2
|
||||||
if: ${{ matrix.config.cc == 'gcc-9'}}
|
if: ${{ matrix.config.cc == 'gcc-11'}}
|
||||||
with:
|
with:
|
||||||
name: openfpga
|
name: openfpga
|
||||||
path: |
|
path: |
|
||||||
|
@ -151,11 +165,12 @@ jobs:
|
||||||
openfpga_flow
|
openfpga_flow
|
||||||
openfpga.sh
|
openfpga.sh
|
||||||
|
|
||||||
|
|
||||||
linux_build_opt:
|
linux_build_opt:
|
||||||
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-20.04
|
runs-on: ubuntu-22.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}}
|
||||||
|
@ -164,26 +179,31 @@ jobs:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
config:
|
config:
|
||||||
- name: "Build w/o Yosys (Ubuntu 20.04)"
|
- name: "Build w/o Yosys (Ubuntu 22.04)"
|
||||||
cc: gcc-9
|
cc: gcc-11
|
||||||
cxx: g++-9
|
cxx: g++-11
|
||||||
cmake_flags: "-DOPENFPGA_WITH_YOSYS=OFF"
|
cmake_flags: "-DOPENFPGA_WITH_YOSYS=OFF"
|
||||||
- name: "Build w/o Yosys plugin (Ubuntu 20.04)"
|
dependency_version: "ubuntu22p04"
|
||||||
cc: gcc-9
|
- name: "Build w/o Yosys plugin (Ubuntu 22.04)"
|
||||||
cxx: g++-9
|
cc: gcc-11
|
||||||
|
cxx: g++-11
|
||||||
cmake_flags: "-DOPENFPGA_WITH_YOSYS_PLUGIN=OFF"
|
cmake_flags: "-DOPENFPGA_WITH_YOSYS_PLUGIN=OFF"
|
||||||
- name: "Build w/o test (Ubuntu 20.04)"
|
dependency_version: "ubuntu22p04"
|
||||||
cc: gcc-9
|
- name: "Build w/o test (Ubuntu 22.04)"
|
||||||
cxx: g++-9
|
cc: gcc-11
|
||||||
|
cxx: g++-11
|
||||||
cmake_flags: "-DOPENFPGA_WITH_TEST=OFF"
|
cmake_flags: "-DOPENFPGA_WITH_TEST=OFF"
|
||||||
- name: "Build w/o version number (Ubuntu 20.04)"
|
dependency_version: "ubuntu22p04"
|
||||||
cc: gcc-9
|
- name: "Build w/o version number (Ubuntu 22.04)"
|
||||||
cxx: g++-9
|
cc: gcc-11
|
||||||
|
cxx: g++-11
|
||||||
cmake_flags: "-DOPENFPGA_WITH_VERSION=OFF"
|
cmake_flags: "-DOPENFPGA_WITH_VERSION=OFF"
|
||||||
- name: "Build w/o SWIG support (Ubuntu 20.04)"
|
dependency_version: "ubuntu22p04"
|
||||||
cc: gcc-9
|
- name: "Build w/o SWIG support (Ubuntu 22.04)"
|
||||||
cxx: g++-9
|
cc: gcc-11
|
||||||
|
cxx: g++-11
|
||||||
cmake_flags: "-DOPENFPGA_WITH_SWIG=OFF"
|
cmake_flags: "-DOPENFPGA_WITH_SWIG=OFF"
|
||||||
|
dependency_version: "ubuntu22p04"
|
||||||
# Define the steps to run the build job
|
# Define the steps to run the build job
|
||||||
env:
|
env:
|
||||||
CC: ${{ matrix.config.cc }}
|
CC: ${{ matrix.config.cc }}
|
||||||
|
@ -198,7 +218,7 @@ jobs:
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v3
|
||||||
|
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: sudo bash ./.github/workflows/install_dependencies_build.sh
|
run: sudo bash ./.github/workflows/install_dependencies_build_${{ matrix.config.dependency_version }}.sh
|
||||||
|
|
||||||
- name: Dump tool versions
|
- name: Dump tool versions
|
||||||
run: |
|
run: |
|
||||||
|
@ -217,14 +237,19 @@ 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-22.04
|
runs-on: ubuntu-20.04
|
||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
config:
|
config:
|
||||||
- name: "Build (Ubuntu 22.04)"
|
- name: "Build (GCC-11 on Ubuntu 20.04)"
|
||||||
cc: gcc-11
|
cc: gcc-11
|
||||||
cxx: g++-11
|
cxx: g++-11
|
||||||
|
dependency_version: "ubuntu20p04"
|
||||||
|
- name: "Build (Clang-10 on Ubuntu 20.04)"
|
||||||
|
cc: clang-10
|
||||||
|
cxx: clang++-10
|
||||||
|
dependency_version: "ubuntu20p04"
|
||||||
# Define the steps to run the build job
|
# Define the steps to run the build job
|
||||||
env:
|
env:
|
||||||
CC: ${{ matrix.config.cc }}
|
CC: ${{ matrix.config.cc }}
|
||||||
|
@ -239,7 +264,7 @@ jobs:
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v3
|
||||||
|
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: sudo bash ./.github/workflows/install_dependencies_build_ubuntu22p04.sh
|
run: sudo bash ./.github/workflows/install_dependencies_build_${{ matrix.config.dependency_version }}.sh
|
||||||
|
|
||||||
- name: Dump tool versions
|
- name: Dump tool versions
|
||||||
run: |
|
run: |
|
||||||
|
@ -270,6 +295,7 @@ jobs:
|
||||||
cxx: g++-11
|
cxx: g++-11
|
||||||
build_type: debug
|
build_type: debug
|
||||||
cores: 4
|
cores: 4
|
||||||
|
dependency_version: "ubuntu22p04"
|
||||||
# Define the steps to run the build job
|
# Define the steps to run the build job
|
||||||
env:
|
env:
|
||||||
CC: ${{ matrix.config.cc }}
|
CC: ${{ matrix.config.cc }}
|
||||||
|
@ -285,8 +311,8 @@ jobs:
|
||||||
|
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: |
|
run: |
|
||||||
sudo bash ./.github/workflows/install_dependencies_build_ubuntu22p04.sh
|
sudo bash ./.github/workflows/install_dependencies_build_${{ matrix.config.dependency_version }}.sh
|
||||||
sudo bash ./.github/workflows/install_dependencies_run_ubuntu22p04.sh
|
sudo bash ./.github/workflows/install_dependencies_run_${{ matrix.config.dependency_version }}.sh
|
||||||
sudo python3 -m pip install -r requirements.txt
|
sudo python3 -m pip install -r requirements.txt
|
||||||
|
|
||||||
- name: Dump tool versions
|
- name: Dump tool versions
|
||||||
|
@ -321,6 +347,7 @@ jobs:
|
||||||
cxx: g++-11
|
cxx: g++-11
|
||||||
build_type: release
|
build_type: release
|
||||||
cores: 4
|
cores: 4
|
||||||
|
dependency_version: "ubuntu22p04"
|
||||||
# Define the steps to run the build job
|
# Define the steps to run the build job
|
||||||
env:
|
env:
|
||||||
CC: ${{ matrix.config.cc }}
|
CC: ${{ matrix.config.cc }}
|
||||||
|
@ -336,8 +363,8 @@ jobs:
|
||||||
|
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: |
|
run: |
|
||||||
sudo bash ./.github/workflows/install_dependencies_build_ubuntu22p04.sh
|
sudo bash ./.github/workflows/install_dependencies_build_${{ matrix.config.dependency_version }}.sh
|
||||||
sudo bash ./.github/workflows/install_dependencies_run_ubuntu22p04.sh
|
sudo bash ./.github/workflows/install_dependencies_run_${{ matrix.config.dependency_version }}.sh
|
||||||
sudo python3 -m pip install -r requirements.txt
|
sudo python3 -m pip install -r requirements.txt
|
||||||
|
|
||||||
- name: Dump tool versions
|
- name: Dump tool versions
|
||||||
|
@ -360,7 +387,7 @@ jobs:
|
||||||
|
|
||||||
docker_distribution:
|
docker_distribution:
|
||||||
name: Build docker image for distribution
|
name: Build docker image for distribution
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-22.04
|
||||||
needs: [linux_build, change_detect]
|
needs: [linux_build, change_detect]
|
||||||
steps:
|
steps:
|
||||||
- name: Cancel previous
|
- name: Cancel previous
|
||||||
|
@ -397,7 +424,7 @@ jobs:
|
||||||
|
|
||||||
linux_regression_tests:
|
linux_regression_tests:
|
||||||
name: linux_regression_tests
|
name: linux_regression_tests
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-22.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:
|
||||||
|
@ -438,7 +465,7 @@ jobs:
|
||||||
chmod +x build/yosys/bin/yosys-config
|
chmod +x build/yosys/bin/yosys-config
|
||||||
chmod +x build/yosys/bin/yosys-filterlib
|
chmod +x build/yosys/bin/yosys-filterlib
|
||||||
chmod +x build/yosys/bin/yosys-smtbmc
|
chmod +x build/yosys/bin/yosys-smtbmc
|
||||||
- name: ${{matrix.config.name}}_GCC-9_(Ubuntu 20.04)
|
- name: ${{matrix.config.name}}_GCC-11_(Ubuntu 22.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
|
||||||
|
@ -454,7 +481,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: docker_regression_tests
|
name: docker_regression_tests
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-22.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
|
||||||
|
@ -482,10 +509,10 @@ jobs:
|
||||||
- name: Checkout OpenFPGA repo
|
- name: Checkout OpenFPGA repo
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v3
|
||||||
|
|
||||||
- name: ${{matrix.config.name}}_GCC-9_(Ubuntu 20.04)
|
- name: ${{matrix.config.name}}_GCC-11_(Ubuntu 22.04)
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
bash .github/workflows/install_dependencies_run.sh
|
bash .github/workflows/install_dependencies_run_ubuntu22p04.sh
|
||||||
${PYTHON_EXEC} -m pip install -r requirements.txt
|
${PYTHON_EXEC} -m pip install -r requirements.txt
|
||||||
rsync -am --exclude='openfpga_flow/**' /opt/openfpga/. .
|
rsync -am --exclude='openfpga_flow/**' /opt/openfpga/. .
|
||||||
unset OPENFPGA_PATH
|
unset OPENFPGA_PATH
|
||||||
|
|
|
@ -10,7 +10,7 @@ env:
|
||||||
jobs:
|
jobs:
|
||||||
change_detect:
|
change_detect:
|
||||||
name: "Detect code changes"
|
name: "Detect code changes"
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-22.04
|
||||||
outputs:
|
outputs:
|
||||||
docker_repo: ${{ steps.changes.outputs.docker_repo }}
|
docker_repo: ${{ steps.changes.outputs.docker_repo }}
|
||||||
steps:
|
steps:
|
||||||
|
@ -64,15 +64,14 @@ jobs:
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
compiler:
|
compiler:
|
||||||
- gcc-7
|
|
||||||
- gcc-8
|
|
||||||
- gcc-9
|
- gcc-9
|
||||||
- gcc-10
|
- gcc-10
|
||||||
- gcc-11
|
- gcc-11
|
||||||
- clang-6.0
|
- gcc-12
|
||||||
- clang-7
|
- clang-11
|
||||||
- clang-8
|
- clang-12
|
||||||
- clang-10
|
- clang-13
|
||||||
|
- clang-14
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v2
|
||||||
|
|
|
@ -12,17 +12,20 @@ on:
|
||||||
jobs:
|
jobs:
|
||||||
change_detect:
|
change_detect:
|
||||||
name: "Check"
|
name: "Check"
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-22.04
|
||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
config:
|
config:
|
||||||
- name: "C/C++"
|
- name: "C/C++"
|
||||||
code_type: "-cpp"
|
code_type: "-cpp"
|
||||||
|
dependency_version: "ubuntu22p04"
|
||||||
- name: "XML"
|
- name: "XML"
|
||||||
code_type: "-xml"
|
code_type: "-xml"
|
||||||
|
dependency_version: "ubuntu22p04"
|
||||||
- name: "Python"
|
- name: "Python"
|
||||||
code_type: "-py"
|
code_type: "-py"
|
||||||
|
dependency_version: "ubuntu22p04"
|
||||||
steps:
|
steps:
|
||||||
- name: Cancel previous
|
- name: Cancel previous
|
||||||
uses: styfle/cancel-workflow-action@0.9.1
|
uses: styfle/cancel-workflow-action@0.9.1
|
||||||
|
@ -34,12 +37,12 @@ jobs:
|
||||||
|
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: |
|
run: |
|
||||||
sudo bash ./.github/workflows/install_dependencies_build.sh
|
sudo bash ./.github/workflows/install_dependencies_build_${{ matrix.config.dependency_version }}.sh
|
||||||
sudo python3 -m pip install -r requirements.txt
|
sudo python3 -m pip install -r requirements.txt
|
||||||
|
|
||||||
- name: Dump tool versions
|
- name: Dump tool versions
|
||||||
run: |
|
run: |
|
||||||
clang-format-10 --version
|
clang-format-14 --version
|
||||||
black --version
|
black --version
|
||||||
|
|
||||||
- name: Check format
|
- name: Check format
|
||||||
|
|
|
@ -53,6 +53,9 @@ apt-get install -y \
|
||||||
gcc-10 \
|
gcc-10 \
|
||||||
g++-11 \
|
g++-11 \
|
||||||
gcc-11 \
|
gcc-11 \
|
||||||
|
clang-11 \
|
||||||
clang-12 \
|
clang-12 \
|
||||||
clang-format-12 \
|
clang-13 \
|
||||||
|
clang-14 \
|
||||||
|
clang-format-14 \
|
||||||
libxml2-utils
|
libxml2-utils
|
||||||
|
|
2
Makefile
2
Makefile
|
@ -42,7 +42,7 @@ endif
|
||||||
|
|
||||||
# Define executables
|
# Define executables
|
||||||
PYTHON_EXEC ?= python3
|
PYTHON_EXEC ?= python3
|
||||||
CLANG_FORMAT_EXEC ?= clang-format-10
|
CLANG_FORMAT_EXEC ?= clang-format-14
|
||||||
XML_FORMAT_EXEC ?= xmllint
|
XML_FORMAT_EXEC ?= xmllint
|
||||||
PYTHON_FORMAT_EXEC ?= black
|
PYTHON_FORMAT_EXEC ?= black
|
||||||
|
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
FROM ubuntu:20.04
|
FROM ubuntu:22.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.
|
||||||
RUN add-apt-repository ppa:git-core/ppa
|
RUN add-apt-repository ppa:git-core/ppa
|
||||||
ADD .github/workflows/install_dependencies_build.sh install_dependencies_build.sh
|
ADD .github/workflows/install_dependencies_build_ubuntu22p04.sh install_dependencies_build.sh
|
||||||
RUN bash install_dependencies_build.sh
|
RUN bash install_dependencies_build.sh
|
||||||
ADD requirements.txt requirements.txt
|
ADD requirements.txt requirements.txt
|
||||||
RUN python3 -m pip install -r requirements.txt
|
RUN python3 -m pip install -r requirements.txt
|
||||||
|
|
|
@ -1,2 +0,0 @@
|
||||||
FROM ghcr.io/lnis-uofu/openfpga-build-base
|
|
||||||
RUN apt-get update && apt-get install -y clang-format-7 clang-10
|
|
|
@ -0,0 +1,2 @@
|
||||||
|
FROM ghcr.io/lnis-uofu/openfpga-build-base
|
||||||
|
RUN apt-get update && apt-get install -y clang-format-14 clang-11
|
|
@ -0,0 +1,2 @@
|
||||||
|
FROM ghcr.io/lnis-uofu/openfpga-build-base
|
||||||
|
RUN apt-get update && apt-get install -y clang-format-14 clang-12
|
|
@ -0,0 +1,2 @@
|
||||||
|
FROM ghcr.io/lnis-uofu/openfpga-build-base
|
||||||
|
RUN apt-get update && apt-get install -y clang-format-14 clang-13
|
|
@ -0,0 +1,2 @@
|
||||||
|
FROM ghcr.io/lnis-uofu/openfpga-build-base
|
||||||
|
RUN apt-get update && apt-get install -y clang-format-14 clang-14
|
|
@ -1,2 +0,0 @@
|
||||||
FROM ghcr.io/lnis-uofu/openfpga-build-base
|
|
||||||
RUN apt-get update && apt-get install -y clang-format-7 clang-6.0
|
|
|
@ -1,2 +0,0 @@
|
||||||
FROM ghcr.io/lnis-uofu/openfpga-build-base
|
|
||||||
RUN apt-get update && apt-get install -y clang-format-7 clang-7
|
|
|
@ -1,2 +0,0 @@
|
||||||
FROM ghcr.io/lnis-uofu/openfpga-build-base
|
|
||||||
RUN apt-get update && apt-get install -y clang-format-7 clang-8
|
|
|
@ -1,9 +1,9 @@
|
||||||
FROM ubuntu:20.04
|
FROM ubuntu:22.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_ubuntu22p04.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
|
||||||
|
|
|
@ -0,0 +1,2 @@
|
||||||
|
FROM ghcr.io/lnis-uofu/openfpga-build-base
|
||||||
|
RUN add-apt-repository -y ppa:ubuntu-toolchain-r/test && apt-get update && apt-get install -y gcc-12 g++-12
|
|
@ -1,2 +0,0 @@
|
||||||
FROM ghcr.io/lnis-uofu/openfpga-build-base
|
|
||||||
RUN apt-get update && apt-get install -y gcc-7 g++-7
|
|
|
@ -1,2 +0,0 @@
|
||||||
FROM ghcr.io/lnis-uofu/openfpga-build-base
|
|
||||||
RUN apt-get update && apt-get install -y gcc-8 g++-8
|
|
|
@ -12,7 +12,7 @@ How to Compile
|
||||||
Supported Operating Systems
|
Supported Operating Systems
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
OpenFPGA is continously tested with Ubuntu 20.04 and partially on Ubuntu 22.04
|
OpenFPGA is continously tested with Ubuntu 22.04 and partially on Ubuntu 20.04
|
||||||
It might work with earlier versions and other distributions.
|
It might work with earlier versions and other distributions.
|
||||||
|
|
||||||
In addition to continous integration, our community users have tested OpenFPGA on their local machines using the following operating systems:
|
In addition to continous integration, our community users have tested OpenFPGA on their local machines using the following operating systems:
|
||||||
|
@ -21,7 +21,6 @@ In addition to continous integration, our community users have tested OpenFPGA o
|
||||||
- CentOS 8
|
- CentOS 8
|
||||||
- Ubuntu 18.04
|
- Ubuntu 18.04
|
||||||
- Ubuntu 21.04
|
- Ubuntu 21.04
|
||||||
- Ubuntu 22.04
|
|
||||||
|
|
||||||
Build Steps
|
Build Steps
|
||||||
~~~~~~~~~~~
|
~~~~~~~~~~~
|
||||||
|
@ -34,7 +33,7 @@ In general, please follow the steps to compile
|
||||||
cd OpenFPGA
|
cd OpenFPGA
|
||||||
make all
|
make all
|
||||||
|
|
||||||
.. note:: OpenFPGA requires gcc/g++ version > 7 and clang version > 6.
|
.. note:: OpenFPGA requires gcc/g++ version > 9 and clang version > 10.
|
||||||
|
|
||||||
.. note:: cmake3.12+ is recommended to compile OpenFPGA with GUI
|
.. note:: cmake3.12+ is recommended to compile OpenFPGA with GUI
|
||||||
|
|
||||||
|
@ -111,7 +110,7 @@ Ubuntu 20.04
|
||||||
|
|
||||||
- Dependencies required to run regression tests
|
- Dependencies required to run regression tests
|
||||||
|
|
||||||
.. include:: regtest_dependencies.sh
|
.. include:: ubuntu20p04_regtest_dependencies.sh
|
||||||
:code: shell
|
:code: shell
|
||||||
|
|
||||||
.. note:: Python packages are also required
|
.. note:: Python packages are also required
|
||||||
|
@ -135,7 +134,7 @@ Ubuntu 22.04
|
||||||
|
|
||||||
- Dependencies required to run regression tests
|
- Dependencies required to run regression tests
|
||||||
|
|
||||||
.. include:: regtest_dependencies.sh
|
.. include:: ubuntu22p04_regtest_dependencies.sh
|
||||||
:code: shell
|
:code: shell
|
||||||
|
|
||||||
.. note:: Python packages are also required
|
.. note:: Python packages are also required
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
../../../../.github/workflows/install_dependencies_run.sh
|
../../../../.github/workflows/install_dependencies_run_ubuntu22p04.sh
|
|
@ -1 +1 @@
|
||||||
../../../../.github/workflows/install_dependencies_build.sh
|
../../../../.github/workflows/install_dependencies_build_ubuntu20p04.sh
|
|
@ -0,0 +1 @@
|
||||||
|
../../../../.github/workflows/install_dependencies_run_ubuntu20p04.sh
|
|
@ -0,0 +1 @@
|
||||||
|
../../../../.github/workflows/install_dependencies_run_ubuntu22p04.sh
|
|
@ -1,6 +1,7 @@
|
||||||
#ifndef QL_MEMORY_BANK_CONFIG_SETTING_H
|
#ifndef QL_MEMORY_BANK_CONFIG_SETTING_H
|
||||||
#define QL_MEMORY_BANK_CONFIG_SETTING_H
|
#define QL_MEMORY_BANK_CONFIG_SETTING_H
|
||||||
|
|
||||||
|
#include <cstdint>
|
||||||
#include <map>
|
#include <map>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
|
|
|
@ -4,7 +4,10 @@
|
||||||
/********************************************************************
|
/********************************************************************
|
||||||
* Include header files required by the data structure definition
|
* Include header files required by the data structure definition
|
||||||
*******************************************************************/
|
*******************************************************************/
|
||||||
|
#include <array>
|
||||||
#include <map>
|
#include <map>
|
||||||
|
#include <string>
|
||||||
|
#include <vector>
|
||||||
|
|
||||||
#include "openfpga_port.h"
|
#include "openfpga_port.h"
|
||||||
|
|
||||||
|
|
|
@ -30,6 +30,7 @@
|
||||||
#ifndef FABRIC_BITSTREAM_H
|
#ifndef FABRIC_BITSTREAM_H
|
||||||
#define FABRIC_BITSTREAM_H
|
#define FABRIC_BITSTREAM_H
|
||||||
|
|
||||||
|
#include <cstdint>
|
||||||
#include <unordered_map>
|
#include <unordered_map>
|
||||||
#include <unordered_set>
|
#include <unordered_set>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
Loading…
Reference in New Issue