From 8222bfe56d4dabe8d92fc4b25ea1b0163b16f3e1 Mon Sep 17 00:00:00 2001 From: 3gg <3gg@shellblade.net> Date: Sat, 4 May 2024 16:51:29 -0700 Subject: Initial commit. --- src/contrib/SDL-2.30.2/.github/workflows/vita.yaml | 95 ++++++++++++++++++++++ 1 file changed, 95 insertions(+) create mode 100644 src/contrib/SDL-2.30.2/.github/workflows/vita.yaml (limited to 'src/contrib/SDL-2.30.2/.github/workflows/vita.yaml') diff --git a/src/contrib/SDL-2.30.2/.github/workflows/vita.yaml b/src/contrib/SDL-2.30.2/.github/workflows/vita.yaml new file mode 100644 index 0000000..8089408 --- /dev/null +++ b/src/contrib/SDL-2.30.2/.github/workflows/vita.yaml @@ -0,0 +1,95 @@ +name: Build (Sony Playstation Vita) + +on: [push, pull_request] + +defaults: + run: + shell: sh + +jobs: + vita: + name: ${{ matrix.platform.name }} + runs-on: ubuntu-latest + container: + image: vitasdk/vitasdk:latest + strategy: + fail-fast: false + matrix: + platform: + - { name: GLES (pib), os: windows-latest, pib: true } + - { name: GLES (PVR_PSP2 + gl4es4vita), os: windows-latest, pvr: true } + steps: + - uses: actions/checkout@v4 + - name: Install build requirements + run: | + apk update + apk add cmake ninja pkgconf bash + + - name: Configure PVR_PSP2 (GLES) + if: ${{ !!matrix.platform.pvr }} + run: | + pvr_psp2_version=3.9 + + # Configure PVR_PSP2 headers + wget https://github.com/GrapheneCt/PVR_PSP2/archive/refs/tags/v$pvr_psp2_version.zip -P/tmp + unzip /tmp/v$pvr_psp2_version.zip -d/tmp + cp -r /tmp/PVR_PSP2-$pvr_psp2_version/include/* ${VITASDK}/arm-vita-eabi/include + rm /tmp/v$pvr_psp2_version.zip + + # Configure PVR_PSP2 stub libraries + wget https://github.com/GrapheneCt/PVR_PSP2/releases/download/v$pvr_psp2_version/vitasdk_stubs.zip -P/tmp + unzip /tmp/vitasdk_stubs.zip -d/tmp/pvr_psp2_stubs + find /tmp/pvr_psp2_stubs -type f -name "*.a" -exec cp {} ${VITASDK}/arm-vita-eabi/lib \; + rm /tmp/vitasdk_stubs.zip + rm -rf /tmp/pvr_psp2_stubs + + - name: Configure gl4es4vita (OpenGL) + if: ${{ !!matrix.platform.pvr }} + run: | + gl4es4vita_version=1.1.4 + + # Configure gl4es4vita headers + wget https://github.com/SonicMastr/gl4es4vita/releases/download/v$gl4es4vita_version-vita/include.zip -P/tmp + unzip -o /tmp/include.zip -d${VITASDK}/arm-vita-eabi/include + rm /tmp/include.zip + + # Configure gl4es4vita stub libraries + wget https://github.com/SonicMastr/gl4es4vita/releases/download/v$gl4es4vita_version-vita/vitasdk_stubs.zip -P/tmp + unzip /tmp/vitasdk_stubs.zip -d${VITASDK}/arm-vita-eabi/lib + + - name: Configure CMake + run: | + cmake -S . -B build -G Ninja \ + -DCMAKE_TOOLCHAIN_FILE=${VITASDK}/share/vita.toolchain.cmake \ + -DVIDEO_VITA_PIB=${{ !!matrix.platform.pib }} \ + -DVIDEO_VITA_PVR=${{ !!matrix.platform.pvr }} \ + -DSDL_WERROR=ON \ + -DSDL_TESTS=ON \ + -DSDL_INSTALL_TESTS=ON \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=prefix + - name: Build + run: cmake --build build --verbose + - name: Install CMake + run: | + echo "SDL2_DIR=$(pwd)/prefix" >> $GITHUB_ENV + cmake --install build/ + ( cd prefix; find ) | LC_ALL=C sort -u + - name: Verify CMake configuration files + run: | + cmake -S cmake/test -B cmake_config_build -G Ninja \ + -DCMAKE_TOOLCHAIN_FILE=${VITASDK}/share/vita.toolchain.cmake \ + -DTEST_SHARED=FALSE \ + -DCMAKE_PREFIX_PATH=${{ env.SDL2_DIR }} \ + -DCMAKE_BUILD_TYPE=Release + cmake --build cmake_config_build --verbose + - name: Verify sdl2-config + run: | + export CC=arm-vita-eabi-gcc + export PATH=${{ env.SDL2_DIR }}/bin:$PATH + cmake/test/test_sdlconfig.sh + - name: Verify sdl2.pc + run: | + export CC=arm-vita-eabi-gcc + export PKG_CONFIG_PATH=${{ env.SDL2_DIR }}/lib/pkgconfig + cmake/test/test_pkgconfig.sh -- cgit v1.2.3