diff options
Diffstat (limited to '.github/workflows')
-rw-r--r-- | .github/workflows/build_cmake.yml | 86 |
1 files changed, 79 insertions, 7 deletions
diff --git a/.github/workflows/build_cmake.yml b/.github/workflows/build_cmake.yml index 6f1e0f2..3d1f7f3 100644 --- a/.github/workflows/build_cmake.yml +++ b/.github/workflows/build_cmake.yml @@ -132,9 +132,19 @@ jobs: run: sudo apt-get install ghostscript if: matrix.config.os == 'ubuntu-latest' -# - name: Install Ghostscript (Windows) -# run: choco install ghostscript -# if: matrix.config.os == 'windows-latest' + - name: Install Ghostscript (Windows) + run: + choco install ghostscript + if: matrix.config.os == 'windows-latest' + + - name: Setting Ghostscript paths (Windows) + shell: bash + run: | + echo "C:/Program Files (x86)/gs/gs9.53.3/bin/" >> $GITHUB_PATH + echo "C:/Program Files/gs/gs9.53.3/bin/" >> $GITHUB_PATH + export PATH="/c/Program Files (x86)/gs/gs9.53.3/bin/:$PATH" + export PATH="/c/Program Files/gs/gs9.53.3/bin/:$PATH" + if: matrix.config.os == 'windows-latest' - name: Install xmllint (Linux) run: sudo apt-get install libxml2-utils @@ -155,6 +165,19 @@ jobs: choco install winflexbison if: matrix.config.os == 'windows-latest' + - name: Install Graphviz (Linux) + run: sudo apt-get install graphviz + if: matrix.config.os == 'ubuntu-latest' + + - name: Install Graphviz (MacOS) + run: brew install graphviz + if: matrix.config.os == 'macos-latest' + + - name: Install Graphviz (Windows) + run: + choco install graphviz.portable + if: matrix.config.os == 'windows-latest' + # - name: Install Perl (Windows) # run: # choco install activeperl @@ -169,7 +192,7 @@ jobs: refreshenv if: matrix.config.os == 'windows-latest' - - name: Check tool versions + - name: Check tool versions (Linux / MacOS) shell: bash run: | echo "=== perl ==="; @@ -182,10 +205,41 @@ jobs: latex --version; echo "=== bibtex ==="; bibtex --version + echo "=== dvips ==="; + dvips --version + echo "=== bison ==="; + bison --version; + echo "=== flex ==="; + flex --version; + echo "=== dot ==="; + dot -V; + echo "=== ghostscript ==="; + gs --version; + if: matrix.config.os != 'windows-latest' + + - name: Check tool versions (Windows) + shell: bash + run: | + echo "=== perl ==="; + perl --version; + echo "=== python ==="; + python --version; + echo "=== cmake ==="; + cmake --version; + echo "=== latex ==="; + latex --version; + echo "=== bibtex ==="; + bibtex --version + echo "=== dvips ==="; + dvips --version echo "=== bison ==="; win_bison --version; echo "=== flex ==="; win_flex --version; + echo "=== dot ==="; + dot -V; + echo "=== ghostscript ==="; + gswin64c --version; if: matrix.config.os == 'windows-latest' - name: Configure @@ -229,7 +283,7 @@ jobs: message(FATAL_ERROR "Build failed") endif() - - name: Run tests + - name: Run tests (Linux / MacOS) shell: cmake -P {0} run: | include(ProcessorCount) @@ -238,12 +292,30 @@ jobs: set(ENV{CTEST_OUTPUT_ON_FAILURE} "ON") execute_process( - COMMAND cmake --build build --target tests + COMMAND cmake --build build --target tests TEST_FLAGS="--xml --xmlxsd --xhtml --docbook --rtf" RESULT_VARIABLE result ) if (NOT result EQUAL 0) message(FATAL_ERROR "Running tests failed!") endif() + if: matrix.config.os != 'windows-latest' + + - name: Run tests (Windows) + shell: cmake -P {0} + run: | + include(ProcessorCount) + ProcessorCount(N) + + set(ENV{CTEST_OUTPUT_ON_FAILURE} "ON") + + execute_process( + COMMAND cmake --build build --target tests TEST_FLAGS="--xml --xmlxsd" + RESULT_VARIABLE result + ) + if (NOT result EQUAL 0) + message(FATAL_ERROR "Running tests failed!") + endif() + if: matrix.config.os == 'windows-latest' - name: Generate documentation shell: cmake -P {0} @@ -253,6 +325,6 @@ jobs: RESULT_VARIABLE result ) if (NOT result EQUAL 0) - message(FATAL_ERROR "Bad exit status") + message(FATAL_ERROR "Building documentation failed") endif() if: matrix.config.os != 'windows-latest' |