Skip to content

Updated raylib to version 6.0.#155

Open
gyrovorbis wants to merge 2 commits into
masterfrom
falco/raylib_6.0
Open

Updated raylib to version 6.0.#155
gyrovorbis wants to merge 2 commits into
masterfrom
falco/raylib_6.0

Conversation

@gyrovorbis

Copy link
Copy Markdown
Member
  1. Renamed whole port from "raylib4DC," which isn't even the name of the
    framework, and is no longer the name of the upstream repo, to
    "raylib," as it should've always been.
  2. Set git branch to the 6.0 branch, now featuring miniaudio support. 3) Deleted patches for the previous verson, which are no longer
    applicable, as things have changed, and there's no longer an ICE with
    -ffast-math.

1) Renamed whole port from "raylib4DC," which isn't even the name of the
   framework, and is no longer the name of the upstream repo, to
   "raylib," as it should've always been.
2) Set git branch to the 6.0 branch, now featuring miniaudio support.
3) Deleted patches for the previous verson, which are no longer
   applicable, as things have changed, and there's no longer an ICE with
   -ffast-math.
@gyrovorbis gyrovorbis added the Update Repo Update repo location or version label May 31, 2026
@QuzarDC

QuzarDC commented May 31, 2026

Copy link
Copy Markdown
Member

Regarding point 2, I get an ice with stable toolchain:

In file included from rmodels.c:55:
/opt/toolchains/dc-stable/sh-elf/sh-elf/include/string.h:36:10: note: in a call to function ‘strcmp’ declared ‘nonnull’
   36 | int      strcmp (const char *, const char *);
      |          ^~~~~~
during RTL pass: reload
rmodels.c: In function ‘DrawBillboardPro’:
rmodels.c:4136:1: internal compiler error: in gen_reg_rtx, at emit-rtl.cc:1177
 4136 | }
      | ^
0x71ac06869ca7 __libc_start_call_main
        ../sysdeps/nptl/libc_start_call_main.h:58
0x71ac06869d64 __libc_start_main_impl
        ../csu/libc-start.c:360
Please submit a full bug report, with preprocessed source (by using -freport-bug).
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.
make[1]: *** [Makefile:1078: rmodels.o] Error 1
make[1]: Leaving directory '/home/quzar/dcdev/kos-ports/raylib/build/raylib-6.0/src'
make: *** [/home/quzar/dcdev/kos-ports/scripts/build.mk:34: build-stamp] Error 2
quzar@Centurion-IV:~/dcdev/kos-ports/raylib$ echo $KOS_CFLAGS
-O2 -Wall -freorder-blocks-algorithm=simple -fno-PIC -fno-PIE -fomit-frame-pointer -ffast-math -ffp-contract=fast -m4-single-only -ml -mfsrra -mfsca -ffunction-sections -fdata-sections -matomic-model=soft-gusa -ftls-model=local-exec -D__DREAMCAST__ -I/home/quzar/dcdev/KallistiOS/include -I/home/quzar/dcdev/KallistiOS/kernel/arch/dreamcast/include -I/home/quzar/dcdev/KallistiOS/addons/include/ -I/home/quzar/dcdev/kos-ports/include -D_arch_dreamcast -D_arch_sub_pristine -Wall -g
quzar@Centurion-IV:~/dcdev/kos-ports/raylib$ kos-cc -v
Using built-in specs.
COLLECT_GCC=/opt/toolchains/dc-stable/sh-elf/bin/sh-elf-gcc
COLLECT_LTO_WRAPPER=/opt/toolchains/dc-stable/sh-elf/bin/../libexec/gcc/sh-elf/15.2.0/lto-wrapper
Target: sh-elf
Configured with: ../gcc-15.2.0/configure --target=sh-elf --prefix=/opt/toolchains/dc/sh-elf --with-gnu-as --with-gnu-ld --with-newlib --disable-libssp --enable-threads=kos --enable-languages=c,c++,objc,obj-c++ --enable-checking=release --with-multilib-list=m4-single,m4-single-only --with-endian=little --with-cpu=m4-single MAKEINFO=missing CC=cc CXX=g++ CFLAGS=' -std=gnu17'
Thread model: kos
Supported LTO compression algorithms: zlib zstd
gcc version 15.2.0 (GCC)
quzar@Centurion-IV:~/dcdev/kos-ports/raylib$

@gyrovorbis

Copy link
Copy Markdown
Member Author

