summaryrefslogtreecommitdiffhomepage
path: root/src/Makefile
AgeCommit message (Collapse)Author
2024-07-01WARNING: UPDATE: Starting works on `raylib 5.5` releaseRay
2024-07-01WARNING: BREAKING: Renamed `PLATFORM_DESKTOP` to `PLATFORM_DESKTOP_GLFW`Ray
This could potentially be a breaking change, for consistency, now every possible desktop backend has the proper name assigned: GLFW, SDL, RGFW raylib build system has been reviewed to fallback to `PLATFORM_DESKTOP_GLFW` by default when `PLATFORM_DESKTOP` defined
2024-06-10Update Makefile (#4054)Lázaro Albuquerque
Since the flag CUSTOM_CFLAGS should allow users customize things, in particular the optimization level, I figured it should come after other default ones. Based on: "If you use multiple -O options, with or without level numbers, the last such option is the one that is effective." Source: https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html
2024-05-09Fix Makefile issues (RGFW) (linux) (macOS) (#3969)Colleague Riley
Co-authored-by: ColleagueRiley <[email protected]>
2024-05-07make RGFW a custom platform (#3941)Colleague Riley
* fix minor bugs and errors (x86) for the RGFW platform, update RGFW platform license, update makefile info for RGFW platform * revert * (RGFW) (winapi) fix mouse hide bug when cursor changes * ensure PLATFORM_SHELL is defined (PLATFORM_RGFW) --------- Co-authored-by: ColleagueRiley <[email protected]>
2024-03-14Fix GLFW runtime platform detection (#3863)Alexandre Almeida
* Fix GLFW runtime platform detection * Add libwayland-dev package to workflows * Add libxkbcommon-dev package to workflows * Add libwayland-bin package to codeql.yml * Add libwayland-client0 and libwayland-cursor0 packages to codeql.yml * Use libwayland-dev in codeql.yml * Add libxkbcommon-dev to codeql.yml * Remove libwayland-bin from linux.yml and linux_examples.yml (libwayland-dev includes it as a dependency) --------- Co-authored-by: Ray <[email protected]>
2024-02-29Update GLFW to 3.4 (#3827)Alexandre Almeida
* Update GLFW to 3.4 (draft) * Add _glfwConnectNull() function to rglfw.c * Update rglfw.c * Update Makefile * Makefile: Replace USE_WAYLAND_DISPLAY with DISABLE_WAYLAND * Revert "Makefile: Replace USE_WAYLAND_DISPLAY with DISABLE_WAYLAND" This reverts commit 9e79abde786bf797d8133fd95e8a475cf6e2b066. * GlfwImport.cmake: Replace GLFW_USE_WAYLAND with GLFW_BUILD_WAYLAND * Update rglfw.c * Output platform selected by GLFW to TRACELOG * GLFW has removed Mir support
2024-02-22Remove all uses of deps/mingw (#3805)Peter0x44
The purpose of this directory in GLFW is to provide some headers that "mingw.org" doesn't. Raylib has long been unable to build with mingw.org due to using certain symbols that aren't exposed in their headers. (_ftelli64 and _access, among others.). Mingw-w64 already has the necessary headers included, and doesn't need any of these external implementations. For some reason, this also causes the following error when building with Visual Studio's clang: clang -c rglfw.c -Wall -D_GNU_SOURCE -DPLATFORM_DESKTOP -DGRAPHICS_API_OPENGL_33 -Wno-missing-braces -Werror=pointer-arith -fno-strict-aliasing -std=c99 -O1 -Werror=implicit-function-declaration -I. -Iexternal/glfw/include -Iexternal/glfw/deps/mingw In file included from rglfw.c:61: In file included from ./external/glfw/src/init.c:30: In file included from ./external/glfw/src/internal.h:331: In file included from ./external/glfw/src/platform.h:31: In file included from ./external/glfw/src/win32_platform.h:70: external/glfw/deps/mingw\xinput.h:227:26: error: a parameter list without types is only allowed in a function definition 227 | void WINAPI XInputEnable(WINBOOL); | If the last -Iexternal/glfw/deps/mingw is removed, the build works fine. So, this workaround causes other problems, while not actually helping raylib. https://github.com/glfw/glfw/blob/0bb605cd797e4d63709495f4074ec59362064ab4/src/CMakeLists.txt#L272-L279 GLFW's CMakeLists.txt first checks if either dinput.h or xinput.h are provided by the toolchain, before telling the compiler to search for headers in that directory. For EVERY compiler that can build raylib, this is true. In summary: This directory causes issues when building with some compilers, and every toolchain that needs this workaround can't build raylib anyway.
2024-02-05Reverted Makefile `GL_ENABLE_GET_PROC_ADDRESS` #3713Ray
2024-02-05REVIEWED: PLATFORM_WEB build flags, added GL_ENABLE_GET_PROC_ADDRESSRay
Reviewed flags formating
2024-01-05Reviewed Makefile SDL2 expected include/lib paths #3705Ray
2024-01-02Update copyright to 2024Ray
2023-12-03Fix Wrong Makefile flag #3593Ray
2023-11-28Hide unneeded internal symbols when building raylib as an so or dylib (#3573)Peter0x44
2023-11-25Corrected the path of android ndk toolchains for OSX platforms (#3574)Emmanuel Méra
2023-11-05Update Makefile (#3509)JupiterRider
2023-11-02Comments tweaksRay
2023-10-29ADDED: Support for SDL building on MakefileRay
2023-10-29Remove physac library from raylib buildingRay
At this moment, physac is an external unmaintained library, better move out of raylib.
2023-10-22Review prerequisites of rcore.c (#3453)Peter0x44
rcore_desktop_sdl.c was not present in the list of prerequisites this patch changes them to use a wildcard, so any other platforms added in future will be tracked properly
2023-10-19Update MakefileRay
2023-10-18REVIEWED: `raylib 5.0-dev` version for a future releaseRay
2023-10-16 Make sure rcore.o gets compiled in more situations (#3423)Peter0x44
Currently doing the following: ``` make touch rcore_desktop.c make ``` Will not result in rcore.o getting compiled again, despite that rcore_desktop.c has changed This commit resolves that
2023-10-08WARNING: `rcore` module split per-platform **BIG CHANGE** (#3388)Ray
* Submodules (#3311) * Check in current state * Add submodules to Makefile and clean up some imports * Start moving InitGraphicsDeivce * Move android_main and CloseWindow() out of rcore * Move WindowShouldClose out of rcore * Move IsWindowHidden out of rcore * Move IsWindowMinimized out of rcore * Move IsWindowMaximized, IsWindowFocused and IsWindowResized out of rcore * Move ToggleFullscreen out of rcore * Move MaximizeWindow, MinimizeWindow and RestoreWindow out of rcore * Move 13 functions out of rcore: ToggleBorderlessWindowed SetWindowState ClearWindowState SetWindowIcon SetWindowIcons SetWindowTitle SetWindowPosition SetWindowMonitor SetWindowMinSize SetWindowMaxSize SetWindowSize SetWindowOpacity SetWindowFocused * Minor clean up, revert makefile change, include submodules directly in rcore * Fix makefile comment * Remove rcore.h from Makefile * Remove debug include * Move 18 functions from rcore to submodules GetWindowHandle GetMonitorCount GetCurrentMonitor GetMonitorPosition GetMonitorWidth GetMonitorHeight GetMonitorPhysicalHeight GetMonitorRefreshRate GetWindowPosition GetWindowScaleDPI GetMonitorName SetClipboardText GetClipboardText ShowCursor HideCursor EnableCursor DisableCursor GetTime * Move TakeScreenshot, OpenURL, GetGamepadName out of rcore into submodules * remove debugging #defines * Move GetMonitorPhysicalWidth from rcore to submodule * Move GetGamepadAxisCount from rcore * Move SetGamepadMappings out of rcore * Move GetMouseX, GetMouseY, GetMousePosition out of rcore * Move SetMousePosition out of rcore * Move GetMouseWheelMove out of rcore * Move the last functions out of rcore * Move shared function defs and some global var to rcore.h * Clean up rcore.c and rcore.h a little more * Remove unnecessary #define --------- Co-authored-by: MichaelFiber <[email protected]> * REVIEWED: `PLATFORM_DESKTOP` Windows building * Revert "REVIEWED: `PLATFORM_DESKTOP` Windows building" This reverts commit 71a12171f768eb25053ef908732b4ce8fdf802f7. * Reviewed Windows building * [split] Fix compilation for web (and desktop) (#3329) * Fix compilation for web * Remove EM_ASM_INT from core_input_gestures_web example * Fix raymath undefined symbols for desktop and web * Remove raylib_opengl_interop from examples Makefile * Revert previous commit (8651c78) * Fix TraceLog for web and desktop * [split] `rcore`, `rcore_web` and `rcore_desktop` changes (batch 2) (#3334) * Fix formatting * Reapply commit 9d230d7 (#3305) that was missing * Reapplies commits 719365f (#3309) and 8a1779b (#3312) that were missing * Reapply commit 5c9cc3f (#3323) that was missing * Reapply commit a2b3b1e that was missing * Revert commit cef25c6 to fix macro redefined warning * Move rcore.h #include to after config.h to fix macro redefinitions warnings * [split] `rcore`, `web`, `desktop`, `android` changes (batch 3) (#3338) * First pass to remove unneeded platform macros for web * Second pass to remove unneeded platform macros for web * Move GetTouchX, GetTouchY, GetTouchPosition from rcore to web, desktop, android * Move SetMouseCursor from rcore to android, desktop, web * [split] `rcore`, `web`, `desktop`, `android` changes (batch 4) (#3343) * Fix ToggleBorderlessWindowed duplicated glfwSetWindowSize calls * First pass to remove unneeded platform macros for android * Second pass to remove unneeded platform macros for android * Remove unneeded platform macros for desktop * Relocate GetGamepadName and update SetGamepadMappings on android, desktop, web * Add missing comment to web * [split] `rcore`, `web`, `desktop`, `android` changes (batch 5) (#3345) * Move SetExitKey from core to android, desktop, web * Move some callbacks from core to desktop and web * Relocate emscripten callbacks on web * Relocate android callbacks on android * Revert "Relocate android callbacks on android" This reverts commit bbdbecc01ea7f871dae56019724386e73611c69c. * Updates UnloadVrStereoConfig on rcore * Update SetClipboardText on android * Fix screenMin/Max default values for android * [split] `rcore`, `drm` changes (#3347) * Tweak makefiles for PLATFORM_DRM and move rcore_drm's dependencies to rcore.h * Move drm functions to rcore_drm.c * Fix a typo in rcore.c * Add SetExitKey to rcore_drm.c --------- Co-authored-by: MichaelFiber <[email protected]> * Fix compilation for android (#3360) * Fix android include (#3364) * Reviewed platform split #3313 - Added file headers info - Added TRACELOG message for unimplemented functions - Reviewed code formatting and organization - Several code tweaks * REVIEWED: `GetDirectoryPath()` --------- Co-authored-by: MichaelFiber <[email protected]> Co-authored-by: MichaelFiber <[email protected]> Co-authored-by: ubkp <[email protected]>
2023-09-07Remove PLATFORM_RPI (#3232)MichaelFiber
* Remove PLATFORM_RPI * remove build artifacts --------- Co-authored-by: MichaelFiber <[email protected]> Co-authored-by: Ray <[email protected]>
2023-09-07Update Makefile : clean raygui.c & physac.c (#3296)SuperUserNameMan
2023-07-29Fix android soname in src/Makefile (#3211)ndytts
2023-07-26Fix misleading indentation in src/Makefile (#3202)ashn
2023-07-16Revert "Makefile change for cross compiling. (#3176)"Ray
This reverts commit 70286c7cdc6d972c63704ad957c18065f6a44cfe.
2023-07-16Makefile change for cross compiling. (#3176)Michael Anghelone
Working from wsl and compiling for windows this change makes it much easier to compile a static library for windows on arm. To compile a static library for windows on arm: ``` make PLATFORM=PLATFORM_DESKTOP TARGET_OS=WINDOWS CROSS_CC=/llvm/bin/aarch64-w64-mingw32-gcc CROSS_AR=/llvm/bin/aarch64-w64-mingw32-ar ``` This does not work to compile a shared library yet, only static.
2023-06-12Continuation of support for ES3/WebGL2 (#3107)Chema Guerra
* Continuation of support for ES3/WebGL2 * GetTouchPointState() * Amends to the WebGL2 PR --------- Co-authored-by: root <root@DESKTOP-GLOV9QV> Co-authored-by: chemguerra <[email protected]>
2023-05-30cross compilation for PLATFORM_DRM (#3091)A Billy
* added cross compilation options for DRM * fixed identation
2023-03-18Update Makefile comment to indicate arm64 as a supported Linux desktop ↵ashn
platform (#2965)
2023-03-13Updated Makefiles to include all missing new examplesRay
2023-01-25Add wayland support (#2883)Antonis Geralis
2023-01-21Fix android sound issue #2118 (#2875)Antonis Geralis
2023-01-01Update year to 2023Ray
2022-11-10Fix Makefile emscripten path (#2785)Julianiolo
2022-08-28Reviewed GLFW compilation requirements on Linux: `_GNU_SOURCE`Ray
Reasons to NOT define `_GNU_SOURCE`: - access to lots of nonstandard GNU/Linux extension functions - access to traditional functions which were omitted from the POSIX standard (often for good reason, such as being replaced with better alternatives, or being tied to particular legacy implementations) - access to low-level functions that cannot be portable, but that you sometimes need for implementing system utilities like mount, ifconfig, etc. - broken behavior for lots of POSIX-specified functions, where the GNU folks disagreed with the standards committee on how the functions should behave and decided to do their own thing.
2022-08-28Update MakefileRay
2022-08-28Reviewed GLFW issue with `ppoll()` functionRay
2022-08-28Avoid error on `implicit-function-declaration`Ray
2022-08-22ADDED: `-latomic` library on Linux (only required for ARM32)Ray
This linkage is only required for arm 32bit but I don't know how to detect that specific architecture in the Makefile...
2022-08-21Fix PATH for Web target (#2647)Rodrigo Escar
2022-08-02Added note for multi-threading web compilationRay
2022-08-02Update version to 4.2Ray
2022-07-09Remove unneded TABSRay
2022-07-09Allow DLL creation using TCC (#2569)Audi Nugraha
* Fix Undefined Symbol `_ftelli64` * Add files via upload * Update raylib.h * Update raylib.h
2022-07-08Fix fat universal (arm64 + x86_64) macos Github Actions build (#2567)Richard Smith
* test if clang supports multiple targets * didnt work, so trying lipo to join separate targets together * add CUSTOM_LDFLAGS to try to fix arm64 mac dynamic build * fix sym links * try again to fix sym links * auto extract raylib version numbers from makefile * fix macos missing gnu grep * dont use custom name for raylib dlls
2022-06-25Updated PLATFORM_RPI info #2547Ray