diff --git a/.gitea/workflows/build.yaml b/.gitea/workflows/build.yaml new file mode 100644 index 0000000..6720b1b --- /dev/null +++ b/.gitea/workflows/build.yaml @@ -0,0 +1,38 @@ +name: Build Project + +on: + push: + branches: [ "main" ] + pull_request: + branches: [ "main" ] + +jobs: + build: + runs-on: ubuntu-latest + # We explicitly use a container that has build tools, or we install them. + # If your Gitea runner uses a minimal image, we make sure to update and install gcc/make. + + steps: + # 1. Check out the repository code + - name: Checkout code + uses: actions/checkout@v4 + + # 2. Install compiler, X11, and Raylib dependencies + - name: Install Dependencies + run: | + # Gitea runners sometimes run as root inside the container, so 'sudo' might not be needed or installed. + # This check safely uses sudo only if it is available. + if command -v sudo >/dev/null 2>&1; then SUDO="sudo"; else SUDO=""; fi + $SUDO apt-get update + $SUDO apt-get install -y build-essential gcc make libraylib-dev libx11-dev libxrandr-dev libxinerama-dev libxcursor-dev libxi-dev + + # 3. Compile the project using your Makefile + - name: Compile with Makefile + run: make + + # 4. Upload the compiled binary as a build artifact in Gitea + - name: Upload Build Artifact + uses: actions/upload-artifact@v4 + with: + name: wrldbox-binary + path: wrldbox \ No newline at end of file