Skip to content

Commit d6637bf

Browse files
committed
test parallel build
1 parent a26f528 commit d6637bf

1 file changed

Lines changed: 78 additions & 0 deletions

File tree

.github/workflows/c_actions.yml

Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
# Copyright (c) 2020 The University of Manchester
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# https://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
# This workflow will install Python dependencies, run tests, lint and rat with a variety of Python versions
16+
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
17+
18+
name: C Actions
19+
on: [push]
20+
jobs:
21+
build:
22+
runs-on: ubuntu-latest
23+
steps:
24+
- name: Checkout
25+
uses: actions/checkout@v2
26+
- name: Checkout SupportScripts
27+
uses: actions/checkout@v2
28+
with:
29+
repository: SpiNNakerManchester/SupportScripts
30+
path: support
31+
32+
- name: Install Ubuntu packages
33+
uses: SpiNNakerManchester/SupportScripts/actions/apt-get-install@main
34+
with:
35+
packages: doxygen gcc-arm-none-eabi
36+
- name: Configure Python 3.12
37+
# Note: Python is needed for spinn_utilities.make_tools when building
38+
uses: actions/setup-python@v2
39+
with:
40+
python-version: 3.12
41+
42+
- name: Checkout SpiNNaker C Dependencies
43+
uses: SpiNNakerManchester/SupportScripts/actions/install-spinn-deps@main
44+
with:
45+
# Note: SpiNNUtils needed for spinn_utilities.make_tools
46+
repositories: >
47+
spinnaker_tools spinn_common SpiNNFrontEndCommon sPyNNaker
48+
49+
- name: "Prepare: Install SpiNNUtils"
50+
uses: SpiNNakerManchester/SupportScripts/actions/install-spinn-deps@main
51+
with:
52+
# Note: SpiNNUtils needed for spinn_utilities.make_tools
53+
repositories: SpiNNUtils
54+
install: true
55+
56+
- name: Build SpiNNaker C code
57+
env:
58+
SPINN_INSTALL_DIR: ${{ github.workspace }}/spinnaker_tools_install
59+
SPINN_COMMON_INSTALL_DIR: ${{ github.workspace }}/spinn_common_install
60+
FEC_INSTALL_DIR: ${{ github.workspace }}/fec_install
61+
SPYNNAKER_INSTALL_DIR: ${{ github.workspace }}/spynnaker_install
62+
C_LOGS_DICT: ${{ github.workspace }}/python_models8/model_binaries/logs.sqlite3
63+
CFLAGS: -fdiagnostics-color=always
64+
run: |
65+
make -C spinnaker_tools install
66+
make -C spinn_common install
67+
make -C SpiNNFrontEndCommon/c_common install
68+
make -C sPyNNaker/neural_modelling install
69+
70+
- name: Build SpiNNaker C code globally
71+
env:
72+
C_LOGS_DICT: ${{ github.workspace }}/python_models8/model_binaries/logs.sqlite3
73+
CFLAGS: -fdiagnostics-color=always
74+
run: |
75+
make -C spinnaker_tools
76+
make -C spinn_common install
77+
make -C SpiNNFrontEndCommon/c_common
78+
make -C sPyNNaker/neural_modelling

0 commit comments

Comments
 (0)