gh-actions: better yosys caching based on version
Signed-off-by: Alessandro Comodi <acomodi@antmicro.com>
This commit is contained in:
parent
b5ba3ee9ee
commit
d0bc033ab8
4
.github/ci/build_interchange.sh
vendored
4
.github/ci/build_interchange.sh
vendored
@ -19,10 +19,10 @@ function build_capnp {
|
|||||||
|
|
||||||
# Install latest Yosys
|
# Install latest Yosys
|
||||||
function build_yosys {
|
function build_yosys {
|
||||||
git clone https://github.com/YosysHQ/yosys.git
|
DESTDIR=`pwd`/.yosys
|
||||||
pushd yosys
|
pushd yosys
|
||||||
make -j`nproc`
|
make -j`nproc`
|
||||||
sudo make install
|
sudo make install DESTDIR=$DESTDIR
|
||||||
popd
|
popd
|
||||||
}
|
}
|
||||||
|
|
||||||
|
37
.github/workflows/interchange_ci.yml
vendored
37
.github/workflows/interchange_ci.yml
vendored
@ -21,11 +21,22 @@ jobs:
|
|||||||
- name: ccache
|
- name: ccache
|
||||||
uses: hendrikmuhs/ccache-action@v1
|
uses: hendrikmuhs/ccache-action@v1
|
||||||
|
|
||||||
- name: Execute build yosys script
|
- name: Get yosys
|
||||||
|
run: git clone https://github.com/YosysHQ/yosys.git
|
||||||
|
|
||||||
|
- name: Cache yosys installation
|
||||||
|
uses: actions/cache@v2
|
||||||
|
id: cache-yosys
|
||||||
|
with:
|
||||||
|
path: .yosys
|
||||||
|
key: cache-yosys-${{ hashFiles('**/yosys/.git/HEAD') }}
|
||||||
|
|
||||||
|
- name: Build yosys
|
||||||
run: |
|
run: |
|
||||||
export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH"
|
export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH"
|
||||||
source ./.github/ci/build_interchange.sh
|
source ./.github/ci/build_interchange.sh
|
||||||
build_yosys
|
build_yosys
|
||||||
|
if: steps.cache-yosys.outputs.cache-hit != 'true'
|
||||||
|
|
||||||
Build-nextpnr:
|
Build-nextpnr:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
@ -45,7 +56,7 @@ jobs:
|
|||||||
- name: ccache
|
- name: ccache
|
||||||
uses: hendrikmuhs/ccache-action@v1
|
uses: hendrikmuhs/ccache-action@v1
|
||||||
|
|
||||||
- name: Execute build interchange script
|
- name: Execute build nextpnr
|
||||||
run: |
|
run: |
|
||||||
export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH"
|
export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH"
|
||||||
source ./.github/ci/build_interchange.sh
|
source ./.github/ci/build_interchange.sh
|
||||||
@ -73,21 +84,39 @@ jobs:
|
|||||||
- name: ccache
|
- name: ccache
|
||||||
uses: hendrikmuhs/ccache-action@v1
|
uses: hendrikmuhs/ccache-action@v1
|
||||||
|
|
||||||
|
- name: Get yosys
|
||||||
|
run: git clone https://github.com/YosysHQ/yosys.git
|
||||||
|
|
||||||
|
- name: Cache yosys installation
|
||||||
|
uses: actions/cache@v2
|
||||||
|
id: cache-yosys
|
||||||
|
with:
|
||||||
|
path: .yosys
|
||||||
|
key: cache-yosys-${{ hashFiles('**/yosys/.git/HEAD') }}
|
||||||
|
|
||||||
|
- name: Build yosys
|
||||||
|
run: |
|
||||||
|
export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH"
|
||||||
|
source ./.github/ci/build_interchange.sh
|
||||||
|
build_yosys
|
||||||
|
if: steps.cache-yosys.outputs.cache-hit != 'true'
|
||||||
|
|
||||||
- name: Execute build interchange script
|
- name: Execute build interchange script
|
||||||
env:
|
env:
|
||||||
RAPIDWRIGHT_PATH: ${{ github.workspace }}/RapidWright
|
RAPIDWRIGHT_PATH: ${{ github.workspace }}/RapidWright
|
||||||
INTERCHANGE_SCHEMA_PATH: ${{ github.workspace }}/3rdparty/fpga-interchange-schema/interchange
|
INTERCHANGE_SCHEMA_PATH: ${{ github.workspace }}/3rdparty/fpga-interchange-schema/interchange
|
||||||
PYTHON_INTERCHANGE_PATH: ${{ github.workspace }}/python-fpga-interchange
|
PYTHON_INTERCHANGE_PATH: ${{ github.workspace }}/python-fpga-interchange
|
||||||
PYTHON_INTERCHANGE_TAG: v0.0.4
|
PYTHON_INTERCHANGE_TAG: v0.0.4
|
||||||
|
|
||||||
run: |
|
run: |
|
||||||
export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH"
|
export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH"
|
||||||
source ./.github/ci/build_interchange.sh
|
source ./.github/ci/build_interchange.sh
|
||||||
build_yosys && build_nextpnr && get_dependencies
|
build_nextpnr && get_dependencies
|
||||||
|
|
||||||
- name: Run tests
|
- name: Run tests
|
||||||
env:
|
env:
|
||||||
DEVICE: ${{ matrix.device }}
|
DEVICE: ${{ matrix.device }}
|
||||||
run: |
|
run: |
|
||||||
|
export PATH="$GITHUB_WORKSPACE/.yosys/usr/local/bin:$PATH"
|
||||||
|
which yosys
|
||||||
cd build
|
cd build
|
||||||
make all-$DEVICE-tests -j`nproc`
|
make all-$DEVICE-tests -j`nproc`
|
||||||
|
Loading…
Reference in New Issue
Block a user