Thank you. I'm on it.

Because it's automatically including and trying to build miniaudio,
which has an ICE with -m4-single-only. Since that flag is already
sktetchy and prone to precision issues, I would much rather disable
these ports for them than try to make some fragile/sketchy, intrusive
patch to appease the register allocator, at the potential cost of
-m4-single users.

-m4-single is also the default ABI, so... should befine. :)
@gyrovorbis

Copy link
Copy Markdown
Member Author

Addressed in latest commit. Should be good-to-go.

@QuzarDC

QuzarDC commented Jun 2, 2026

Copy link
Copy Markdown
Member

Addressed in latest commit. Should be good-to-go.

Whoops, wonder when I turned back to single. Probably for some random testing. But it didn't solve it for me :/ Rebuilt KOS and libgl in case it was from a mismatch with one.

/opt/toolchains/dc-stable/sh-elf/bin/sh-elf-gcc -c rmodels.c  -O2 -Wall -freorder-blocks-algorithm=simple -fno-PIC -fno-PIE -fomit-frame-pointer -ffast-math -ffp-contract=fast -m4-single -ml -mfsrra -mfsca -ffunction-sections -fdata-sections -matomic-model=soft-gusa -ftls-model=local-exec -D__DREAMCAST__  -isystem /home/quzar/dcdev/KallistiOS/include -isystem /home/quzar/dcdev/KallistiOS/kernel/arch/dreamcast/include -isystem /home/quzar/dcdev/KallistiOS/addons/include/ -isystem /home/quzar/dcdev/kos-ports/include -D_arch_dreamcast -D_arch_sub_pristine -Wall -g -Wno-error=incompatible-pointer-types -DPLATFORM_DREAMCAST -DGRAPHICS_API_OPENGL_11   -isystem /home/quzar/dcdev/KallistiOS/include -isystem /home/quzar/dcdev/KallistiOS/kernel/arch/dreamcast/include -isystem /home/quzar/dcdev/KallistiOS/addons/include/ -isystem /home/quzar/dcdev/kos-ports/include

<snip all the warnings about external/m3d.h>

In file included from rmodels.c:55:
/opt/toolchains/dc-stable/sh-elf/sh-elf/include/string.h:36:10: note: in a call to function ‘strcmp’ declared ‘nonnull’
   36 | int      strcmp (const char *, const char *);
      |          ^~~~~~
during RTL pass: reload
rmodels.c: In function ‘DrawBillboardPro’:
rmodels.c:4136:1: internal compiler error: in gen_reg_rtx, at emit-rtl.cc:1177
 4136 | }
      | ^
0x778be6286ca7 __libc_start_call_main
        ../sysdeps/nptl/libc_start_call_main.h:58
0x778be6286d64 __libc_start_main_impl
        ../csu/libc-start.c:360
Please submit a full bug report, with preprocessed source (by using -freport-bug).
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.
make[1]: *** [Makefile:1078: rmodels.o] Error 1
make[1]: Leaving directory '/home/quzar/dcdev/kos-ports/raylib/build/raylib-6.0/src'
make: *** [/home/quzar/dcdev/kos-ports/scripts/build.mk:34: build-stamp] Error 2
quzar@Centurion-IV:~/dcdev/kos-ports/raylib$ echo $KOS_CFLAGS
-O2 -Wall -freorder-blocks-algorithm=simple -fno-PIC -fno-PIE -fomit-frame-pointer -ffast-math -ffp-contract=fast -m4-single -ml -mfsrra -mfsca -ffunction-sections -fdata-sections -matomic-model=soft-gusa -ftls-model=local-exec -D__DREAMCAST__ -isystem /home/quzar/dcdev/KallistiOS/include -isystem /home/quzar/dcdev/KallistiOS/kernel/arch/dreamcast/include -isystem /home/quzar/dcdev/KallistiOS/addons/include/ -isystem /home/quzar/dcdev/kos-ports/include -D_arch_dreamcast -D_arch_sub_pristine -Wall -g
quzar@Centurion-IV:~/dcdev/kos-ports/raylib$ kos-cc -v
Using built-in specs.
COLLECT_GCC=/opt/toolchains/dc-stable/sh-elf/bin/sh-elf-gcc
COLLECT_LTO_WRAPPER=/opt/toolchains/dc-stable/sh-elf/bin/../libexec/gcc/sh-elf/15.2.0/lto-wrapper
Target: sh-elf
Configured with: ../gcc-15.2.0/configure --target=sh-elf --prefix=/opt/toolchains/dc/sh-elf --with-gnu-as --with-gnu-ld --with-newlib --disable-libssp --enable-threads=kos --enable-languages=c,c++,objc,obj-c++ --enable-checking=release --with-multilib-list=m4-single,m4-single-only --with-endian=little --with-cpu=m4-single MAKEINFO=missing CC=cc CXX=g++ CFLAGS=' -std=gnu17'
Thread model: kos
Supported LTO compression algorithms: zlib zstd
gcc version 15.2.0 (GCC)
quzar@Centurion-IV:~/dcdev/kos-ports/raylib$

