-
Notifications
You must be signed in to change notification settings - Fork 98
117 lines (104 loc) · 3.77 KB
/
osx.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
name: github-OSX
on:
pull_request:
paths-ignore:
- '**/*.rst'
- '**/*.md'
- '**/requirements.txt'
- '**/*.py'
- 'docs/**'
types: [ opened, reopened, synchronize ]
permissions:
contents: none
# Cancels any in progress 'workflow' associated with this PR
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
env:
kokkos_version: 4.4.01
jobs:
check-pr-labels:
runs-on: [ubuntu-latest]
steps:
- uses: docker://agilepathway/pull-request-label-checker@sha256:ee57b0e1aedab22063ce6467a6e6358e254a9204693ca20d8a16b2d891db8d5f # v1.6.32
with:
none_of: 'AT: WIP'
repo_token: ${{ secrets.GITHUB_TOKEN }}
osxci:
needs: check-pr-labels
# TODO: allow re-run via retest label if: ${{ github.event.label.name == 'AT: RETEST' }}
name: osx-ci
runs-on: [macos-latest]
strategy:
matrix:
include:
- backend: "SERIAL"
cmake_build_type: "RelWithDebInfo"
debug_bounds_check: "ON"
- backend: "THREADS"
cmake_build_type: "RelWithDebInfo"
debug_bounds_check: "ON"
- backend: "SERIAL"
cmake_build_type: "Debug"
debug_bounds_check: "OFF"
- backend: "SERIAL"
cmake_build_type: "Release"
debug_bounds_check: "ON"
steps:
- name: checkout_kokkos_kernels
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
path: kokkos-kernels
- name: checkout_kokkos
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
repository: kokkos/kokkos
ref: ${{ env.kokkos_version }}
path: kokkos
- name: configure_kokkos
run: |
mkdir -p kokkos/{build,install}
cd kokkos/build
cmake \
-DKokkos_ENABLE_${{ matrix.backend }}=ON \
-DCMAKE_CXX_FLAGS="-Werror" \
-DCMAKE_CXX_STANDARD=17 \
-DKokkos_ENABLE_COMPILER_WARNINGS=ON \
-DKokkos_ENABLE_DEBUG_BOUNDS_CHECK:BOOL=${{ matrix.debug_bounds_check }} \
-DKokkos_ENABLE_DEPRECATED_CODE_3=OFF \
-DKokkos_ENABLE_TESTS=OFF \
-DKokkos_ENABLE_DEPRECATED_CODE_4=OFF \
-DCMAKE_BUILD_TYPE=${{ matrix.cmake_build_type }} \
-DCMAKE_INSTALL_PREFIX=$PWD/../install \
..
- name: build_and_install_kokkos
working-directory: kokkos/build
run: make -j2 install
- name: configure_kokkos_kernels
run: |
mkdir -p kokkos-kernels/{build,install}
cd kokkos-kernels/build
cmake \
-DKokkos_DIR=$PWD/../../kokkos/install/lib/cmake/Kokkos \
-DCMAKE_BUILD_TYPE=${{ matrix.cmake_build_type }} \
-DCMAKE_CXX_FLAGS="-Wall -Wshadow -pedantic -Werror -Wsign-compare -Wtype-limits -Wignored-qualifiers -Wempty-body -Wuninitialized" \
-DCMAKE_INSTALL_PREFIX=$PWD/../install \
-DKokkosKernels_ENABLE_TESTS=ON \
-DKokkosKernels_ENABLE_EXAMPLES:BOOL=ON \
-DKokkosKernels_INST_COMPLEX_DOUBLE=ON \
-DKokkosKernels_INST_DOUBLE=ON \
-DKokkosKernels_INST_COMPLEX_FLOAT=ON \
-DKokkosKernels_INST_FLOAT=ON \
-DKokkosKernels_INST_LAYOUTLEFT:BOOL=ON \
-DKokkosKernels_INST_LAYOUTRIGHT:BOOL=ON \
-DKokkosKernels_INST_OFFSET_INT=ON \
-DKokkosKernels_INST_OFFSET_SIZE_T=ON \
-DKokkosKernels_ENABLE_TPL_CUSPARSE=OFF \
-DKokkosKernels_ENABLE_TPL_CUBLAS=OFF \
..
- name: build_kokkos_kernels
working-directory: kokkos-kernels/build
run: make -j2
- name: test
working-directory: kokkos-kernels/build
run: ctest -j2 --output-on-failure --timeout 7200