4
4
push :
5
5
branches :
6
6
- main
7
+ paths :
8
+ - ' .github/workflows/enzyme-bazel.yml'
9
+ - ' enzyme/Enzyme/**'
10
+ - ' enzyme/includes/**'
11
+ - ' enzyme/test/**'
12
+ - ' enzyme/tools/**'
13
+ - ' enzyme/benchmarks/**'
14
+ - ' enzyme/cmake/**'
15
+ - ' enzyme/CMakeLists.txt'
16
+ - ' enzyme/CMakePresets.json'
7
17
pull_request :
18
+ branches :
19
+ - main
20
+ paths :
21
+ - ' .github/workflows/enzyme-bazel.yml'
22
+ - ' enzyme/Enzyme/**'
23
+ - ' enzyme/includes/**'
24
+ - ' enzyme/test/**'
25
+ - ' enzyme/BUILD'
26
+ - ' enzyme/WORKSPACE'
8
27
merge_group :
9
28
10
29
jobs :
@@ -24,28 +43,28 @@ jobs:
24
43
steps :
25
44
- name : add llvm
26
45
run : |
27
- wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key| sudo apt-key add -
28
- sudo apt-add-repository "deb http://apt.llvm.org/`lsb_release -c | cut -f2`/ llvm-toolchain-`lsb_release -c | cut -f2`-${{ matrix.llvm }} main" || true
29
- sudo apt-get install -y cmake gcc g++ llvm-${{ matrix.llvm }}-dev libzstd -dev
46
+ wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
47
+ sudo apt-add-repository "deb http://apt.llvm.org/`lsb_release -c | cut -f2`/ llvm-toolchain-`lsb_release -c | cut -f2`-${{ matrix.llvm }} main"
48
+ sudo apt-get install -y cmake ninja-build llvm-${{ matrix.llvm }}-dev
30
49
sudo python3 -m pip install --upgrade pip lit
31
50
- uses : actions/checkout@v4
32
51
- name : mkdir
33
- run : rm -rf build && mkdir build
52
+ run : mkdir build
34
53
- name : cmake
35
54
working-directory : build
36
- run : cmake ../enzyme -DCMAKE_BUILD_TYPE=${{ matrix.build }} -DLLVM_EXTERNAL_LIT=`which lit` -DLLVM_DIR=/usr/lib/llvm-${{ matrix.llvm }}/lib/cmake/llvm
37
- - name : make
55
+ run : cmake -G Ninja ../enzyme -DCMAKE_BUILD_TYPE=${{ matrix.build }} -DLLVM_EXTERNAL_LIT=`which lit` -DLLVM_DIR=/usr/lib/llvm-${{ matrix.llvm }}/lib/cmake/llvm
56
+ - name : build
38
57
working-directory : build
39
- run : make -j `nproc`
40
- - name : make check-typeanalysis
58
+ run : ninja
59
+ - name : check-typeanalysis
41
60
working-directory : build
42
- run : make -j `nproc` check-typeanalysis
43
- - name : make check-activityanalysis
61
+ run : ninja check-typeanalysis
62
+ - name : ninja check-activityanalysis
44
63
working-directory : build
45
- run : make -j `nproc` check-activityanalysis
46
- - name : make check-enzyme
64
+ run : ninja check-activityanalysis
65
+ - name : check-enzyme
47
66
working-directory : build
48
- run : make -j `nproc` check-enzyme-bench
67
+ run : ninja check-enzyme-bench
49
68
50
69
build-macos :
51
70
name : Enzyme CI LLVM ${{ matrix.llvm }} ${{ matrix.build }} macOS
@@ -60,28 +79,25 @@ jobs:
60
79
timeout-minutes : 30
61
80
steps :
62
81
- name : add llvm
63
- run : |
64
- brew update
65
- brew install llvm@${{ matrix.llvm }} make cmake
66
- sudo python3 -m pip install --upgrade --break-system-packages --user pip lit requests
82
+ run : brew install llvm@${{ matrix.llvm }} ninja-build cmake lit
67
83
- uses : actions/checkout@v4
68
84
- name : mkdir
69
- run : rm -rf build && mkdir build
85
+ run : mkdir build
70
86
- name : cmake
71
87
working-directory : build
72
- run : cmake ../enzyme -DCMAKE_BUILD_TYPE=${{ matrix.build }} -DLLVM_EXTERNAL_LIT=`find /Users/runner/Library/Python/ -iname lit` -DLLVM_DIR=`brew --prefix llvm@${{ matrix.llvm }}`/lib/cmake/llvm
73
- - name : make
88
+ run : cmake -G Ninja ../enzyme -DCMAKE_BUILD_TYPE=${{ matrix.build }} -DLLVM_EXTERNAL_LIT=`which lit` -DLLVM_DIR=`brew --prefix llvm@${{ matrix.llvm }}`/lib/cmake/llvm
89
+ - name : build
74
90
working-directory : build
75
- run : make -j 3
76
- - name : make check-typeanalysis
91
+ run : ninja
92
+ - name : check-typeanalysis
77
93
working-directory : build
78
- run : make -j 3 check-typeanalysis
79
- - name : make check-activityanalysis
94
+ run : ninja check-typeanalysis
95
+ - name : check-activityanalysis
80
96
working-directory : build
81
- run : make -j 3 check-activityanalysis
82
- - name : make check-enzyme
97
+ run : ninja check-activityanalysis
98
+ - name : check-enzyme
83
99
working-directory : build
84
- run : make -j3 check-enzyme-bench
100
+ run : ninja check-enzyme-bench
85
101
86
102
build-xcode :
87
103
name : Enzyme CI LLVM ${{ matrix.llvm }} ${{ matrix.build }} macOS XCode
@@ -96,12 +112,10 @@ jobs:
96
112
timeout-minutes : 30
97
113
steps :
98
114
- name : add llvm
99
- run : |
100
- brew install llvm@${{ matrix.llvm }} make cmake gcc
101
- sudo python3 -m pip install --upgrade --break-system-packages --user pip lit
115
+ run : brew install llvm@${{ matrix.llvm }} make cmake lit
102
116
- uses : actions/checkout@v4
103
117
- name : mkdir
104
- run : rm -rf build && mkdir build
118
+ run : mkdir build
105
119
- name : cmake
106
120
working-directory : build
107
121
run : |
0 commit comments