|
13 | 13 | # - Windows (Win32, Win64)
|
14 | 14 | # - Linux (X11/Wayland desktop mode)
|
15 | 15 | # - Others (not tested)
|
| 16 | +# > PLATFORM_DESKTOP_RGFW (RGFW backend): |
| 17 | +# - Windows (Win32, Win64) |
| 18 | +# - Linux (X11 desktop mode) |
| 19 | +# - macOS/OSX (x64, arm64 (not tested)) |
| 20 | +# - Others (not tested) |
16 | 21 | # > PLATFORM_WEB:
|
17 | 22 | # - HTML5 (WebAssembly)
|
18 | 23 | # > PLATFORM_DRM:
|
@@ -114,7 +119,7 @@ HOST_PLATFORM_OS ?= WINDOWS
|
114 | 119 | PLATFORM_OS ?= WINDOWS
|
115 | 120 |
|
116 | 121 | # Determine PLATFORM_OS when required
|
117 |
| -ifeq ($(PLATFORM),$(filter $(PLATFORM),PLATFORM_DESKTOP PLATFORM_DESKTOP_SDL PLATFORM_WEB PLATFORM_ANDROID)) |
| 122 | +ifeq ($(PLATFORM),$(filter $(PLATFORM),PLATFORM_DESKTOP PLATFORM_DESKTOP_SDL PLATFORM_WEB PLATFORM_ANDROID PLATFORM_DESKTOP_RGFW)) |
118 | 123 | # No uname.exe on MinGW!, but OS=Windows_NT on Windows!
|
119 | 124 | # ifeq ($(UNAME),Msys) -> Windows
|
120 | 125 | ifeq ($(OS),Windows_NT)
|
@@ -224,6 +229,14 @@ ifeq ($(PLATFORM),PLATFORM_DESKTOP)
|
224 | 229 | #GRAPHICS = GRAPHICS_API_OPENGL_43 # Uncomment to use OpenGL 4.3
|
225 | 230 | #GRAPHICS = GRAPHICS_API_OPENGL_ES2 # Uncomment to use OpenGL ES 2.0 (ANGLE)
|
226 | 231 | endif
|
| 232 | +ifeq ($(PLATFORM),PLATFORM_DESKTOP_RGFW) |
| 233 | + # By default use OpenGL 3.3 on desktop platforms |
| 234 | + GRAPHICS ?= GRAPHICS_API_OPENGL_33 |
| 235 | + #GRAPHICS = GRAPHICS_API_OPENGL_11 # Uncomment to use OpenGL 1.1 |
| 236 | + #GRAPHICS = GRAPHICS_API_OPENGL_21 # Uncomment to use OpenGL 2.1 |
| 237 | + #GRAPHICS = GRAPHICS_API_OPENGL_43 # Uncomment to use OpenGL 4.3 |
| 238 | + #GRAPHICS = GRAPHICS_API_OPENGL_ES2 # Uncomment to use OpenGL ES 2.0 (ANGLE) |
| 239 | +endif |
227 | 240 | ifeq ($(PLATFORM),PLATFORM_DESKTOP_SDL)
|
228 | 241 | # By default use OpenGL 3.3 on desktop platform with SDL backend
|
229 | 242 | GRAPHICS ?= GRAPHICS_API_OPENGL_33
|
@@ -576,14 +589,40 @@ endif
|
576 | 589 | ifeq ($(PLATFORM),PLATFORM_ANDROID)
|
577 | 590 | LDLIBS = -llog -landroid -lEGL -lGLESv2 -lOpenSLES -lc -lm
|
578 | 591 | endif
|
| 592 | +ifeq ($(PLATFORM),PLATFORM_DESKTOP_RGFW) |
| 593 | + ifeq ($(PLATFORM_OS),WINDOWS) |
| 594 | + # Libraries for Windows desktop compilation |
| 595 | + LDLIBS = ..\src\libraylib.a -lgdi32 -lwinmm -lopengl32 |
| 596 | + endif |
| 597 | + ifeq ($(PLATFORM_OS),LINUX) |
| 598 | + # Libraries for Debian GNU/Linux desktop compipling |
| 599 | + # NOTE: Required packages: libegl1-mesa-dev |
| 600 | + LDLIBS = ../src/libraylib.a -lGL -lX11 -lXrandr -lXinerama -lXi -lXxf86vm -lXcursor -lm -lpthread -ldl -lrt |
| 601 | + |
| 602 | + # Explicit link to libc |
| 603 | + ifeq ($(RAYLIB_LIBTYPE),SHARED) |
| 604 | + LDLIBS += -lc |
| 605 | + endif |
| 606 | + |
| 607 | + # NOTE: On ARM 32bit arch, miniaudio requires atomics library |
| 608 | + LDLIBS += -latomic |
| 609 | + endif |
| 610 | + ifeq ($(PLATFORM_OS),OSX) |
| 611 | + # Libraries for Debian GNU/Linux desktop compiling |
| 612 | + # NOTE: Required packages: libegl1-mesa-dev |
| 613 | + LDLIBS = ../src/libraylib.a -lm |
| 614 | + LDLIBS += -framework Foundation -framework AppKit -framework OpenGL -framework CoreVideo |
| 615 | + endif |
| 616 | +endif |
579 | 617 |
|
580 | 618 | # Define source code object files required
|
581 | 619 | #------------------------------------------------------------------------------------------------
|
582 | 620 | OBJS = rcore.o \
|
583 | 621 | rshapes.o \
|
584 | 622 | rtextures.o \
|
585 | 623 | rtext.o \
|
586 |
| - utils.o |
| 624 | + utils.o |
| 625 | + |
587 | 626 |
|
588 | 627 | ifeq ($(PLATFORM),PLATFORM_DESKTOP)
|
589 | 628 | ifeq ($(USE_EXTERNAL_GLFW),FALSE)
|
@@ -619,7 +658,7 @@ ifeq ($(PLATFORM),PLATFORM_WEB)
|
619 | 658 | @echo "raylib library generated (lib$(RAYLIB_LIB_NAME).a)!"
|
620 | 659 | else
|
621 | 660 | ifeq ($(RAYLIB_LIBTYPE),SHARED)
|
622 |
| - ifeq ($(PLATFORM),$(filter $(PLATFORM),PLATFORM_DESKTOP PLATFORM_DESKTOP_SDL)) |
| 661 | + ifeq ($(PLATFORM),$(filter $(PLATFORM),PLATFORM_DESKTOP PLATFORM_DESKTOP_SDL PLATFORM_DESKTOP_RGFW)) |
623 | 662 | ifeq ($(PLATFORM_OS),WINDOWS)
|
624 | 663 | # NOTE: Linking with provided resource file
|
625 | 664 | $(CC) -shared -o $(RAYLIB_RELEASE_PATH)/$(RAYLIB_LIB_NAME).dll $(OBJS) $(RAYLIB_RES_FILE) $(LDFLAGS) $(LDLIBS)
|
|
0 commit comments