| 
				
				
				
				 | 
			
			 | 
			
			@ -1,6 +1,34 @@ | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#**************************************************************************************************
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#   raylib makefile for Web platform
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#   raylib makefile for multiple platforms
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#   This file supports building raylib examples for the following platforms:
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#     > PLATFORM_DESKTOP
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#         - Defaults to PLATFORM_DESKTOP_GLFW
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#     > PLATFORM_DESKTOP_GFLW (GLFW backend):
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#         - Windows (Win32, Win64)
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#         - Linux (X11/Wayland desktop mode)
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#         - macOS/OSX (x64, arm64)
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#         - FreeBSD, OpenBSD, NetBSD, DragonFly (X11 desktop)
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#     > PLATFORM_DESKTOP_SDL (SDL backend):
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#         - Windows (Win32, Win64)
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#         - Linux (X11/Wayland desktop mode)
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#         - Others (not tested)
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#     > PLATFORM_DESKTOP_RGFW (RGFW backend):
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#         - Windows (Win32, Win64)
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#         - Linux (X11 desktop mode)
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#         - macOS/OSX (x64, arm64 (not tested))
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#         - Others (not tested)
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#     > PLATFORM_WEB_RGFW:
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#         - HTML5 (WebAssembly)
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#     > PLATFORM_WEB:
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#         - HTML5 (WebAssembly)
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#     > PLATFORM_DRM:
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#         - Raspberry Pi 0-5 (DRM/KMS)
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#         - Linux DRM subsystem (KMS mode)
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#     > PLATFORM_ANDROID:
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#         - Android (ARM, ARM64)
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#   Copyright (c) 2013-2025 Ramon Santamaria (@raysan5)
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#
 | 
			
		
		
	
	
		
			
				| 
				
				
				
					
						
					
				
				 | 
			
			 | 
			
			@ -25,9 +53,20 @@ | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			# Define required environment variables
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#------------------------------------------------------------------------------------------------
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			# Define target platform: PLATFORM_DESKTOP, PLATFORM_DRM, PLATFORM_ANDROID, PLATFORM_WEB
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			# Define target platform: PLATFORM_DESKTOP, PLATFORM_DESKTOP_SDL, PLATFORM_DRM, PLATFORM_ANDROID, PLATFORM_WEB, PLATFORM_WEB_RGFW
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			PLATFORM              ?= PLATFORM_WEB | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(PLATFORM),$(filter $(PLATFORM),PLATFORM_DESKTOP_GLFW PLATFORM_DESKTOP_SDL PLATFORM_DESKTOP_RGFW)) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    TARGET_PLATFORM := $(PLATFORM) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    override PLATFORM = PLATFORM_DESKTOP | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			else | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    ifeq ($(PLATFORM), PLATFORM_DESKTOP) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        TARGET_PLATFORM = PLATFORM_DESKTOP_GLFW | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    else | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        TARGET_PLATFORM = $(PLATFORM) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			# Define required raylib variables
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			PROJECT_NAME          ?= raylib_examples | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			RAYLIB_VERSION        ?= 5.5.0 | 
			
		
		
	
	
		
			
				| 
				
				
				
					
						
					
				
				 | 
			
			 | 
			
			@ -51,6 +90,12 @@ BUILD_MODE            ?= RELEASE | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			# Use external GLFW library instead of rglfw module
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			USE_EXTERNAL_GLFW     ?= FALSE | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			# PLATFORM_DESKTOP_SDL: It requires SDL library to be provided externally
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			# WARNING: Library is not included in raylib, it MUST be configured by users
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			SDL_INCLUDE_PATH      ?= $(RAYLIB_SRC_PATH)/external/SDL2/include | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			SDL_LIBRARY_PATH      ?= $(RAYLIB_SRC_PATH)/external/SDL2/lib | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			SDL_LIBRARIES         ?= -lSDL2 -lSDL2main | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			# Use Wayland display server protocol on Linux desktop (by default it uses X11 windowing system)
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			# NOTE: This variable is only used for PLATFORM_OS: LINUX
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			USE_WAYLAND_DISPLAY   ?= FALSE | 
			
		
		
	
	
		
			
				| 
				
				
				
					
						
					
				
				 | 
			
			 | 
			
			@ -59,13 +104,14 @@ USE_WAYLAND_DISPLAY   ?= FALSE | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			BUILD_WEB_ASYNCIFY    ?= TRUE | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			BUILD_WEB_SHELL       ?= $(RAYLIB_PATH)/src/shell.html | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			BUILD_WEB_HEAP_SIZE   ?= 134217728 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			BUILD_WEB_RESOURCES   ?= TRUE | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			BUILD_WEB_RESOURCES_PATH  ?= $(dir $<)resources@resources | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			# Use WebGL2 backend (OpenGL 3.0)
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			# WARNING: Requires raylib compiled with GRAPHICS_API_OPENGL_ES3
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			USE_WEBGL2            ?= FALSE | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			BUILD_WEB_WEBGL2      ?= FALSE | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			# Determine PLATFORM_OS in case PLATFORM_DESKTOP or PLATFORM_WEB selected
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(PLATFORM),$(filter $(PLATFORM),PLATFORM_DESKTOP PLATFORM_WEB PLATFORM_WEB_RGFW)) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			# Determine PLATFORM_OS when required
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(TARGET_PLATFORM),$(filter $(TARGET_PLATFORM),PLATFORM_DESKTOP_GLFW PLATFORM_DESKTOP_SDL PLATFORM_DESKTOP_RGFW PLATFORM_WEB PLATFORM_WEB_RGFW)) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    # No uname.exe on MinGW!, but OS=Windows_NT on Windows! | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    # ifeq ($(UNAME),Msys) -> Windows | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    ifeq ($(OS),Windows_NT) | 
			
		
		
	
	
		
			
				| 
				
					
						
					
				
				
					
						
					
				
				
				 | 
			
			 | 
			
			@ -92,7 +138,7 @@ ifeq ($(PLATFORM),$(filter $(PLATFORM),PLATFORM_DESKTOP PLATFORM_WEB PLATFORM_WE | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(PLATFORM),PLATFORM_DRM) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(TARGET_PLATFORM),PLATFORM_DRM) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    UNAMEOS = $(shell uname) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    ifeq ($(UNAMEOS),Linux) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        PLATFORM_OS = LINUX | 
			
		
		
	
	
		
			
				| 
				
				
				
					
						
					
				
				 | 
			
			 | 
			
			@ -101,7 +147,7 @@ endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			# RAYLIB_PATH adjustment for LINUX platform
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			# TODO: Do we really need this?
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(PLATFORM),PLATFORM_DESKTOP) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(TARGET_PLATFORM),PLATFORM_DESKTOP_GLFW) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    ifeq ($(PLATFORM_OS),LINUX) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        RAYLIB_PREFIX  ?= .. | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        RAYLIB_PATH     = $(realpath $(RAYLIB_PREFIX)) | 
			
		
		
	
	
		
			
				| 
				
				
				
					
						
					
				
				 | 
			
			 | 
			
			@ -109,14 +155,14 @@ ifeq ($(PLATFORM),PLATFORM_DESKTOP) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			# Default path for raylib on Raspberry Pi
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(PLATFORM),PLATFORM_DRM) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(TARGET_PLATFORM),PLATFORM_DRM) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    RAYLIB_PATH        ?= /home/pi/raylib | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			# Define raylib release directory for compiled library
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			RAYLIB_RELEASE_PATH    ?= $(RAYLIB_PATH)/src | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(PLATFORM),$(filter $(PLATFORM),PLATFORM_WEB PLATFORM_WEB_RGFW)) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(TARGET_PLATFORM),$(filter $(TARGET_PLATFORM),PLATFORM_WEB PLATFORM_WEB_RGFW)) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    ifeq ($(PLATFORM_OS),WINDOWS) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        # Emscripten required variables | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
					EMSDK_PATH         ?= C:/raylib/emsdk | 
			
		
		
	
	
		
			
				| 
				
				
				
					
						
					
				
				 | 
			
			 | 
			
			@ -132,7 +178,7 @@ endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#------------------------------------------------------------------------------------------------
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			CC = gcc | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(PLATFORM),PLATFORM_DESKTOP) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(TARGET_PLATFORM),PLATFORM_DESKTOP_GLFW) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    ifeq ($(PLATFORM_OS),OSX) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        # OSX default compiler | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        CC = clang | 
			
		
		
	
	
		
			
				| 
				
				
				
					
						
					
				
				 | 
			
			 | 
			
			@ -142,7 +188,7 @@ ifeq ($(PLATFORM),PLATFORM_DESKTOP) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        CC = clang | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(PLATFORM),$(filter $(PLATFORM),PLATFORM_WEB PLATFORM_WEB_RGFW)) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(TARGET_PLATFORM),$(filter $(TARGET_PLATFORM),PLATFORM_WEB PLATFORM_WEB_RGFW)) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    # HTML5 emscripten compiler | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    # WARNING: To compile to HTML5, code must be redesigned | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    # to use emscripten.h and emscripten_set_main_loop() | 
			
		
		
	
	
		
			
				| 
				
				
				
					
						
					
				
				 | 
			
			 | 
			
			@ -153,15 +199,15 @@ endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#------------------------------------------------------------------------------------------------
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			MAKE ?= make | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(PLATFORM),PLATFORM_DESKTOP) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(TARGET_PLATFORM),PLATFORM_DESKTOP_GLFW) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    ifeq ($(PLATFORM_OS),WINDOWS) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        MAKE = mingw32-make | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(PLATFORM),PLATFORM_ANDROID) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(TARGET_PLATFORM),PLATFORM_ANDROID) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    MAKE = mingw32-make | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(PLATFORM),$(filter $(PLATFORM),PLATFORM_WEB PLATFORM_WEB_RGFW)) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(TARGET_PLATFORM),$(filter $(TARGET_PLATFORM),PLATFORM_WEB PLATFORM_WEB_RGFW)) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    ifeq ($(OS),Windows_NT) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        MAKE = mingw32-make | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    else | 
			
		
		
	
	
		
			
				| 
				
					
						
					
				
				
					
						
					
				
				
				 | 
			
			 | 
			
			@ -190,14 +236,14 @@ CFLAGS = -Wall -std=c99 -D_DEFAULT_SOURCE -Wno-missing-braces -Wunused-result | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(BUILD_MODE),DEBUG) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    CFLAGS += -g -D_DEBUG | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			else | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    ifeq ($(PLATFORM),$(filter $(PLATFORM),PLATFORM_WEB PLATFORM_WEB_RGFW)) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			   ifeq ($(TARGET_PLATFORM),$(filter $(TARGET_PLATFORM),PLATFORM_WEB PLATFORM_WEB_RGFW)) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        ifeq ($(BUILD_WEB_ASYNCIFY),TRUE) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			            CFLAGS += -O3 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        else | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			            CFLAGS += -Os | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    else | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        CFLAGS += -s -O2 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        CFLAGS += -O2 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
	
		
			
				| 
				
				
				
					
						
					
				
				 | 
			
			 | 
			
			@ -207,7 +253,7 @@ endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#  -Wstrict-prototypes      warn if a function is declared or defined without specifying the argument types
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#  -Werror=implicit-function-declaration   catch function calls without prior declaration
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#CFLAGS += -Wextra -Wmissing-prototypes -Wstrict-prototypes
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(PLATFORM),PLATFORM_DESKTOP) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(TARGET_PLATFORM),PLATFORM_DESKTOP_GLFW) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    ifeq ($(PLATFORM_OS),LINUX) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        ifeq ($(RAYLIB_LIBTYPE),STATIC) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			            CFLAGS += -D_DEFAULT_SOURCE | 
			
		
		
	
	
		
			
				| 
				
				
				
					
						
					
				
				 | 
			
			 | 
			
			@ -218,25 +264,29 @@ ifeq ($(PLATFORM),PLATFORM_DESKTOP) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(PLATFORM),PLATFORM_DRM) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(TARGET_PLATFORM),PLATFORM_DRM) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    CFLAGS += -std=gnu99 -DEGL_NO_X11 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			# Define include paths for required headers: INCLUDE_PATHS
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			# NOTE: Some external/extras libraries could be required (stb, easings...)
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#------------------------------------------------------------------------------------------------
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			INCLUDE_PATHS = -I. -I$(RAYLIB_PATH)/src -I$(RAYLIB_PATH)/src/external | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			INCLUDE_PATHS = -I. -I$(RAYLIB_PATH)/src -I$(RAYLIB_PATH)/src/external $(EXTRA_INCLUDE_PATHS) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			# Define additional directories containing required header files
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(PLATFORM),PLATFORM_DESKTOP) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(TARGET_PLATFORM),PLATFORM_DESKTOP_GLFW) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    ifeq ($(PLATFORM_OS),BSD) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        INCLUDE_PATHS += -I$(RAYLIB_INCLUDE_PATH) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        INCLUDE_PATHS += -I$(RAYLIB_INCLUDE_PATH) -I/usr/pkg/include -I/usr/X11R7/include | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    ifeq ($(PLATFORM_OS),LINUX) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        INCLUDE_PATHS += -I$(RAYLIB_INCLUDE_PATH) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(PLATFORM),PLATFORM_DRM) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(TARGET_PLATFORM),PLATFORM_DESKTOP_SDL) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    INCLUDE_PATHS += -I$(SDL_INCLUDE_PATH) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(TARGET_PLATFORM),PLATFORM_DRM) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    INCLUDE_PATHS += -I$(RAYLIB_INCLUDE_PATH) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    INCLUDE_PATHS += -I/usr/include/libdrm | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
	
		
			
				| 
				
				
				
					
						
					
				
				 | 
			
			 | 
			
			@ -244,7 +294,7 @@ endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#------------------------------------------------------------------------------------------------
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			LDFLAGS = -L. -L$(RAYLIB_RELEASE_PATH) -L$(RAYLIB_PATH)/src | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(PLATFORM),PLATFORM_DESKTOP) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(TARGET_PLATFORM),PLATFORM_DESKTOP_GLFW) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    ifeq ($(PLATFORM_OS),WINDOWS) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        # NOTE: The resource .rc file contains windows executable icon and properties | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        LDFLAGS += $(RAYLIB_PATH)/src/raylib.rc.data | 
			
		
		
	
	
		
			
				| 
				
				
				
					
						
					
				
				 | 
			
			 | 
			
			@ -260,7 +310,18 @@ ifeq ($(PLATFORM),PLATFORM_DESKTOP) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        LDFLAGS += -Lsrc -L$(RAYLIB_LIB_PATH) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(PLATFORM),$(filter $(PLATFORM),PLATFORM_WEB PLATFORM_WEB_RGFW)) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(TARGET_PLATFORM),PLATFORM_DESKTOP_SDL) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    ifeq ($(PLATFORM_OS),WINDOWS) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        # NOTE: The resource .rc file contains windows executable icon and properties | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        LDFLAGS += $(RAYLIB_PATH)/src/raylib.rc.data | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        # -Wl,--subsystem,windows hides the console window | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        ifeq ($(BUILD_MODE), RELEASE) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			            LDFLAGS += -Wl,--subsystem,windows | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    LDFLAGS += -L$(SDL_LIBRARY_PATH) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(TARGET_PLATFORM),$(filter $(TARGET_PLATFORM),PLATFORM_WEB PLATFORM_WEB_RGFW)) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    # -Os                        # size optimization | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    # -O2                        # optimization level 2, if used, also set --memory-init-file 0 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    # -sUSE_GLFW=3               # Use glfw3 library (context/input management) | 
			
		
		
	
	
		
			
				| 
				
				
				
					
						
					
				
				 | 
			
			 | 
			
			@ -277,10 +338,10 @@ ifeq ($(PLATFORM),$(filter $(PLATFORM),PLATFORM_WEB PLATFORM_WEB_RGFW)) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    # --preload-file resources   # specify a resources folder for data compilation | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    # --source-map-base          # allow debugging in browser with source map | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    # --shell-file shell.html    # define a custom shell .html and output extension | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
				LDFLAGS += -sTOTAL_MEMORY=$(BUILD_WEB_HEAP_SIZE) -sFORCE_FILESYSTEM=1 -sEXPORTED_RUNTIME_METHODS=ccall -sMINIFY_HTML=0 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    LDFLAGS += -sTOTAL_MEMORY=$(BUILD_WEB_HEAP_SIZE) -sFORCE_FILESYSTEM=1 -sEXPORTED_RUNTIME_METHODS=ccall -sMINIFY_HTML=0 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    # Using GLFW3 library (instead of RGFW) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    ifeq ($(PLATFORM),PLATFORM_WEB) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    ifeq ($(TARGET_PLATFORM),PLATFORM_WEB) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        LDFLAGS += -sUSE_GLFW=3 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
	
		
			
				| 
				
				
				
					
						
					
				
				 | 
			
			 | 
			
			@ -291,9 +352,14 @@ ifeq ($(PLATFORM),$(filter $(PLATFORM),PLATFORM_WEB PLATFORM_WEB_RGFW)) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    # NOTE: Flags required for WebGL 2.0 (OpenGL ES 3.0) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    # WARNING: Requires raylib compiled with GRAPHICS_API_OPENGL_ES3 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    ifeq ($(USE_WEBGL2),TRUE) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    ifeq ($(BUILD_WEB_WEBGL2),TRUE) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        LDFLAGS += -sMIN_WEBGL_VERSION=2 -sMAX_WEBGL_VERSION=2 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			     | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    # Add resources building if required | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    ifeq ($(BUILD_WEB_RESOURCES),TRUE) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        LDFLAGS += --preload-file $(BUILD_WEB_RESOURCES_PATH) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    # Add debug mode flags if required | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    ifeq ($(BUILD_MODE),DEBUG) | 
			
		
		
	
	
		
			
				| 
				
				
				
					
						
					
				
				 | 
			
			 | 
			
			@ -314,7 +380,7 @@ endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			# Define libraries required on linking: LDLIBS
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			# NOTE: To link libraries (lib<name>.so or lib<name>.a), use -l<name>
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#------------------------------------------------------------------------------------------------
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(PLATFORM),PLATFORM_DESKTOP) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(TARGET_PLATFORM),PLATFORM_DESKTOP_GLFW) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    ifeq ($(PLATFORM_OS),WINDOWS) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        # Libraries for Windows desktop compilation | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        # NOTE: WinMM library required to set high-res timer resolution | 
			
		
		
	
	
		
			
				| 
				
					
						
					
				
				
					
						
					
				
				
				 | 
			
			 | 
			
			@ -361,18 +427,75 @@ ifeq ($(PLATFORM),PLATFORM_DESKTOP) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        LDLIBS += -lglfw | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(PLATFORM),PLATFORM_DRM) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(TARGET_PLATFORM),PLATFORM_DESKTOP_SDL) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    ifeq ($(PLATFORM_OS),WINDOWS) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        # Libraries for Windows desktop compilation | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        LDLIBS = -lraylib $(SDL_LIBRARIES) -lopengl32 -lgdi32 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    ifeq ($(PLATFORM_OS),LINUX) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        # Libraries for Debian GNU/Linux desktop compiling | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        # NOTE: Required packages: libegl1-mesa-dev | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        LDLIBS = -lraylib $(SDL_LIBRARIES) -lGL -lm -lpthread -ldl -lrt | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        # On X11 requires also below libraries | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        LDLIBS += -lX11 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        # NOTE: It seems additional libraries are not required any more, latest GLFW just dlopen them | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        #LDLIBS += -lXrandr -lXinerama -lXi -lXxf86vm -lXcursor | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        # On Wayland windowing system, additional libraries requires | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        ifeq ($(USE_WAYLAND_DISPLAY),TRUE) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			            LDLIBS += -lwayland-client -lwayland-cursor -lwayland-egl -lxkbcommon | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        # Explicit link to libc | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        ifeq ($(RAYLIB_LIBTYPE),SHARED) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			            LDLIBS += -lc | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        # NOTE: On ARM 32bit arch, miniaudio requires atomics library | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        LDLIBS += -latomic | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(TARGET_PLATFORM),PLATFORM_DESKTOP_RGFW) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    ifeq ($(PLATFORM_OS),WINDOWS) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        # Libraries for Windows desktop compilation | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        LDFLAGS += -L..\src | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        LDLIBS = -lraylib -lgdi32 -lwinmm -lopengl32 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    ifeq ($(PLATFORM_OS),LINUX) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        # Libraries for Debian GNU/Linux desktop compipling | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        # NOTE: Required packages: libegl1-mesa-dev | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        LDFLAGS += -L../src | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        LDLIBS = -lraylib -lGL -lX11 -lXrandr -lXinerama -lXi -lXxf86vm -lXcursor -lm -lpthread -ldl -lrt | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        # Explicit link to libc | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        ifeq ($(RAYLIB_LIBTYPE),SHARED) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			            LDLIBS += -lc | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        # NOTE: On ARM 32bit arch, miniaudio requires atomics library | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        LDLIBS += -latomic | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    ifeq ($(PLATFORM_OS),OSX) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        # Libraries for Debian GNU/Linux desktop compiling | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        # NOTE: Required packages: libegl1-mesa-dev | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        LDFLAGS += -L../src | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        LDLIBS = -lraylib -lm | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        LDLIBS += -framework Foundation -framework AppKit -framework IOKit -framework OpenGL -framework CoreVideo | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(TARGET_PLATFORM),PLATFORM_DRM) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    # Libraries for DRM compiling | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    # NOTE: Required packages: libasound2-dev (ALSA) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    LDLIBS = -lraylib -lGLESv2 -lEGL -lpthread -lrt -lm -lgbm -ldrm -ldl -latomic | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(PLATFORM),$(filter $(PLATFORM),PLATFORM_WEB PLATFORM_WEB_RGFW)) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			ifeq ($(TARGET_PLATFORM),$(filter $(TARGET_PLATFORM),PLATFORM_WEB PLATFORM_WEB_RGFW)) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    # Libraries for web (HTML5) compiling | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    LDLIBS = $(RAYLIB_RELEASE_PATH)/libraylib.web.a | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			# Define source code object files required
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#------------------------------------------------------------------------------------------------
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#EXAMPLES_LIST_START
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			CORE = \
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    core/core_2d_camera \
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    core/core_2d_camera_mouse_zoom \
 | 
			
		
		
	
	
		
			
				| 
				
					
						
					
				
				
					
						
					
				
				
				 | 
			
			 | 
			
			@ -416,6 +539,8 @@ SHAPES = \ | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    shapes/shapes_bouncing_ball \
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    shapes/shapes_collision_area \
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    shapes/shapes_colors_palette \
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    shapes/shapes_digital_clock \
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    shapes/shapes_double_pendulum \
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    shapes/shapes_draw_circle_sector \
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    shapes/shapes_draw_rectangle_rounded \
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    shapes/shapes_draw_ring \
 | 
			
		
		
	
	
		
			
				| 
				
				
				
					
						
					
				
				 | 
			
			 | 
			
			@ -429,9 +554,7 @@ SHAPES = \ | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    shapes/shapes_rectangle_advanced \
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    shapes/shapes_rectangle_scaling \
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    shapes/shapes_splines_drawing \
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    shapes/shapes_top_down_lights \
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    shapes/shapes_digital_clock \
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    shapes/shapes_double_pendulum | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    shapes/shapes_top_down_lights | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			TEXTURES = \
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    textures/textures_background_scrolling \
 | 
			
		
		
	
	
		
			
				| 
				
					
						
					
				
				
					
						
					
				
				
				 | 
			
			 | 
			
			@ -547,6 +670,7 @@ OTHERS = \ | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    others/raymath_vector_angle \
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    others/rlgl_compute_shader \
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    others/rlgl_standalone | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#EXAMPLES_LIST_END
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			CURRENT_MAKEFILE = $(lastword $(MAKEFILE_LIST)) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
	
		
			
				| 
				
					
						
					
				
				
					
						
					
				
				
				 | 
			
			 | 
			
			@ -676,7 +800,6 @@ core/core_window_should_close: core/core_window_should_close.c | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			core/core_world_screen: core/core_world_screen.c | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
				$(CC) -o $@$(EXT) $< $(CFLAGS) $(INCLUDE_PATHS) $(LDFLAGS) $(LDLIBS) -D$(PLATFORM) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			# Compile SHAPES examples
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			shapes/shapes_basic_shapes: shapes/shapes_basic_shapes.c | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
				$(CC) -o $@$(EXT) $< $(CFLAGS) $(INCLUDE_PATHS) $(LDFLAGS) $(LDLIBS) -D$(PLATFORM) | 
			
		
		
	
	
		
			
				| 
				
					
						
					
				
				
					
						
					
				
				
				 | 
			
			 | 
			
			@ -735,7 +858,6 @@ shapes/shapes_rectangle_advanced: shapes/shapes_rectangle_advanced.c | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			shapes/shapes_double_pendulum: shapes/shapes_double_pendulum.c | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
				$(CC) -o $@$(EXT) $< $(CFLAGS) $(INCLUDE_PATHS) $(LDFLAGS) $(LDLIBS) -D$(PLATFORM) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			# Compile TEXTURES examples
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			textures/textures_background_scrolling: textures/textures_background_scrolling.c | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
				$(CC) -o $@$(EXT) $< $(CFLAGS) $(INCLUDE_PATHS) $(LDFLAGS) $(LDLIBS) -D$(PLATFORM) \
 | 
			
		
		
	
	
		
			
				| 
				
					
						
					
				
				
					
						
					
				
				
				 | 
			
			 | 
			
			@ -846,7 +968,6 @@ textures/textures_to_image: textures/textures_to_image.c | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
				$(CC) -o $@$(EXT) $< $(CFLAGS) $(INCLUDE_PATHS) $(LDFLAGS) $(LDLIBS) -D$(PLATFORM) \
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    --preload-file textures/resources/raylib_logo.png@resources/raylib_logo.png | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			# Compile TEXT examples
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			text/text_codepoints_loading: text/text_codepoints_loading.c | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
				$(CC) -o $@$(EXT) $< $(CFLAGS) $(INCLUDE_PATHS) $(LDFLAGS) $(LDLIBS) -D$(PLATFORM) \
 | 
			
		
		
	
	
		
			
				| 
				
					
						
					
				
				
					
						
					
				
				
				 | 
			
			 | 
			
			@ -1014,7 +1135,6 @@ models/models_yaw_pitch_roll: models/models_yaw_pitch_roll.c | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    --preload-file models/resources/models/obj/plane.obj@resources/models/obj/plane.obj \
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    --preload-file models/resources/models/obj/plane_diffuse.png@resources/models/obj/plane_diffuse.png | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			# Compile SHADER examples
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			shaders/shaders_basic_lighting: shaders/shaders_basic_lighting.c | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
				$(CC) -o $@$(EXT) $< $(CFLAGS) $(INCLUDE_PATHS) $(LDFLAGS) $(LDLIBS) -D$(PLATFORM) \
 | 
			
		
		
	
	
		
			
				| 
				
					
						
					
				
				
					
						
					
				
				
				 | 
			
			 | 
			
			@ -1172,7 +1292,6 @@ shaders/shaders_vertex_displacement: shaders/shaders_vertex_displacement.c | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    --preload-file shaders/resources/shaders/glsl100/vertex_displacement.fs@resources/shaders/glsl100/vertex_displacement.fs \
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    --preload-file shaders/resources/shaders/glsl330/vertex_displacement.fs@resources/shaders/glsl330/vertex_displacement.fs | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			# Compile AUDIO examples
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			audio/audio_mixed_processor: audio/audio_mixed_processor.c | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
				$(CC) -o $@$(EXT) $< $(CFLAGS) $(INCLUDE_PATHS) $(LDFLAGS) $(LDLIBS) -D$(PLATFORM) -sTOTAL_MEMORY=67108864 \
 | 
			
		
		
	
	
		
			
				| 
				
					
						
					
				
				
					
						
					
				
				
				 | 
			
			 | 
			
			@ -1203,7 +1322,6 @@ audio/audio_stream_effects: audio/audio_stream_effects.c | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
				$(CC) -o $@$(EXT) $< $(CFLAGS) $(INCLUDE_PATHS) $(LDFLAGS) $(LDLIBS) -D$(PLATFORM) -sTOTAL_MEMORY=67108864 \
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    --preload-file audio/resources/country.mp3@resources/country.mp3 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			# Compile OTHERS examples
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			others/easings_testbed: others/easings_testbed.c | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
				$(CC) -o $@$(EXT) $< $(CFLAGS) $(INCLUDE_PATHS) $(LDFLAGS) $(LDLIBS) -D$(PLATFORM) | 
			
		
		
	
	
		
			
				| 
				
					
						
					
				
				
				
				 | 
			
			 | 
			
			
 |