updates for mac-arm64
This commit is contained in:
parent
2fff0ce465
commit
6b89db7470
55
src/Makefile
55
src/Makefile
|
|
@ -115,6 +115,11 @@ USE_EXTERNAL_GLFW ?= FALSE
|
||||||
GLFW_LINUX_ENABLE_WAYLAND ?= FALSE
|
GLFW_LINUX_ENABLE_WAYLAND ?= FALSE
|
||||||
GLFW_LINUX_ENABLE_X11 ?= TRUE
|
GLFW_LINUX_ENABLE_X11 ?= TRUE
|
||||||
|
|
||||||
|
# Enable support for X11 by default on Linux when using GLFW
|
||||||
|
# NOTE: Wayland is disabled by default, only enable if you are sure
|
||||||
|
RGFW_LINUX_ENABLE_WAYLAND ?= FALSE
|
||||||
|
RGFW_LINUX_ENABLE_X11 ?= TRUE
|
||||||
|
|
||||||
# PLATFORM_DESKTOP_SDL: It requires SDL library to be provided externally
|
# PLATFORM_DESKTOP_SDL: It requires SDL library to be provided externally
|
||||||
# WARNING: Library is not included in raylib, it MUST be configured by users
|
# WARNING: Library is not included in raylib, it MUST be configured by users
|
||||||
SDL_INCLUDE_PATH ?= $(RAYLIB_SRC_PATH)/external/SDL2/include
|
SDL_INCLUDE_PATH ?= $(RAYLIB_SRC_PATH)/external/SDL2/include
|
||||||
|
|
@ -319,6 +324,17 @@ ifeq ($(TARGET_PLATFORM),PLATFORM_ANDROID)
|
||||||
# It seems from Android NDK r22 onwards we need to use llvm-ar
|
# It seems from Android NDK r22 onwards we need to use llvm-ar
|
||||||
AR = $(ANDROID_TOOLCHAIN)/bin/llvm-ar
|
AR = $(ANDROID_TOOLCHAIN)/bin/llvm-ar
|
||||||
endif
|
endif
|
||||||
|
ifeq ($(TARGET_PLATFORM),PLATFORM_DESKTOP_RGFW)
|
||||||
|
ifeq ($(PLATFORM_OS),OSX)
|
||||||
|
# OSX default compiler
|
||||||
|
CC = clang
|
||||||
|
GLFW_OSX = -x objective-c
|
||||||
|
endif
|
||||||
|
ifeq ($(PLATFORM_OS),BSD)
|
||||||
|
# FreeBSD, OpenBSD, NetBSD, DragonFly default compiler
|
||||||
|
CC = clang
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
# Define compiler flags: CFLAGS
|
# Define compiler flags: CFLAGS
|
||||||
#------------------------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------------------------
|
||||||
|
|
@ -472,6 +488,38 @@ ifeq ($(TARGET_PLATFORM),PLATFORM_DESKTOP_GLFW)
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
ifeq ($(TARGET_PLATFORM),PLATFORM_DESKTOP_RGFW)
|
||||||
|
ifeq ($(PLATFORM_OS), LINUX)
|
||||||
|
ifeq ($(RGFW_LINUX_ENABLE_X11),TRUE)
|
||||||
|
CFLAGS += -DRGFW_X11 -DRGFW_UNIX
|
||||||
|
endif
|
||||||
|
ifeq ($(RGFW_LINUX_ENABLE_WAYLAND),TRUE)
|
||||||
|
CFLAGS += -DRGFW_WAYLAND -DRGFW_UNIX -DEGLAPIENTRY=
|
||||||
|
LDFLAGS += $(shell pkg-config wayland-client wayland-cursor wayland-egl xkbcommon --libs)
|
||||||
|
|
||||||
|
WL_PROTOCOLS_DIR := external/RGFW/deps/wayland
|
||||||
|
|
||||||
|
wl_generate = \
|
||||||
|
$(eval protocol=$(1)) \
|
||||||
|
$(eval basename=$(2)) \
|
||||||
|
$(shell wayland-scanner client-header $(protocol) $(RAYLIB_SRC_PATH)/$(basename).h) \
|
||||||
|
$(shell wayland-scanner private-code $(protocol) $(RAYLIB_SRC_PATH)/$(basename)-code.h)
|
||||||
|
|
||||||
|
$(call wl_generate, $(WL_PROTOCOLS_DIR)/xdg-shell.xml, xdg-shell)
|
||||||
|
$(call wl_generate, $(WL_PROTOCOLS_DIR)/xdg-toplevel-icon-v1.xml, xdg-toplevel-icon-v1)
|
||||||
|
$(call wl_generate, $(WL_PROTOCOLS_DIR)/wayland.xml, wayland-client-protocol)
|
||||||
|
$(call wl_generate, $(WL_PROTOCOLS_DIR)/xdg-decoration-unstable-v1.xml, xdg-decoration-unstable-v1)
|
||||||
|
$(call wl_generate, $(WL_PROTOCOLS_DIR)/viewporter.xml, viewporter-client-protocol)
|
||||||
|
$(call wl_generate, $(WL_PROTOCOLS_DIR)/relative-pointer-unstable-v1.xml, relative-pointer-unstable-v1)
|
||||||
|
$(call wl_generate, $(WL_PROTOCOLS_DIR)/pointer-constraints-unstable-v1.xml, pointer-constraints-unstable-v1)
|
||||||
|
$(call wl_generate, $(WL_PROTOCOLS_DIR)/fractional-scale-v1.xml, fractional-scale-v1)
|
||||||
|
$(call wl_generate, $(WL_PROTOCOLS_DIR)/xdg-activation-v1.xml, xdg-activation-v1)
|
||||||
|
$(call wl_generate, $(WL_PROTOCOLS_DIR)/idle-inhibit-unstable-v1.xml, idle-inhibit-unstable-v1)
|
||||||
|
$(call wl_generate, $(WL_PROTOCOLS_DIR)/xdg-output-unstable-v1.xml, xdg-output-unstable-v1)
|
||||||
|
$(call wl_generate, $(WL_PROTOCOLS_DIR)/pointer-warp-v1.xml, pointer-warp-v1)
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
CFLAGS += $(CUSTOM_CFLAGS)
|
CFLAGS += $(CUSTOM_CFLAGS)
|
||||||
|
|
||||||
|
|
@ -618,7 +666,12 @@ ifeq ($(TARGET_PLATFORM),PLATFORM_DESKTOP_RGFW)
|
||||||
ifeq ($(PLATFORM_OS),LINUX)
|
ifeq ($(PLATFORM_OS),LINUX)
|
||||||
# Libraries for Debian GNU/Linux desktop compipling
|
# Libraries for Debian GNU/Linux desktop compipling
|
||||||
# NOTE: Required packages: libegl1-mesa-dev
|
# NOTE: Required packages: libegl1-mesa-dev
|
||||||
|
ifeq ($(RGFW_LINUX_ENABLE_X11),TRUE)
|
||||||
LDLIBS = -lGL -lX11 -lXrandr -lXinerama -lXi -lXcursor -lm -lpthread -ldl -lrt
|
LDLIBS = -lGL -lX11 -lXrandr -lXinerama -lXi -lXcursor -lm -lpthread -ldl -lrt
|
||||||
|
endif
|
||||||
|
ifeq ($(RGFW_LINUX_ENABLE_WAYLAND),TRUE)
|
||||||
|
LDLIBS += -lEGL $(shell pkg-config --libs wayland-client wayland-cursor wayland-egl xkbcommon --libs)
|
||||||
|
endif
|
||||||
|
|
||||||
# Explicit link to libc
|
# Explicit link to libc
|
||||||
ifeq ($(RAYLIB_LIBTYPE),SHARED)
|
ifeq ($(RAYLIB_LIBTYPE),SHARED)
|
||||||
|
|
@ -631,7 +684,7 @@ ifeq ($(TARGET_PLATFORM),PLATFORM_DESKTOP_RGFW)
|
||||||
ifeq ($(PLATFORM_OS),OSX)
|
ifeq ($(PLATFORM_OS),OSX)
|
||||||
# Libraries for Debian MacOS desktop compiling
|
# Libraries for Debian MacOS desktop compiling
|
||||||
# NOTE: Required packages: libegl1-mesa-dev
|
# NOTE: Required packages: libegl1-mesa-dev
|
||||||
LDLIBS += -lm -framework Foundation -framework AppKit -framework IOKit -framework OpenGL -framework CoreVideo
|
LDLIBS = -lm -framework Foundation -framework AppKit -framework IOKit -framework OpenGL -framework CoreVideo
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
ifeq ($(TARGET_PLATFORM),PLATFORM_DRM)
|
ifeq ($(TARGET_PLATFORM),PLATFORM_DRM)
|
||||||
|
|
|
||||||
|
|
@ -45,10 +45,26 @@
|
||||||
*
|
*
|
||||||
**********************************************************************************************/
|
**********************************************************************************************/
|
||||||
|
|
||||||
// minigamepad used for gamepad support
|
#if defined(_WIN32) || defined(_WIN64)
|
||||||
#define MG_MAX_GAMEPADS MAX_GAMEPADS // copy raylibs define into minigamepad
|
#define BI_ALPHABITFIELDS 4
|
||||||
#define MG_IMPLEMENTATION
|
#define LoadImage LoadImageA
|
||||||
#include "../external/minigamepad.h"
|
|
||||||
|
// Temporarily rename conflicting symbols
|
||||||
|
#define CloseWindow CloseWindowWin32
|
||||||
|
#define Rectangle RectangleWin32
|
||||||
|
#define ShowCursor ShowCursorWin32
|
||||||
|
|
||||||
|
#define WIN32_LEAN_AND_MEAN
|
||||||
|
#include <windows.h>
|
||||||
|
|
||||||
|
// Restore for raylib/RGFW
|
||||||
|
#undef CloseWindow
|
||||||
|
#undef Rectangle
|
||||||
|
#undef ShowCursor
|
||||||
|
#undef LoadImage
|
||||||
|
|
||||||
|
#include "../external/fix_win32_compatibility.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
#if defined(PLATFORM_WEB_RGFW)
|
#if defined(PLATFORM_WEB_RGFW)
|
||||||
#define RGFW_NO_GL_HEADER
|
#define RGFW_NO_GL_HEADER
|
||||||
|
|
@ -76,8 +92,6 @@ double get_time_seconds(void);
|
||||||
#define ShowCursor __imp_ShowCursor
|
#define ShowCursor __imp_ShowCursor
|
||||||
#define _APISETSTRING_
|
#define _APISETSTRING_
|
||||||
|
|
||||||
#undef MAX_PATH
|
|
||||||
|
|
||||||
#if defined(__cplusplus)
|
#if defined(__cplusplus)
|
||||||
extern "C" {
|
extern "C" {
|
||||||
#endif
|
#endif
|
||||||
|
|
@ -91,13 +105,28 @@ extern "C" {
|
||||||
#if defined(__APPLE__)
|
#if defined(__APPLE__)
|
||||||
#define Point NSPOINT
|
#define Point NSPOINT
|
||||||
#define Size NSSIZE
|
#define Size NSSIZE
|
||||||
|
|
||||||
|
#ifdef GetColor
|
||||||
|
#undef GetColor
|
||||||
#endif
|
#endif
|
||||||
|
#define GetColor GetColor_osx
|
||||||
|
#ifdef EventType
|
||||||
|
#undef EventType
|
||||||
|
#endif
|
||||||
|
#define EventType EventType_osx
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// minigamepad used for gamepad support
|
||||||
|
#define MG_MAX_GAMEPADS MAX_GAMEPADS // copy raylibs define into minigamepad
|
||||||
|
#define MG_IMPLEMENTATION
|
||||||
|
#include "../external/RGFW/deps/minigamepad.h"
|
||||||
|
|
||||||
#define RGFW_ALLOC RL_MALLOC
|
#define RGFW_ALLOC RL_MALLOC
|
||||||
#define RGFW_FREE RL_FREE
|
#define RGFW_FREE RL_FREE
|
||||||
#define RGFW_CALLOC RL_CALLOC
|
#define RGFW_CALLOC RL_CALLOC
|
||||||
|
#define RGFW_INT_DEFINED 1 // to avoid issues with minigamepad+RGFW definitions
|
||||||
|
|
||||||
#include "../external/RGFW.h"
|
#include "../external/RGFW/RGFW.h"
|
||||||
|
|
||||||
#if defined(_WIN32) || defined(_WIN64)
|
#if defined(_WIN32) || defined(_WIN64)
|
||||||
#undef DrawText
|
#undef DrawText
|
||||||
|
|
@ -105,9 +134,11 @@ extern "C" {
|
||||||
#undef CloseWindow
|
#undef CloseWindow
|
||||||
#undef Rectangle
|
#undef Rectangle
|
||||||
|
|
||||||
|
#ifdef MAX_PATH
|
||||||
#undef MAX_PATH
|
#undef MAX_PATH
|
||||||
#define MAX_PATH 1025
|
#define MAX_PATH 1025
|
||||||
#endif
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
#if defined(__APPLE__)
|
#if defined(__APPLE__)
|
||||||
#undef Point
|
#undef Point
|
||||||
|
|
@ -756,8 +787,10 @@ void *GetWindowHandle(void)
|
||||||
{
|
{
|
||||||
if (platform.window == NULL) return NULL;
|
if (platform.window == NULL) return NULL;
|
||||||
|
|
||||||
#ifdef RGFW_WASM
|
#if defined(RGFW_WASM)
|
||||||
return (void *)&platform.window->src.ctx;
|
return (void *)&platform.window->src.ctx;
|
||||||
|
#elif defined(RGFW_WAYLAND)
|
||||||
|
return (void *)platform.window->src.surface;
|
||||||
#else
|
#else
|
||||||
return (void *)platform.window->src.window;
|
return (void *)platform.window->src.window;
|
||||||
#endif
|
#endif
|
||||||
|
|
@ -1317,6 +1350,7 @@ void PollInputEvents(void)
|
||||||
}
|
}
|
||||||
} break;
|
} break;
|
||||||
case MG_EVENT_AXIS_MOVE:
|
case MG_EVENT_AXIS_MOVE:
|
||||||
|
{
|
||||||
int axis = mg_axisConvertTable[gamepad_event.axis];
|
int axis = mg_axisConvertTable[gamepad_event.axis];
|
||||||
|
|
||||||
switch (axis) {
|
switch (axis) {
|
||||||
|
|
@ -1339,7 +1373,7 @@ void PollInputEvents(void)
|
||||||
else if (CORE.Input.Gamepad.lastButtonPressed == button) CORE.Input.Gamepad.lastButtonPressed = 0;
|
else if (CORE.Input.Gamepad.lastButtonPressed == button) CORE.Input.Gamepad.lastButtonPressed = 0;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
break;
|
} break;
|
||||||
case MG_EVENT_GAMEPAD_CONNECT:
|
case MG_EVENT_GAMEPAD_CONNECT:
|
||||||
CORE.Input.Gamepad.ready[gamepadIndex] = true;
|
CORE.Input.Gamepad.ready[gamepadIndex] = true;
|
||||||
CORE.Input.Gamepad.axisState[gamepadIndex][GAMEPAD_AXIS_LEFT_TRIGGER] = -1.0f;
|
CORE.Input.Gamepad.axisState[gamepadIndex][GAMEPAD_AXIS_LEFT_TRIGGER] = -1.0f;
|
||||||
|
|
@ -1486,7 +1520,7 @@ int InitPlatform(void)
|
||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
|
|
||||||
#if defined(RGFW_WAYLAND)
|
#if defined(RGFW_WAYLAND)
|
||||||
if (RGFW_useWaylandBool) TRACELOG(LOG_INFO, "PLATFORM: DESKTOP (RGFW - Wayland): Initialized successfully");
|
if (RGFW_usingWayland()) TRACELOG(LOG_INFO, "PLATFORM: DESKTOP (RGFW - Wayland): Initialized successfully");
|
||||||
else TRACELOG(LOG_INFO, "PLATFORM: DESKTOP (RGFW - X11 (fallback)): Initialized successfully");
|
else TRACELOG(LOG_INFO, "PLATFORM: DESKTOP (RGFW - X11 (fallback)): Initialized successfully");
|
||||||
#elif defined(RGFW_X11)
|
#elif defined(RGFW_X11)
|
||||||
#if defined(__APPLE__)
|
#if defined(__APPLE__)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user