@@ -79,33 +79,28 @@ jobs:
79
79
python3-sphinx
80
80
python3-nbsphinx
81
81
82
- - name : Install gcovr for test coverage
83
- if : matrix.cov == 'ON'
82
+ - name : set up compilers
83
+ run : |
84
+ echo "CC=${{ matrix.cc }}" >> $GITHUB_ENV
85
+ echo "CXX=${{ matrix.cxx }}" >> $GITHUB_ENV
86
+
87
+ - name : set up virtualenv
84
88
run : |
89
+ mkdir $HOME/.venv
85
90
python3 -m venv --system-site-packages $HOME/.venv/my_python
86
91
source $HOME/.venv/my_python/bin/activate
87
- pip install gcovr
88
92
echo "VIRTUAL_ENV=$VIRTUAL_ENV" >> $GITHUB_ENV
89
93
echo "PATH=$PATH" >> $GITHUB_ENV
90
94
91
95
- name : Install homebrew dependencies
92
96
if : matrix.os == 'macos-12'
93
97
run : |
94
98
brew install ccache gcc@12 llvm hdf5 open-mpi openblas
95
- mkdir $HOME/.venv
96
- python3 -m venv $HOME/.venv/my_python
97
- source $HOME/.venv/my_python/bin/activate
98
99
pip install mako numpy scipy mpi4py
99
100
pip install -r requirements.txt
100
- echo "VIRTUAL_ENV=$VIRTUAL_ENV" >> $GITHUB_ENV
101
- echo "PATH=$PATH" >> $GITHUB_ENV
102
101
103
102
- name : Build doxygen
104
103
if : matrix.doc == 'ON'
105
- env :
106
- CC : ${{ matrix.cc }}
107
- CXX : ${{ matrix.cxx }}
108
- LIBRARY_PATH : /usr/local/opt/llvm/lib
109
104
run : |
110
105
cd $HOME
111
106
git clone https://github.com/doxygen/doxygen.git
@@ -117,11 +112,18 @@ jobs:
117
112
make -j 2 VERBOSE=1
118
113
cp bin/doxygen /usr/local/bin/doxygen
119
114
120
- - name : add clang cxxflags
115
+ - name : set clang environment
121
116
if : ${{ contains(matrix.cxx, 'clang') }}
122
117
run : |
123
- echo "PATH=/usr/local/opt/llvm/bin:$PATH" >> $GITHUB_ENV
124
118
echo "CXXFLAGS=-stdlib=libc++" >> $GITHUB_ENV
119
+ echo "PATH=/usr/local/opt/llvm/bin:$PATH" >> $GITHUB_ENV
120
+ echo "LIBRARY_PATH=/usr/local/opt/llvm/lib" >> $GITHUB_ENV
121
+
122
+ - name : set up test coverage
123
+ if : matrix.cov == 'ON'
124
+ run : |
125
+ pip install gcovr
126
+ echo "CXXFLAGS=--coverage" >> $GITHUB_ENV
125
127
126
128
- name : Prepare source files for doxygen
127
129
if : matrix.doc == 'ON'
@@ -132,25 +134,9 @@ jobs:
132
134
mv tmp_basic_array.hpp basic_array.hpp
133
135
mv tmp_basic_array_view.hpp basic_array_view.hpp
134
136
135
- - name : Build nda without test coverage
136
- if : matrix.cov == 'OFF'
137
- env :
138
- CC : ${{ matrix.cc }}
139
- CXX : ${{ matrix.cxx }}
140
- LIBRARY_PATH : /usr/local/opt/llvm/lib
141
- run : |
142
- mkdir build && cd build && cmake .. -DCMAKE_INSTALL_PREFIX=$HOME/install -DBuild_Documentation=${{ matrix.doc }} -DPythonSupport=ON
143
- make -j2 || make -j1 VERBOSE=1
144
-
145
- - name : Build nda with test coverage
146
- if : matrix.cov == 'ON'
147
- env :
148
- CC : ${{ matrix.cc }}
149
- CXX : ${{ matrix.cxx }}
150
- LIBRARY_PATH : /usr/local/opt/llvm/lib
151
- CXXFLAGS : " ${{ env.CXXFLAGS }} --coverage"
137
+ - name : Build nda
152
138
run : |
153
- mkdir build && cd build && cmake .. -DCMAKE_INSTALL_PREFIX=$HOME/install -DPythonSupport=OFF - DCMAKE_BUILD_TYPE=Debug
139
+ mkdir build && cd build && cmake .. -DCMAKE_INSTALL_PREFIX=$HOME/install -DPythonSupport=ON -DBuild_Documentation=${{ matrix.doc }} - DCMAKE_BUILD_TYPE=${{ matrix.cov == 'ON' && ' Debug' || 'Release' }}
154
140
make -j2 || make -j1 VERBOSE=1
155
141
156
142
- name : Test nda
0 commit comments