Skip to content

Commit

Permalink
Merge branch 'openfpga' into patch-1
Browse files Browse the repository at this point in the history
  • Loading branch information
Wang-Yuanqi-source authored Jul 2, 2024
2 parents 25b096d + 6a4f0ca commit 03556c6
Show file tree
Hide file tree
Showing 589 changed files with 42,598 additions and 12,302 deletions.
67 changes: 67 additions & 0 deletions .github/scripts/install_noble_dependencies.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
#!/usr/bin/env bash

sudo apt update

sudo apt install -y \
autoconf \
automake \
bash \
bison \
binutils \
binutils-gold \
build-essential \
capnproto \
exuberant-ctags \
curl \
doxygen \
flex \
fontconfig \
gdb \
git \
gperf \
libcairo2-dev \
libcapnp-dev \
libgtk-3-dev \
libevent-dev \
libfontconfig1-dev \
liblist-moreutils-perl \
libncurses5-dev \
libx11-dev \
libxft-dev \
libxml2-utils \
libxml++2.6-dev \
libreadline-dev \
tcllib \
tcl8.6-dev \
libffi-dev \
perl \
pkg-config \
texinfo \
time \
valgrind \
zip \
qtbase5-dev \
uuid-dev \
default-jdk \
g++-9 \
gcc-9 \
g++-10 \
gcc-10 \
g++-11 \
gcc-11 \
g++-12 \
gcc-12 \
g++-13 \
gcc-13 \
clang-14 \
clang-18 \
clang-format-14 \
libtbb-dev

pip install -r requirements.txt

git clone https://github.com/capnproto/capnproto-java.git $GITHUB_WORKSPACE/env/capnproto-java
pushd $GITHUB_WORKSPACE/env/capnproto-java
make
sudo make install
popd
26 changes: 24 additions & 2 deletions .github/workflows/containers.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1,34 @@
name: Containers

on:
# We want to run the CI when anything is pushed to master.
# Since master is a protected branch this only happens when a PR is merged.
# This is a double check in case the PR was stale and had some issues.
push:
branches:
- master
paths-ignore: # Prevents from running if only docs are updated
- 'doc/**'
- '**/*README*'
- '**.md'
- '**.rst'
pull_request:
paths-ignore: # Prevents from running if only docs are updated
- 'doc/**'
- '**/*README*'
- '**.md'
- '**.rst'
workflow_dispatch:
schedule:
- cron: '0 0 * * 0' # weekly

# We want to cancel previous runs for a given PR or branch / ref if another CI
# run is requested.
# See: https://docs.github.com/en/actions/using-jobs/using-concurrency
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

jobs:

Image:
Expand All @@ -16,15 +38,15 @@ jobs:
steps:

- name: 🧰 Repository Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
submodules: 'true'

- name: 🔧 Generate image name
id: generate
run: |
REPO='${{ github.repository }}'
echo "::set-output name=image::ghcr.io/${REPO,,}/ubuntu/focal/build"
echo "image=ghcr.io/${REPO,,}/ubuntu/focal/build" >> $GITHUB_OUTPUT
- name: ⛴️ Build container image
run: docker build -t ${{ steps.generate.outputs.image }} -f Dockerfile .
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/labeler.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ jobs:
triage:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- uses: actions/labeler@master
with:
repo-token: "${{ secrets.GITHUB_TOKEN }}"
51 changes: 51 additions & 0 deletions .github/workflows/noble.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
# This workflow is designed to test that VTR can run on Ubuntu 24.04. Since
# the Ubuntu 24.04 GitHub runners are still in Beta, this is left as a workflow
# that must be dispatched manually. In the future this workflow should be
# removed and made the default (integrated into test.yml).
name: Noble

on:
workflow_dispatch:
schedule:
- cron: '0 0 * * *' # daily

# We want to cancel previous runs for a given PR or branch / ref if another CI
# run is requested.
# See: https://docs.github.com/en/actions/using-jobs/using-concurrency
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

env:
MATRIX_EVAL: "CC=gcc-13 && CXX=g++-13"

jobs:
FutureCompatibility:
runs-on: ubuntu-24.04
strategy:
fail-fast: false
matrix:
include:
- { name: 'GCC 13 (Ubuntu Noble - 24.04)', eval: 'CC=gcc-13 && CXX=g++-13', }
- { name: 'Clang 18 (Ubuntu Noble - 24.04)', eval: 'CC=clang-18 && CXX=clang++-18', }
name: 'B: ${{ matrix.name }}'
steps:
- uses: actions/setup-python@v5
with:
python-version: 3.12.3
- uses: actions/checkout@v4
with:
submodules: 'true'
- run: ./.github/scripts/install_noble_dependencies.sh

- uses: hendrikmuhs/[email protected]

- name: Test
env:
CMAKE_PARAMS: "-DVTR_ASSERT_LEVEL=3 -DVTR_IPO_BUILD=off"
MATRIX_EVAL: ${{ matrix.eval }}
BUILD_TYPE: release
run: |
export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH"
./.github/scripts/build.sh
Loading

0 comments on commit 03556c6

Please sign in to comment.