@ -22,22 +22,28 @@ jobs:
build:
build:
permissions:
permissions:
contents : write # for actions/upload-release-asset to upload release asset
contents : write # for actions/upload-release-asset to upload release asset
runs-on : ubuntu-latest
strategy:
strategy:
fail-fast : false
fail-fast : false
max-parallel : 1
max-parallel : 1
matrix:
matrix:
bits : [ 32 , 64 ]
include:
include:
- bits : 32
- bits : 32
ARCH : "i386"
ARCH : "i386"
ARCH_NAME : "i386"
ARCH_NAME : "i386"
COMPILER_PATH : "/user/bin"
COMPILER_PATH : "/user/bin"
runner : "ubuntu-latest"
- bits : 64
- bits : 64
ARCH : "x86_64"
ARCH : "x86_64"
ARCH_NAME : "amd64"
ARCH_NAME : "amd64"
COMPILER_PATH : "/user/bin"
COMPILER_PATH : "/user/bin"
runner : "ubuntu-latest"
- bits : 64
ARCH : "aarch64"
ARCH_NAME : "arm64"
COMPILER_PATH : "/user/bin"
runner : "ubuntu-24.04-arm"
runs-on : ${{ matrix.runner }}
env:
env:
RELEASE_NAME : raylib-dev_linux_${{ matrix.ARCH_NAME }}
RELEASE_NAME : raylib-dev_linux_${{ matrix.ARCH_NAME }}
@ -66,7 +72,7 @@ jobs:
# ${{ matrix.ARCH }}-linux-gnu-gcc -v
# ${{ matrix.ARCH }}-linux-gnu-gcc -v
# TODO: Support 32bit (i386) static/shared library building
# TODO: Support 32bit (i386) static/shared library building
- name : Build Library
- name : Build Library (32 -bit)
run : |
run : |
cd src
cd src
make PLATFORM=PLATFORM_DESKTOP CC=gcc RAYLIB_LIBTYPE=STATIC RAYLIB_RELEASE_PATH="../build/${{ env.RELEASE_NAME }}/lib" CUSTOM_CFLAGS="-m32" -B
make PLATFORM=PLATFORM_DESKTOP CC=gcc RAYLIB_LIBTYPE=STATIC RAYLIB_RELEASE_PATH="../build/${{ env.RELEASE_NAME }}/lib" CUSTOM_CFLAGS="-m32" -B
@ -74,13 +80,21 @@ jobs:
cd ..
cd ..
if : matrix.bits == 32
if : matrix.bits == 32
- name : Build Library
- name : Build Library (64 -bit x86)
run : |
cd src
make PLATFORM=PLATFORM_DESKTOP CC=gcc RAYLIB_LIBTYPE=STATIC RAYLIB_RELEASE_PATH="../build/${{ env.RELEASE_NAME }}/lib" -B
make PLATFORM=PLATFORM_DESKTOP CC=gcc RAYLIB_LIBTYPE=SHARED RAYLIB_RELEASE_PATH="../build/${{ env.RELEASE_NAME }}/lib" -B
cd ..
if : matrix.bits == 64 && matrix.ARCH == 'x86_64'
- name : Build Library (64 -bit ARM)
run : |
run : |
cd src
cd src
make PLATFORM=PLATFORM_DESKTOP CC=gcc RAYLIB_LIBTYPE=STATIC RAYLIB_RELEASE_PATH="../build/${{ env.RELEASE_NAME }}/lib" -B
make PLATFORM=PLATFORM_DESKTOP CC=gcc RAYLIB_LIBTYPE=STATIC RAYLIB_RELEASE_PATH="../build/${{ env.RELEASE_NAME }}/lib" -B
make PLATFORM=PLATFORM_DESKTOP CC=gcc RAYLIB_LIBTYPE=SHARED RAYLIB_RELEASE_PATH="../build/${{ env.RELEASE_NAME }}/lib" -B
make PLATFORM=PLATFORM_DESKTOP CC=gcc RAYLIB_LIBTYPE=SHARED RAYLIB_RELEASE_PATH="../build/${{ env.RELEASE_NAME }}/lib" -B
cd ..
cd ..
if : matrix.bits == 64
if : matrix.bits == 64 && matrix.ARCH == 'aarch64'
- name : Generate Artifacts
- name : Generate Artifacts
run : |
run : |