@GPF

GPF commented Jun 2, 2026

Copy link
Copy Markdown
Contributor

gpf@GPF:/opt/toolchains/dc/kos-ports/raylib$ env | grep KOS | grep ffast
KOS_CFLAGS= -O4 -flto=auto -ffat-lto-objects -fno-PIC -fno-PIE -fomit-frame-pointer -fbuiltin -ffast-math -ffp-contract=fast -m4-single -ml -mfsrra -mfsca -ffunction-sections -fdata-sections -matomic-model=soft-gusa -ftls-model=local-exec -D__DREAMCAST__ -isystem /opt/toolchains/dc/kos/include -isystem /opt/toolchains/dc/kos/kernel/arch/dreamcast/include -isystem /opt/toolchains/dc/kos/addons/include/ -isystem /opt/toolchains/dc/kos/../kos-ports/include -D_arch_dreamcast -D_arch_sub_pristine -Wall -g
KOS_LDFLAGS= -O4 -flto=auto -ffat-lto-objects -fno-PIC -fno-PIE -fomit-frame-pointer -fbuiltin -ffast-math -ffp-contract=fast -m4-single -ml -mfsrra -mfsca -ffunction-sections -fdata-sections -matomic-model=soft-gusa -ftls-model=local-exec -D__DREAMCAST__ -isystem /opt/toolchains/dc/kos/include -isystem /opt/toolchains/dc/kos/kernel/arch/dreamcast/include -isystem /opt/toolchains/dc/kos/addons/include/ -isystem /opt/toolchains/dc/kos/../kos-ports/include -D_arch_dreamcast -D_arch_sub_pristine -Wall -g -m4-single -ml -Wl,--gc-sections -T/opt/toolchains/dc/kos/utils/ldscripts/shlelf.xc -nostdlib -L/opt/toolchains/dc/kos/lib/dreamcast -L/opt/toolchains/dc/kos/addons/lib/dreamcast -L/opt/toolchains/dc/kos/../kos-ports/lib

on kos master and sh-elf-gcc-15.2.1

built fine for me.
/opt/toolchains/dc/sh-elf/bin/sh-elf-gcc -c raudio.c -O4 -flto=auto -ffat-lto-objects -fno-PIC -fno-PIE -fomit-frame-pointer -fbuiltin -ffast-math -ffp-contract=fast -m4-single -ml -mfsrra -mfsca -ffunction-sections -fdata-sections -matomic-model=soft-gusa -ftls-model=local-exec -D__DREAMCAST__ -isystem /opt/toolchains/dc/kos/include -isystem /opt/toolchains/dc/kos/kernel/arch/dreamcast/include -isystem /opt/toolchains/dc/kos/addons/include/ -isystem /opt/toolchains/dc/kos/../kos-ports/include -D_arch_dreamcast -D_arch_sub_pristine -Wall -g -Wno-error=incompatible-pointer-types -DPLATFORM_DREAMCAST -DGRAPHICS_API_OPENGL_11 -isystem /opt/toolchains/dc/kos/include -isystem /opt/toolchains/dc/kos/kernel/arch/dreamcast/include -isystem /opt/toolchains/dc/kos/addons/include/ -isystem /opt/toolchains/dc/kos/../kos-ports/include
/opt/toolchains/dc/sh-elf/bin/sh-elf-gcc-ar rcs ../src/libraylib.a rcore.o rshapes.o rtextures.o rtext.o rmodels.o raudio.o
raylib static library generated (libraylib.a) in ../src!
make[1]: Leaving directory '/opt/toolchains/dc/kos-ports/raylib/build/raylib-6.0/src'
touch build-stamp
Installing...
Marking raylib 6.0 as installed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Update Repo Update repo location or version

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants