Skip to content

Commit

Permalink
Add ock workflow for aarch64
Browse files Browse the repository at this point in the history
  • Loading branch information
coldav committed Sep 13, 2024
1 parent 8f40eff commit 06ce261
Show file tree
Hide file tree
Showing 5 changed files with 82 additions and 22 deletions.
10 changes: 7 additions & 3 deletions .github/actions/do_build_ock/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -82,9 +82,7 @@ runs:
shell: bash
run:
cmake -GNinja
-B${{ inputs.build_dir }}
-DCMAKE_C_COMPILER_LAUNCHER=sccache
-DCMAKE_CXX_COMPILER_LAUNCHER=sccache
-B${{ inputs.build_dir }}
-DCA_MUX_TARGETS_TO_ENABLE=${{ inputs.mux_targets_enable }}
-DCA_ENABLE_API=${{ inputs.enable_api }}
-DCA_LLVM_INSTALL_DIR=${{ inputs.llvm_install_dir }}
Expand All @@ -110,6 +108,12 @@ runs:
-DCMAKE_INSTALL_PREFIX=${{ inputs.install_dir }}
${{ inputs.extra_flags }}
.

# Removed for aarch64
# -DCMAKE_C_COMPILER_LAUNCHER=sccache
# -DCMAKE_CXX_COMPILER_LAUNCHER=sccache


- name: build_ock
shell: bash
run:
Expand Down
15 changes: 8 additions & 7 deletions .github/actions/setup_ubuntu_build/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,11 +39,12 @@ runs:
fail-on-cache-miss: true

# note the PR testing usage should set 'save' to false, to avoid PR testing creating new caches on a branch
- name: Setup sccache
uses: hendrikmuhs/[email protected]
with:
max-size: 200M
key: sccache-build
variant: sccache
save: ${{ inputs.save }}
# - name: Setup sccache
# if: ${{ inputs.arch}} == 'x86_64'
# uses: hendrikmuhs/[email protected]
# with:
# max-size: 200M
# key: sccache-build
# variant: sccache
# save: ${{ inputs.save }}

54 changes: 54 additions & 0 deletions .github/workflows/build_ock_aarch64.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
# Simple workflow for testing aarch64 ock
name: Run ock tests for PR testing
on:
# For testing purposes do on a pull request if this file changes
pull_request:
paths:
- '.github/workflows/build_ock_aarch64.yml'
- '.github/actions/setup_ubuntu_build/**'

# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

jobs:

# build and run host aarch64, execute UnitCL and lit tests and build and run offline
run_host_aarch64:
runs-on: cp-graviton
steps:
- name: Checkout repo
uses: actions/checkout@v4
- name: add to path
run:
echo "PATH=$PATH:/home/ubuntu/.local/bin" >> $GITHUB_ENV

- name: echo PATH
run:
echo PATH=$PATH
# installs tools, ninja, installs llvm and sets up sccahe
- name: setup-ubuntu
uses: ./.github/actions/setup_ubuntu_build
with:
llvm_version: 18
llvm_build_type: RelAssert
arch: aarch64

# These need to match the configurations of build_pr_cache to use the cache effectively
- name: build host x86_64 online release
uses: ./.github/actions/do_build_ock
with:
build_type: ReleaseAssert

- name: run just online lit
run:
ninja -C build check-ock-all-lit

- name: run host online check
run:
ninja -C build check-ock-UnitCL


6 changes: 3 additions & 3 deletions .github/workflows/create_llvm.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,9 @@ on:
- main
paths:
- '.github/workflows/create_llvm.yml'
pull_request:
paths:
- '.github/workflows/create_llvm.yml'
# pull_request:
# paths:
# - '.github/workflows/create_llvm.yml'
workflow_dispatch:

jobs:
Expand Down
19 changes: 10 additions & 9 deletions .github/workflows/run_pr_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,16 @@ name: Run ock tests for PR testing
on:
pull_request:
paths:
- 'source/**'
- 'clik/**'
- 'modules/**'
- 'examples/**'
- 'cmake/**'
- 'hal/**'
- '.github/actions/do_build_ock/**'
- '.github/actions/setup_ubuntu_build/**'
- '.github/workflows/run_pr_tests.yml'
# temp change so we only build what we want.
# - 'source/**'
# - 'clik/**'
# - 'modules/**'
# - 'examples/**'
# - 'cmake/**'
# - 'hal/**'
# - '.github/actions/do_build_ock/**'
# - '.github/actions/setup_ubuntu_build/**'
# - '.github/workflows/run_pr_tests.yml'
- 'CMakeLists.txt'

# Allows you to run this workflow manually from the Actions tab
Expand Down

0 comments on commit 06ce261

Please sign in to comment.