openglosd: Implement cPixmap::Copy() and cPixmap::Render() #891
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 vdr-plugin-softhddevice-drm-gles | |
| on: | |
| push: | |
| branches: | |
| - drm-atomic-gles | |
| pull_request: | |
| branches: | |
| - drm-atomic-gles | |
| workflow_dispatch: | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Install build dependencies | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get install -y \ | |
| build-essential \ | |
| pkg-config \ | |
| git \ | |
| catch2 \ | |
| lcov \ | |
| valgrind \ | |
| gettext \ | |
| cppcheck \ | |
| libavcodec-dev \ | |
| libavfilter-dev \ | |
| libavformat-dev \ | |
| libavutil-dev \ | |
| libasound2-dev \ | |
| libdrm-dev \ | |
| libgbm-dev \ | |
| libgles2-mesa-dev \ | |
| libegl1-mesa-dev \ | |
| libglm-dev \ | |
| libfreetype6-dev \ | |
| libfontconfig-dev | |
| - name: Clone VDR repository | |
| run: git clone https://github.com/vdr-projects/vdr.git | |
| - name: Checkout plugin repository | |
| uses: actions/checkout@v4 | |
| with: | |
| path: vdr/PLUGINS/src/softhddevice-drm-gles | |
| - name: Build plugin (with OpenGL/ES support) | |
| run: | | |
| cd vdr | |
| make include-dir vdr.pc | |
| make -C PLUGINS/src/softhddevice-drm-gles INCLUDES="-isystem `pwd`/include -Werror" GLES=1 | |
| cd PLUGINS/src/softhddevice-drm-gles | |
| if ! git diff --quiet -- po/*.po; then | |
| echo "ERROR: The translation files need to be updated:" | |
| git --no-pager diff -- po/*.po | |
| exit 1 | |
| fi | |
| continue-on-error: false | |
| - name: Upload build artifacts | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: vdr-softhddevice-drm-gles | |
| path: vdr/PLUGINS/src/softhddevice-drm-gles/libvdr-softhddevice-drm-gles.so | |
| if-no-files-found: error | |
| - name: Run cppcheck | |
| run: | | |
| cd vdr/PLUGINS/src/softhddevice-drm-gles | |
| cppcheck --quiet --error-exitcode=1 . | |
| - name: Run unit tests | |
| run: | | |
| cd vdr/PLUGINS/src/softhddevice-drm-gles/tests | |
| make test | |
| continue-on-error: false | |
| - name: Publish test results | |
| uses: EnricoMi/publish-unit-test-result-action@v2 | |
| with: | |
| files: vdr/PLUGINS/src/softhddevice-drm-gles/tests/test-results.xml | |
| check_name: Unit Test Results | |
| - name: Generate coverage report | |
| run: | | |
| cd vdr/PLUGINS/src/softhddevice-drm-gles/tests | |
| make coverage-html | |
| - name: Upload coverage HTML report | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: coverage-html-report | |
| path: vdr/PLUGINS/src/softhddevice-drm-gles/tests/coverage-html/ | |
| build-without-gles: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Install build dependencies | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get update | |
| sudo apt-get install -y \ | |
| build-essential \ | |
| pkg-config \ | |
| git \ | |
| gettext \ | |
| libavcodec-dev \ | |
| libavfilter-dev \ | |
| libavformat-dev \ | |
| libavutil-dev \ | |
| libasound2-dev \ | |
| libdrm-dev \ | |
| libgbm-dev \ | |
| libglm-dev \ | |
| libfreetype6-dev \ | |
| libfontconfig-dev | |
| - name: Clone VDR repository | |
| run: git clone https://github.com/vdr-projects/vdr.git | |
| - name: Checkout plugin repository | |
| uses: actions/checkout@v4 | |
| with: | |
| path: vdr/PLUGINS/src/softhddevice-drm-gles | |
| - name: Build plugin (without OpenGL/ES support) | |
| run: | | |
| cd vdr | |
| make include-dir vdr.pc | |
| make -C PLUGINS/src/softhddevice-drm-gles INCLUDES="-isystem `pwd`/include -Werror" GLES=0 | |
| continue-on-error: false | |
| - name: Upload build artifacts | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: vdr-softhddevice-drm-no-gles | |
| path: vdr/PLUGINS/src/softhddevice-drm-gles/libvdr-softhddevice-drm-gles.so | |
| if-no-files-found: error |