diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index a23eaecf..eae3d223 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -10,8 +10,9 @@ jobs: build: runs-on: ${{ matrix.os }} strategy: + fail-fast: false matrix: - os: [ubuntu-latest] + os: [macos-15-intel, ubuntu-latest] steps: - uses: actions/checkout@v6 @@ -21,8 +22,31 @@ jobs: run: | sudo apt-get update sudo apt-get -y install autoconf automake bison flex gcc libelf-dev make texinfo libncurses5-dev patch python3 python-is-python3 subversion wget zlib1g-dev libtool-bin python3-dev bzip2 libgmp3-dev pkg-config + + - name: Install macOS requirements + if: matrix.os == 'macos-15-intel' + shell: arch -x86_64 bash -e {0} + env: + HOMEBREW_NO_AUTO_UPDATE: 1 + HOMEBREW_NO_INSTALL_CLEANUP: 1 + HOMEBREW_NO_ENV_HINTS: 1 + run: | + brew install autoconf automake openssl libelf ncurses zlib gmp wget pkg-config texinfo + + - name: Runs all the stages in the shell + if: matrix.os == 'ubuntu-latest' + run: | + mkdir $PWD/ps3dev + export PS3DEV=$PWD/ps3dev + export PSL1GHT=$PS3DEV + export PATH=$PATH:$PS3DEV/bin + export PATH=$PATH:$PS3DEV/ppu/bin + export PATH=$PATH:$PS3DEV/spu/bin + ./toolchain.sh - name: Runs all the stages in the shell + if: matrix.os == 'macos-15-intel' + shell: arch -x86_64 bash -e {0} run: | mkdir $PWD/ps3dev export PS3DEV=$PWD/ps3dev @@ -34,7 +58,7 @@ jobs: - name: Get short SHA id: slug - run: echo "::set-output name=sha8::$(echo ${GITHUB_SHA} | cut -c1-8)" + run: echo "sha8=$(echo ${GITHUB_SHA} | cut -c1-8)" >> "$GITHUB_OUTPUT" - name: Compress ps3dev folder run: | @@ -43,4 +67,4 @@ jobs: - uses: actions/upload-artifact@v6 with: name: ps3dev-${{ steps.slug.outputs.sha8 }}-${{matrix.os}} - path: ps3dev.tar.gz + path: ps3dev.tar.gz \ No newline at end of file diff --git a/patches/gcc-7.2.0-PS3.patch b/patches/gcc-7.2.0-PS3.patch index 28be0020..37915c36 100644 --- a/patches/gcc-7.2.0-PS3.patch +++ b/patches/gcc-7.2.0-PS3.patch @@ -725,3 +725,15 @@ index bedcf1017..8d6c8feff 100644 powerpc*-*-linux*) tmake_file="${tmake_file} rs6000/t-ppccomm rs6000/t-savresfgpr rs6000/t-crtstuff rs6000/t-linux t-dfprules rs6000/t-ppc64-fp t-slibgcc-libgcc" tmake_file="${tmake_file} t-stack rs6000/t-stack-rs6000" +diff --git a/zlib/zutil.h b/zlib/zutil.h +--- a/zlib/zutil.h ++++ b/zlib/zutil.h +@@ -130,7 +130,7 @@ + # endif + #endif + +-#if defined(MACOS) || defined(TARGET_OS_MAC) ++#if defined(MACOS) || (defined(TARGET_OS_MAC) && !defined(__APPLE__)) + # define OS_CODE 7 + # ifndef Z_SOLO + # if defined(__MWERKS__) && __dest_os != __be_os && __dest_os != __win32_os