Add MOMO example: ~113 km apogee validation, abort envelope, unguided-model limit #262
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
| name: Build | |
| on: | |
| push: | |
| branches: | |
| - master | |
| pull_request: | |
| branches: | |
| - master | |
| jobs: | |
| build: | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [ubuntu-latest, macOS-latest, windows-latest] | |
| steps: | |
| - uses: actions/checkout@v7 | |
| - name: install C++17 compiler | |
| if: matrix.os == 'ubuntu-latest' | |
| run: | | |
| sudo apt-add-repository -y "ppa:ubuntu-toolchain-r/test" | |
| sudo apt update | |
| sudo apt install -y g++-9 | |
| - name: make build dir | |
| run: mkdir build | |
| - name: configure on ubuntu | |
| if: matrix.os == 'ubuntu-latest' | |
| run: | | |
| cd build | |
| cmake -DCMAKE_CXX_COMPILER=g++-9 .. | |
| - name: configure on mac | |
| if: matrix.os == 'macOS-latest' | |
| run: | | |
| cd build | |
| cmake .. | |
| - name: configure on windows | |
| if: matrix.os == 'windows-latest' | |
| run: | | |
| cd build | |
| cmake -G "Visual Studio 18 2026" -A x64 .. | |
| - name: build on ${{ matrix.os }} | |
| run: cmake --build build --parallel | |
| - name: create COPYING | |
| shell: bash # touch/cat are not native to Windows PowerShell | |
| run: | | |
| touch COPYING | |
| echo "Eigen (C++ template library for linear algebra)" >> COPYING | |
| echo "-----------------------------------------------" >> COPYING | |
| cat build/deps/build/eigen/src/eigen/COPYING.MPL2 >> COPYING | |
| echo "" >> COPYING | |
| echo "toml11 (C++11 header-only toml parser/encoder)" | |
| echo "-----------------------------------------------" >> COPYING | |
| cat build/deps/build/toml11/src/toml11/LICENSE >> COPYING | |
| - name: make release directory | |
| env: | |
| OS: ${{ runner.os }} | |
| run: | | |
| mkdir trochia | |
| cp README.md trochia/ | |
| cp LICENSE trochia/ | |
| cp COPYING trochia/ | |
| - name: make archive file | |
| if: matrix.os != 'windows-latest' | |
| env: | |
| OS: ${{ runner.os }} | |
| run: | | |
| cp build/bin/trochia* trochia/ | |
| zip -r trochia-$OS.zip trochia/ | |
| - name: make archive file for Windows | |
| if: matrix.os == 'windows-latest' | |
| run: | | |
| cp build/bin/Debug/trochia.exe trochia | |
| 7z a trochia-Windows.zip trochia | |
| - name: Upload archive as artifact | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: "trochia-${{ runner.os }}" | |
| path: "trochia-${{ runner.os }}.zip" |