@@ -79,33 +79,13 @@ jobs:
7979 python3-sphinx
8080 python3-nbsphinx
8181
82- - name : Install gcovr for test coverage
83- if : matrix.cov == 'ON'
82+ - name : set up compilers
8483 run : |
85- python3 -m venv --system-site-packages $HOME/.venv/my_python
86- source $HOME/.venv/my_python/bin/activate
87- pip install gcovr
88- echo "VIRTUAL_ENV=$VIRTUAL_ENV" >> $GITHUB_ENV
89- echo "PATH=$PATH" >> $GITHUB_ENV
90-
91- - name : Install homebrew dependencies
92- if : matrix.os == 'macos-12'
93- run : |
94- 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- pip install mako numpy scipy mpi4py
99- pip install -r requirements.txt
100- echo "VIRTUAL_ENV=$VIRTUAL_ENV" >> $GITHUB_ENV
101- echo "PATH=$PATH" >> $GITHUB_ENV
84+ echo "CC=${{ matrix.cc }}" >> $GITHUB_ENV
85+ echo "CXX=${{ matrix.cxx }}" >> $GITHUB_ENV
10286
10387 - name : Build doxygen
10488 if : matrix.doc == 'ON'
105- env :
106- CC : ${{ matrix.cc }}
107- CXX : ${{ matrix.cxx }}
108- LIBRARY_PATH : /usr/local/opt/llvm/lib
10989 run : |
11090 cd $HOME
11191 git clone https://github.com/doxygen/doxygen.git
@@ -117,11 +97,33 @@ jobs:
11797 make -j 2 VERBOSE=1
11898 cp bin/doxygen /usr/local/bin/doxygen
11999
120- - name : add clang cxxflags
100+ - name : set clang environment
121101 if : ${{ contains(matrix.cxx, 'clang') }}
122102 run : |
123- echo "PATH=/usr/local/opt/llvm/bin:$PATH" >> $GITHUB_ENV
124103 echo "CXXFLAGS=-stdlib=libc++" >> $GITHUB_ENV
104+ echo "PATH=/usr/local/opt/llvm/bin:$PATH" >> $GITHUB_ENV
105+ echo "LIBRARY_PATH=/usr/local/opt/llvm/lib" >> $GITHUB_ENV
106+
107+ - name : set up virtualenv
108+ run : |
109+ mkdir $HOME/.venv
110+ python3 -m venv --system-site-packages $HOME/.venv/my_python
111+ source $HOME/.venv/my_python/bin/activate
112+ echo "VIRTUAL_ENV=$VIRTUAL_ENV" >> $GITHUB_ENV
113+ echo "PATH=$PATH" >> $GITHUB_ENV
114+
115+ - name : set up test coverage
116+ if : matrix.cov == 'ON'
117+ run : |
118+ pip install gcovr
119+ echo "CXXFLAGS=--coverage" >> $GITHUB_ENV
120+
121+ - name : Install homebrew dependencies
122+ if : matrix.os == 'macos-12'
123+ run : |
124+ brew install ccache gcc@12 llvm hdf5 open-mpi openblas
125+ pip install mako numpy scipy mpi4py
126+ pip install -r requirements.txt
125127
126128 - name : Prepare source files for doxygen
127129 if : matrix.doc == 'ON'
@@ -132,25 +134,9 @@ jobs:
132134 mv tmp_basic_array.hpp basic_array.hpp
133135 mv tmp_basic_array_view.hpp basic_array_view.hpp
134136
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
152138 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' }}
154140 make -j2 || make -j1 VERBOSE=1
155141
156142 - name : Test nda
0 commit comments