Relicense #79
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # This workflow uses actions that are not certified by GitHub. | |
| # They are provided by a third-party and are governed by | |
| # separate terms of service, privacy policy, and support | |
| # documentation. | |
| name: Python Library Build | |
| on: | |
| push: | |
| branches: [ "development" ] | |
| pull_request: | |
| branches: [ "development" ] | |
| permissions: | |
| contents: read | |
| jobs: | |
| build: | |
| runs-on: ubuntu-22.04 | |
| steps: | |
| - uses: actions/checkout@v3 | |
| with: | |
| submodules: 'recursive' | |
| - uses: dlang-community/setup-dlang@4c99aa991ce7d19dd3064de0a4f2f6b2f152e2d7 | |
| with: | |
| compiler: ldc-1.28.1 | |
| - name: Install Dependencies | |
| run: | | |
| eval `ssh-agent -s` | |
| ssh-add - <<< '${{ secrets.ACTIONS_KEY }}' | |
| dir=$(pwd) | |
| sudo apt-get update | |
| sudo apt-get install -y gfortran libfftw3-dev | |
| sudo apt-get install -y libopenblas-dev liblapack-dev liblapacke-dev libopenmpi-dev | |
| sudo apt-get install -y python3-scipy python3-numpy python3-mpi4py | |
| pip3 install pyjson5 | |
| # wopwop fetch and build | |
| cd $dir | |
| git clone git@github.com:OpenWopwop/wopwop3.git | |
| cd wopwop3 | |
| git checkout BRRC_BWI_gfortran_fix | |
| mkdir build | |
| cd build | |
| cmake ../ -DCMAKE_BUILD_TYPE=Release -DPARALLEL=1 -DBUFFERSTD=OFF -DNATIVE=1 -DUseLTO=1 -DFPMODEL=strict -DCMAKE_Fortran_FLAGS="-ffree-line-length-none -Wno-line-truncation" | |
| make | |
| # Sleef fetch and build | |
| cd $dir | |
| wget https://github.com/shibatch/sleef/archive/refs/tags/3.5.1.tar.gz | |
| echo Extracting sleef tarball | |
| tar xf 3.5.1.tar.gz | |
| cd sleef-3.5.1 | |
| mkdir build | |
| cd build | |
| cmake ../ -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=OFF | |
| make > /dev/null 2>&1 | |
| sudo make install | |
| - name: 'Build' | |
| run: | | |
| # Build the project, with its main file included, without unittests | |
| dub build -c library-python310-novtk -b release --compiler=$DC | |
| cd oc_fly/dependencies/wopwopd | |
| dub build -c library-python310 -b release --compiler=$DC | |
| cd - | |
| - name: 'Validate HART II' | |
| run: | | |
| # Run HART II validation case | |
| ls -alh ../ | |
| cd oc_fly/example | |
| ../oc_fly -input_geom hart_ii.json5 -input_param hart_ii_params.json5 --aero -fs | |
| mkdir -p ./hart_ii/BL/acoustics/full_system/octaveFilterSP/spl | |
| mkdir -p ./hart_ii/MN/acoustics/full_system/octaveFilterSP/spl | |
| mkdir -p ./hart_ii/MV/acoustics/full_system/octaveFilterSP/spl | |
| ../../wopwop3/build/wopwop3 cases_0_0.nam | |
| ../../wopwop3/build/wopwop3 cases_0_1.nam | |
| ../../wopwop3/build/wopwop3 cases_0_2.nam |