diff --git a/.github/workflows/run.yaml b/.github/workflows/run.yaml index 991edd8..1d9defe 100644 --- a/.github/workflows/run.yaml +++ b/.github/workflows/run.yaml @@ -3,6 +3,12 @@ on: push: branches: - main + pull_request: + paths-ignore: + - 'README.md' + - 'LICENSE' + - 'Dockerfile' + - '**/README.md' permissions: contents: write jobs: @@ -16,7 +22,7 @@ jobs: apk add clang build-base automake autoconf zlib-dev python3 zip curl unzip sudo - name: Cloning and Building lastest pspsdk - run: | + run: | git clone https://github.com/pspdev/pspsdk - name: Bootstrap sdk and build @@ -28,24 +34,26 @@ jobs: make install - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v4 with: submodules: recursive - name: Update psp-cfw-sdk run: curl -OJL "https://github.com/pspdev/psp-cfw-sdk/releases/download/latest/psp-cfw-sdk.zip" - + - name: Extract psp-cfw-sdk run: sudo unzip -o psp-cfw-sdk.zip -d / - name: Build - run: make clean && make + run: | + psp-cmake -S . -B build -DCMAKE_BUILD_TYPE=Release + cmake --build build -j - name: Compress run: | cd dist zip -r ../ARK-5.zip . - + - name: Upload uses: actions/upload-artifact@v4 with: @@ -54,6 +62,7 @@ jobs: release: needs: build runs-on: ubuntu-latest + if: github.event_name == 'push' && github.ref == 'refs/heads/main' steps: - name: Download artifacts uses: actions/download-artifact@v8 @@ -69,6 +78,3 @@ jobs: files: ARK-5.zip env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - diff --git a/CMakeLists.txt b/CMakeLists.txt index 012d01e..2b8ca33 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,5 +1,12 @@ cmake_minimum_required(VERSION 3.28) +if(NOT DEFINED ENV{PSPDEV}) +message(FATAL_ERROR "Please define PSPDEV to point to your PSPDEV path!") +endif() + +set(CMAKE_TOOLCHAIN_FILE "$ENV{PSPDEV}/psp/share/pspdev.cmake" CACHE PATH "toolchain file") +set(CMAKE_EXPORT_COMPILE_COMMANDS ON) + project(ark5 VERSION 1.0 LANGUAGES C ASM) set(PSPCFWSDK_PATH "" CACHE PATH "Path to local psp-cfw-sdk (for local development)") @@ -41,8 +48,8 @@ add_subdirectory(VSHControl) add_subdirectory(XMBControl) add_custom_target(dist ALL - DEPENDS - inferno + DEPENDS + inferno popcorn stargate systemctrl @@ -58,7 +65,7 @@ add_custom_target(dist ALL vitaplus_genbtcnf WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} - + COMMAND mkdir -p ${FLASH0_DIR} #Create compressed prx modules @@ -72,7 +79,7 @@ add_custom_target(dist ALL COMMAND python3 $ ${FLASH0_DIR}/ark_vitacompat.prx ${BUILDTOOLS}/gz/SystemControl.hdr "$" VitaCompat 0x3007 COMMAND python3 $ ${FLASH0_DIR}/ark_vitapops.prx ${BUILDTOOLS}/gz/SystemControl.hdr "$" VitaPopsCompat 0x3007 COMMAND python3 $ ${FLASH0_DIR}/ark_vitaplus.prx ${BUILDTOOLS}/gz/SystemControl.hdr "$" VitaPlusCompat 0x3007 - + #Copy PSP Compat btcnf files #COMMAND ${CMAKE_COMMAND} -E copy $/pstbtcnf_dt.bin ${FLASH0_DIR}/ #COMMAND ${CMAKE_COMMAND} -E copy $/pstbtcnf_tt.bin ${FLASH0_DIR}/ diff --git a/VSHControl/CMakeLists.txt b/VSHControl/CMakeLists.txt index 4b29141..d253209 100644 --- a/VSHControl/CMakeLists.txt +++ b/VSHControl/CMakeLists.txt @@ -1,6 +1,6 @@ add_prx_module(vshcontrol exports.exp) -target_sources(vshcontrol PRIVATE +target_sources(vshcontrol PRIVATE main.c imports.S src/custom_update.c @@ -32,4 +32,5 @@ target_link_libraries(vshcontrol PRIVATE pspsdk pspmodinfo pspkernel + pspnodrm_helper )