123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102 |
- name: 'Setup Nonka N-Gage SDK'
- description: 'Download and setup Nokia N-Gage SDK'
- inputs:
- path:
- description: 'Installation path'
- default: 'default'
- runs:
- using: 'composite'
- steps:
- - uses: actions/setup-python@v5
- with:
- python-version: '3.x'
- - name: 'Verify platform'
- id: calc
- shell: sh
- run: |
- case "${{ runner.os }}-${{ runner.arch }}" in
- "Windows-X86" | "Windows-X64")
- echo "ok!"
- echo "cache-key=ngage-sdk-windows" >> ${GITHUB_OUTPUT}
- default_install_path="C:/ngagesdk"
- ;;
- *)
- echo "Unsupported ${{ runner.os }}-${{ runner.arch }}"
- exit 1;
- ;;
- esac
- install_path="${{ inputs.path }}"
- if [ "x$install_path" = "xdefault" ]; then
- install_path="$default_install_path"
- fi
- echo "install-path=$install_path" >> ${GITHUB_OUTPUT}
- toolchain_repo="https://github.com/ngagesdk/ngage-toolchain"
- toolchain_branch="main"
- echo "toolchain-repo=${toolchain_repo}" >> ${GITHUB_OUTPUT}
- echo "toolchain-branch=${toolchain_branch}" >> ${GITHUB_OUTPUT}
- sdk_repo="https://github.com/ngagesdk/sdk"
- sdk_branch="main"
- echo "sdk-repo=${sdk_repo}" >> ${GITHUB_OUTPUT}
- echo "sdk-branch=${sdk_branch}" >> ${GITHUB_OUTPUT}
- tools_repo="https://github.com/ngagesdk/tools"
- tools_branch="main"
- echo "tools-repo=${tools_repo}" >> ${GITHUB_OUTPUT}
- echo "tools-branch=${tools_branch}" >> ${GITHUB_OUTPUT}
- extras_repo="https://github.com/ngagesdk/extras"
- extras_branch="main"
- echo "extras-repo=${extras_repo}" >> ${GITHUB_OUTPUT}
- echo "extras-branch=${extras_branch}" >> ${GITHUB_OUTPUT}
- # - name: 'Restore cached ${{ steps.calc.outputs.archive }}'
- # id: cache-restore
- # uses: actions/cache/restore@v4
- # with:
- # path: '${{ runner.temp }}'
- # key: ${{ steps.calc.outputs.cache-key }}
- - name: 'Download N-Gage SDK'
- # if: ${{ !steps.cache-restore.outputs.cache-hit || steps.cache-restore.outputs.cache-hit == 'false' }}
- shell: pwsh
- run: |
- Invoke-WebRequest "${{ steps.calc.outputs.toolchain-repo }}/archive/refs/heads/${{ steps.calc.outputs.toolchain-branch }}.zip" -OutFile "${{ runner.temp }}/ngage-toolchain.zip"
- Invoke-WebRequest "${{ steps.calc.outputs.sdk-repo }}/archive/refs/heads/${{ steps.calc.outputs.sdk-branch }}.zip" -OutFile "${{ runner.temp }}/sdk.zip"
- Invoke-WebRequest "${{ steps.calc.outputs.tools-repo }}/archive/refs/heads/${{ steps.calc.outputs.tools-branch }}.zip" -OutFile "${{ runner.temp }}/tools.zip"
- Invoke-WebRequest "${{ steps.calc.outputs.extras-repo }}/archive/refs/heads/${{ steps.calc.outputs.extras-branch }}.zip" -OutFile "${{ runner.temp }}/extras.zip"
- # - name: 'Cache ${{ steps.calc.outputs.archive }}'
- # if: ${{ !steps.cache-restore.outputs.cache-hit || steps.cache-restore.outputs.cache-hit == 'false' }}
- # uses: actions/cache/save@v4
- # with:
- # path: |
- # ${{ runner.temp }}/apps.zip
- # ${{ runner.temp }}/sdk.zip
- # ${{ runner.temp }}/tools.zip
- # key: ${{ steps.calc.outputs.cache-key }}
- - name: 'Extract N-Gage SDK'
- shell: pwsh
- run: |
- New-Item -ItemType Directory -Path "${{ steps.calc.outputs.install-path }}" -Force
- New-Item -ItemType Directory -Path "${{ runner.temp }}/ngage-toolchain-temp" -Force
- 7z "-o${{ runner.temp }}/ngage-toolchain-temp" x "${{ runner.temp }}/ngage-toolchain.zip"
- Move-Item -Path "${{ runner.temp }}/ngage-toolchain-temp/ngage-toolchain-${{ steps.calc.outputs.toolchain-branch }}/*" -Destination "${{ steps.calc.outputs.install-path }}"
- 7z "-o${{ steps.calc.outputs.install-path }}/sdk" x "${{ runner.temp }}/sdk.zip"
- Move-Item -Path "${{ steps.calc.outputs.install-path }}/sdk/sdk-${{ steps.calc.outputs.sdk-branch }}" -Destination "${{ steps.calc.outputs.install-path }}/sdk/sdk"
- 7z "-o${{ steps.calc.outputs.install-path }}/sdk" x "${{ runner.temp }}/tools.zip"
- Move-Item -Path "${{ steps.calc.outputs.install-path }}/sdk/tools-${{ steps.calc.outputs.tools-branch }}" -Destination "${{ steps.calc.outputs.install-path }}/sdk/tools"
- 7z "-o${{ steps.calc.outputs.install-path }}/sdk" x "${{ runner.temp }}/extras.zip"
- Move-Item -Path "${{ steps.calc.outputs.install-path }}/sdk/extras-${{ steps.calc.outputs.extras-branch }}" -Destination "${{ steps.calc.outputs.install-path }}/sdk/extras"
- - name: 'Set output variables'
- id: final
- shell: sh
- run: |
- echo "${{ steps.calc.outputs.install-path }}/sdk/sdk/6.1/Shared/EPOC32/gcc/bin" >> $GITHUB_PATH
- echo "${{ steps.calc.outputs.install-path }}/sdk/sdk/6.1/Shared/EPOC32/ngagesdk/bin" >> $GITHUB_PATH
- echo "NGAGESDK=${{ steps.calc.outputs.install-path }}" >> $GITHUB_ENV
- echo "CMAKE_TOOLCHAIN_FILE=${{ steps.calc.outputs.install-path }}/cmake/ngage-toolchain.cmake" >> $GITHUB_ENV
|