diff --git a/.github/workflows/build_netbsd.yml b/.github/workflows/build_netbsd.yml new file mode 100644 index 000000000..72fd9cf8e --- /dev/null +++ b/.github/workflows/build_netbsd.yml @@ -0,0 +1,49 @@ +name: Build latest (NetBSD) +on: [push] + +concurrency: + group: ${{ github.ref }}-netbsd + cancel-in-progress: true + +jobs: + build: + if: github.ref_name == github.event.repository.default_branch + runs-on: ubuntu-latest + container: + image: ghcr.io/cross-rs/x86_64-unknown-netbsd + steps: + - uses: actions/checkout@v3 + - name: Install prerequisites + run: apt install wget unzip + - name: Retrieve OpenGL and X11 dev files (64 bit) + run: | + mkdir src/netbsd64 + cd src/netbsd64 + wget https://github.com/ClassiCube/rpi-compiling-stuff/raw/main/netbsd64.zip + unzip netbsd64.zip + - name: Compile NetBSD builds + id: compile + shell: bash + env: + COMMON_FLAGS: "-O1 -s -fno-stack-protector -fno-math-errno -Qn" + PLAT64_FLAGS: "-fno-pie -fvisibility=hidden -fcf-protection=none -rdynamic -DCC_BUILD_ICON -I netbsd64/include -L netbsd64/lib -Wl,--unresolved-symbols=ignore-in-shared-libs" + run: | + LATEST_FLAG=-DCC_COMMIT_SHA=\"${GITHUB_SHA::9}\" + echo $LATEST_FLAG + + cd src + x86_64-unknown-netbsd-gcc *.c ${{ env.COMMON_FLAGS }} ${{ env.PLAT64_FLAGS }} $LATEST_FLAG -o cc-netbsd64-gl1 -lm -lpthread -lX11 -lXi -lGL -lexecinfo + + + - uses: ./.github/actions/notify_failure + if: ${{ always() && steps.compile.outcome == 'failure' }} + with: + NOTIFY_MESSAGE: 'Failed to compile NetBSD build(s)' + WEBHOOK_URL: '${{ secrets.WEBHOOK_URL }}' + + + - uses: ./.github/actions/upload_build + if: ${{ always() && steps.compile.outcome == 'success' }} + with: + SOURCE_FILE: 'src/cc-netbsd64-gl1' + DEST_NAME: 'ClassiCube-NetBSD-64' \ No newline at end of file diff --git a/.github/workflows/build_vita.yml b/.github/workflows/build_vita.yml index 261e2c021..10d5a54f2 100644 --- a/.github/workflows/build_vita.yml +++ b/.github/workflows/build_vita.yml @@ -12,7 +12,7 @@ jobs: container: image: gnuton/vitasdk-docker:latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v3 - name: Compile Vita build id: compile run: | diff --git a/readme.md b/readme.md index 1f0f6b51a..761f94f30 100644 --- a/readme.md +++ b/readme.md @@ -64,8 +64,8 @@ ClassiCube runs on: And also runs on: * Raspberry Pi - needs libcurl and libopenal -* FreeBSD - needs libexecinfo, curl and openal-soft packages -* NetBSD - needs libexecinfo, curl and openal-soft packages +* FreeBSD - needs libexecinfo, curl and openal-soft packages (if you have a GitHub account, can [download from here](https://github.com/UnknownShadow200/ClassiCube/actions/workflows/build_freebsd.yml)) +* NetBSD - needs libexecinfo, curl and openal-soft packages (if you have a GitHub account, can [download from here](https://github.com/UnknownShadow200/ClassiCube/actions/workflows/build_netbsd.yml)) * OpenBSD - needs libexecinfo, curl and openal packages * Solaris - needs curl and openal packages * Haiku - needs openal package (if you have a GitHub account, can [download from here](https://github.com/UnknownShadow200/ClassiCube/actions/workflows/build_haiku.yml)) @@ -80,8 +80,8 @@ And also runs on: * PS Vita - unfinished, rendering issues (can [download from here](https://www.classicube.net/download/vita)) * Xbox - unfinished, major rendering issues (can [download from here](https://www.classicube.net/download/xbox), **untested on real hardware**) * PS3 - unfinished, rendering issues (can [download from here](https://www.classicube.net/download/ps3), **usually outdated**) -* Nintendo 64 - unfinished, moderate rendering issues -* PS2 - unfinished, major rendering and stability issues +* Nintendo 64 - unfinished, moderate rendering issues (if you have a GitHub account, can [download from here](https://github.com/UnknownShadow200/ClassiCube/actions/workflows/build_n64.yml)) +* PS2 - unfinished, major rendering and **stability issues** (if you have a GitHub account, can [download from here](https://github.com/UnknownShadow200/ClassiCube/actions/workflows/build_ps2.yml)) # Compiling