Update CI, help text and README #68
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: CI | |
| on: [push, workflow_dispatch] | |
| jobs: | |
| job: | |
| name: ${{ matrix.os }}-${{ github.workflow }} | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| include: | |
| - os: windows-latest | |
| preset: 'windows' | |
| - os: ubuntu-latest | |
| preset: 'unix' | |
| steps: | |
| - name: Check out repository code | |
| uses: actions/checkout@v4 | |
| - name: Set up JDK 25 | |
| uses: actions/setup-java@v5 | |
| with: | |
| java-version: '25' | |
| distribution: 'adopt' | |
| - name: Run Maven install | |
| shell: bash | |
| run: mvn clean install | |
| - name: Upload coverage reports to Codecov | |
| uses: codecov/codecov-action@v5 | |
| if: runner.os == 'Windows' | |
| env: | |
| CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} | |
| - name: Set C++ VCPKG_ROOT | |
| shell: bash | |
| run: echo VCPKG_ROOT="$VCPKG_INSTALLATION_ROOT" >> "$GITHUB_ENV"; cat "$GITHUB_ENV"; | |
| - name: Run binary file Unix | |
| shell: bash | |
| run: | | |
| $VCPKG_INSTALLATION_ROOT/vcpkg --version | |
| cmake --version | |
| ls | |
| cd target | |
| echo ./cppgen CppProject --test --cmake -V | |
| ./cppgen CppProject --test --cmake -V | |
| if: runner.os != 'Windows' | |
| - name: Run binary file Windows | |
| shell: bash | |
| run: | | |
| $VCPKG_INSTALLATION_ROOT/vcpkg.exe --version | |
| cmake --version | |
| ls | |
| cd target | |
| echo ./cppgen.exe CppProject --test -V | |
| ./cppgen.exe CppProject --test -V | |
| if: runner.os == 'Windows' | |
| - name: Set C++/C compiler on macOS | |
| shell: bash | |
| run: echo "CC=$(brew --prefix llvm@14)/bin/clang" >> $GITHUB_ENV; echo "CXX=$(brew --prefix llvm@14)/bin/clang++" >> $GITHUB_ENV; cat "$GITHUB_ENV" | |
| if: runner.os == 'macOS' | |
| - name: Run CMake with manifest mode vcpkg | |
| shell: bash | |
| run: | | |
| cd target/CppProject | |
| cmake --preset=${{ matrix.preset }} -B build -DCMAKE_VERBOSE_MAKEFILE=1 | |
| - name: Compile C++ project | |
| shell: bash | |
| run: | | |
| cd target/CppProject | |
| cmake --build build |