Skip to content

Commit e8500cf

Browse files
author
Chris Warren-Smith
committed
RAYLIB: build with SDL3 platform backend
1 parent 9c25099 commit e8500cf

File tree

3 files changed

+20
-17
lines changed

3 files changed

+20
-17
lines changed

configure.ac

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,13 @@ AC_ARG_WITH(ioio,
4848
[IOIO="yes"],
4949
[IOIO="no"])
5050

51+
dnl configure SDL3 for raylib
52+
PKG_CHECK_MODULES([SDL3], [sdl3])
53+
AC_MSG_CHECKING([for SDL3 library linking])
54+
SDL3_LIBS=`pkg-config sdl3 --libs --static`
55+
SDL3_CFLAGS=`pkg-config sdl3 --cflags`
56+
SDL3_INCLUDE=-I`pkg-config --variable=includedir sdl3`/SDL3
57+
5158
case "${host_os}" in
5259
*mingw* | *msys*)
5360
AC_DEFINE(_WIN32, 1, [building for win32])
@@ -70,7 +77,8 @@ case "${host_os}" in
7077
WEBSOCKET_LDFLAGS=""
7178
GTK_SERVER_LDFLAGS="`pkg-config --libs gtk+-3.0` -lXm -lXt"
7279
GTK_SERVER_CPPFLAGS="`pkg-config --cflags gtk+-3.0` -DGTK_SERVER_FFI -DGTK_SERVER_LIBRARY -DGTK_SERVER_UNIX -DGTK_SERVER_GTK3x"
73-
RAYLIB_LDFLAGS="-lGL -lm -lpthread -ldl -lrt -lX11 -lwayland-client -lwayland-cursor -lwayland-egl -lxkbcommon"
80+
RAYLIB_CPPFLAGS="${SDL3_INCLUDE} ${SDL3_CFLAGS}"
81+
RAYLIB_LDFLAGS="${SDL3_LIBS}"
7482
JVM_CPPFLAGS="-I/usr/lib/jvm/java-1.8.0-openjdk-amd64/include -I/usr/lib/jvm/java-1.8.0-openjdk-amd64/include/linux"
7583
JVM_LDFLAGS="-L/usr/lib/jvm/java-1.8.0-openjdk-amd64/jre/lib/amd64/server -ljvm"
7684
NUKLEAR_CPPFLAGS="-D_GLFW_X11=1"
@@ -79,6 +87,7 @@ esac
7987
AC_SUBST(DEBUG_LDFLAGS)
8088
AC_SUBST(CLIPBOARD_LDFLAGS)
8189
AC_SUBST(RAYLIB_LDFLAGS)
90+
AC_SUBST(RAYLIB_CPPFLAGS)
8291
AC_SUBST(NUKLEAR_LDFLAGS)
8392
AC_SUBST(WEBSOCKET_LDFLAGS)
8493
AC_SUBST(PLATFORM_LDFLAGS)

raylib/Makefile.am

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,16 +24,14 @@ $(generated): raylib/parser/raylib_api.json mkraylib.bas
2424
gen: $(generated) README.md
2525

2626
AM_CXXFLAGS=-fno-rtti -std=c++14 -fpermissive
27-
AM_CPPFLAGS = -Iraylib/src -Iraylib/src/external/glfw/include -Iraylib/src/external/glfw/deps/mingw \
28-
-Iraylib/src/external/glfw/src \
29-
-DPLATFORM_DESKTOP=1 -DSUPPORT_BUSY_WAIT_LOOP=1 -DSUPPORT_SCREEN_CAPTURE=1 \
30-
-DSUPPORT_GIF_RECORDING=1 -DSUPPORT_COMPRESSION_API=1 -D_GLFW_WAYLAND=1 \
27+
AM_CPPFLAGS = -Iraylib/src @RAYLIB_CPPFLAGS@ \
28+
-DPLATFORM_DESKTOP_SDL=1 -DPLATFORM_DESKTOP_SDL3=1 -DSUPPORT_BUSY_WAIT_LOOP=1 -DSUPPORT_SCREEN_CAPTURE=1 \
29+
-DSUPPORT_GIF_RECORDING=1 -DSUPPORT_COMPRESSION_API=1 \
3130
-Wall -Wextra -Wshadow -Wdouble-promotion -Wno-unused-parameter -fPIC
3231

3332
lib_LTLIBRARIES = libraylib.la
3433

3534
libraylib_la_SOURCES = \
36-
raylib/src/rglfw.c \
3735
raylib/src/rmodels.c \
3836
raylib/src/raudio.c \
3937
raylib/src/rcore.c \

raylib/main.cpp

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,10 @@
2424
#pragma GCC diagnostic pop
2525
#pragma GCC diagnostic pop
2626
#include <physac/src/physac.h>
27-
#include <GLFW/glfw3.h>
2827
#include <cstring>
2928

3029
#include "robin-hood-hashing/src/include/robin_hood.h"
30+
#include "SDL_events.h"
3131
#include "include/var.h"
3232
#include "include/module.h"
3333
#include "include/param.h"
@@ -1377,18 +1377,15 @@ static int cmd_guiunlock(int argc, slib_par_t *params, var_t *retval) {
13771377
return 1;
13781378
}
13791379

1380-
static int cmd_poll_events(int argc, slib_par_t *params, var_t *retval) {
1381-
glfwPollEvents();
1382-
return 1;
1383-
}
1384-
13851380
static int cmd_wait_events(int argc, slib_par_t *params, var_t *retval) {
1386-
float waitMillis = get_param_int(argc, params, 0, -1);
1387-
if (waitMillis > 0) {
1388-
glfwWaitEventsTimeout(waitMillis / 1000);
1381+
auto timeoutMS = get_param_int(argc, params, 0, -1);
1382+
SDL_Event event;
1383+
if (timeoutMS > 0) {
1384+
SDL_WaitEventTimeout(&event, timeoutMS);
13891385
} else {
1390-
glfwWaitEvents();
1386+
SDL_WaitEvent(&event);
13911387
}
1388+
SDL_PushEvent(&event);
13921389
return 1;
13931390
}
13941391

@@ -1835,7 +1832,6 @@ static FUNC_SIG lib_proc[] = {
18351832
{3, 3, "GUISETSTYLE", cmd_guisetstyle},
18361833
{2, 2, "GUISTATUSBAR", cmd_guistatusbar},
18371834
{0, 0, "GUIUNLOCK", cmd_guiunlock},
1838-
{0, 0, "POLLEVENTS", cmd_poll_events},
18391835
{0, 1, "WAITEVENTS", cmd_wait_events},
18401836
{0, 0, "CLOSEPHYSICS", cmd_closephysics},
18411837
{1, 1, "DESTROYPHYSICSBODY", cmd_destroyphysicsbody},

0 commit comments

Comments
 (0)