Skip to content

Commit

Permalink
Merge pull request #747 from lnis-uofu/vtr_upgrade
Browse files Browse the repository at this point in the history
Now use latest VTR as a submodule
  • Loading branch information
tangxifan authored Sep 22, 2022
2 parents 8ee3fb8 + d543a86 commit d7fb6d9
Show file tree
Hide file tree
Showing 5,736 changed files with 34,705 additions and 2,788,290 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
1 change: 1 addition & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
**

# Allow files and directories
!build/**
!/.github/**
!/*.*
!/abc/abc
Expand Down
96 changes: 33 additions & 63 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -68,18 +68,14 @@ jobs:
if: ${{ fromJSON(needs.change_detect.outputs.source_modified) }}
name: ${{ matrix.config.name }}
runs-on: ubuntu-18.04
container: ghcr.io/${{ needs.change_detect.outputs.docker_repo }}/openfpga-build-${{ matrix.config.cc}}
# 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
#container: ghcr.io/${{ needs.change_detect.outputs.docker_repo }}/openfpga-build-${{ matrix.config.cc}}
# Branch on different OS and settings
strategy:
fail-fast: false
matrix:
config:
- name: "Build Compatibility: GCC-5 (Ubuntu 18.04)"
cc: gcc-5
cxx: g++-5
- name: "Build Compatibility: GCC-6 (Ubuntu 18.04)"
cc: gcc-6
cxx: g++-6
- name: "Build Compatibility: GCC-7 (Ubuntu 18.04)"
cc: gcc-7
cxx: g++-7
Expand All @@ -89,21 +85,28 @@ jobs:
- name: "Build Compatibility: GCC-9 (Ubuntu 18.04)"
cc: gcc-9
cxx: g++-9
- name: "Build Compatibility: GCC-10 (Ubuntu 18.04)"
cc: gcc-10
cxx: g++-10
- name: "Build Compatibility: GCC-11 (Ubuntu 18.04)"
cc: gcc-11
cxx: g++-11
- name: "Build Compatibility: Clang-6 (Ubuntu 18.04)"
cc: clang-6.0
cxx: clang++-6.0
- name: "Build Compatibility: Clang-7 (Ubuntu 18.04)"
cc: clang-7
cxx: clang++-7
- name: "Build Compatibility: Clang-8 (Ubuntu 18.04)"
cc: clang-8
cxx: clang++-8
- name: "Build Compatibility: Clang-10 (Ubuntu 18.04)"
cc: clang-10
cxx: clang++-10
# Define the steps to run the build job
env:
CC: ${{ matrix.config.cc }}
CXX: ${{ matrix.config.cxx }}
CCACHE_COMPRESS: "true"
CCACHE_COMPRESSLEVEL: "6"
CCACHE_MAXSIZE: "400M"
CCACHE_LOGFILE: ccache_log
CCACHE_DIR: /__w/OpenFPGA/.ccache
steps:
- name: Cancel previous
uses: styfle/cancel-workflow-action@0.9.1
Expand All @@ -115,53 +118,21 @@ jobs:
with:
submodules: true

- name: Install dependencies
run: ./.github/workflows/install_dependencies_build.sh

- name: Dump tool versions
run: |
cmake --version
iverilog -V
vvp -V
${CC} --version
${CXX} --version
- name: Prepare ccache timestamp
id: ccache_cache_timestamp
shell: cmake -P {0}
run: |
string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC)
message("::set-output name=timestamp::${current_date}")
- name: Create CMake build environment
# Some projects don't allow in-source building, so create a separate build directory
# We'll use this as our working directory for all subsequent commands
run: cmake -E make_directory build

- name: Setup ccache
uses: actions/cache@v2
with:
path: |
/__w/OpenFPGA/.ccache
key: ${{ matrix.config.cc }}-ccache-${{ github.ref}}
restore-keys: |
${{ matrix.config.cc }}-ccache-
- name: Configure CMake
# Use a bash shell so we can use the same syntax for environment variable
# access regardless of the host operating system
shell: bash
working-directory: build
# Note the current convention is to use the -S and -B options here to specify source
# and build directories, but this is only available with CMake 3.13 and higher.
# The CMake binaries on the Github Actions machines are (as of this writing) 3.12
#
run: |
ccache -p
ccache -z
cmake .. -DCMAKE_BUILD_TYPE=$BUILD_TYPE
- uses: hendrikmuhs/ccache-action@v1

- name: Build
working-directory: build
shell: bash
# Execute the build. You can specify a specific target with "--target <NAME>"
run: |
cmake --build . --config $BUILD_TYPE
make all BUILD_TYPE=$BUILD_TYPE
# Check the cache size and see if it is over the limit
- name: Check ccache size
Expand All @@ -172,14 +143,13 @@ jobs:
with:
name: openfpga
path: |
abc/abc
abc/libabc.a
ace2/ace
ace2/libace.a
openfpga/libopenfpga.a
openfpga/openfpga
vpr/libvpr.a
vpr/vpr
build/vtr-verilog-to-routing/abc/abc
build/vtr-verilog-to-routing/abc/libabc.a
build/vtr-verilog-to-routing/ace2/ace
build/vtr-verilog-to-routing/vpr/libvpr.a
build/vtr-verilog-to-routing/vpr/vpr
build/openfpga/libopenfpga.a
build/openfpga/openfpga
yosys/install/share
yosys/install/bin
openfpga_flow
Expand Down Expand Up @@ -253,10 +223,10 @@ jobs:
name: openfpga
- name: chmod
run: |
chmod +x abc/abc
chmod +x ace2/ace
chmod +x openfpga/openfpga
chmod +x vpr/vpr
chmod +x build/vtr-verilog-to-routing/abc/abc
chmod +x build/vtr-verilog-to-routing/ace2/ace
chmod +x build/vtr-verilog-to-routing/vpr/vpr
chmod +x build/openfpga/openfpga
chmod +x yosys/install/bin/yosys
chmod +x yosys/install/bin/yosys-abc
chmod +x yosys/install/bin/yosys-config
Expand Down
6 changes: 4 additions & 2 deletions .github/workflows/docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -64,13 +64,15 @@ jobs:
strategy:
matrix:
compiler:
- gcc-5
- gcc-6
- gcc-7
- gcc-8
- gcc-9
- gcc-10
- gcc-11
- clang-6.0
- clang-7
- clang-8
- clang-10
steps:
- name: Checkout
uses: actions/checkout@v2
Expand Down
22 changes: 20 additions & 2 deletions .github/workflows/install_dependencies_build.sh
Original file line number Diff line number Diff line change
@@ -1,4 +1,8 @@
apt-get update && apt-get install -y \
#!/usr/bin/env bash

# The package list is designed for Ubuntu 20.04 LTS
sudo apt-get update
sudo apt-get install -y \
autoconf \
automake \
bison \
Expand Down Expand Up @@ -40,4 +44,18 @@ apt-get update && apt-get install -y \
wget \
zip \
swig \
expect
expect \
g++-7 \
gcc-7 \
g++-8 \
gcc-8 \
g++-9 \
gcc-9 \
g++-10 \
gcc-10 \
g++-11 \
gcc-11 \
clang-6.0 \
clang-7 \
clang-8 \
clang-10
53 changes: 0 additions & 53 deletions .github/workflows/install_dependency_old.sh

This file was deleted.

4 changes: 4 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -6,3 +6,7 @@
[submodule "yosys-plugins"]
path = yosys-plugins
url = https://github.com/SymbiFlow/yosys-symbiflow-plugins
[submodule "vtr-verilog-to-routing"]
path = vtr-verilog-to-routing
url = https://github.com/verilog-to-routing/vtr-verilog-to-routing.git
branch = openfpga
Loading

0 comments on commit d7fb6d9

Please sign in to comment.