Commit Graph

47 Commits

Author SHA1 Message Date
Nikolas
b7eda8159c [build.zig] Make X11 the default display backend instead of choosing at runtime (#5168) 2025-09-03 18:17:07 +02:00
HaxSam
0d29d8d4b1 [build.zig]: a concrete approach to build for web with zig-build (#5157) 2025-08-31 11:32:19 +02:00
annaymone
99c4d4b597 Add pub to compileRaylib (#5143)
This is necessary to allow for using the function in dependent `build.zig`s.
2025-08-25 00:55:13 +02:00
Marcel Ochs
566eb34ff8 Update build.zig 2025-08-21 23:15:05 +02:00
Mike Will
dfa21c2d1f [build][zig] use addLibrary() and set root modules manually
These changes will be required by Zig version 0.15.0.
2025-07-23 11:56:58 -04:00
Maicon
f1600a0c7e Fix issue on zig build emscripten run if the user has not installed emsdk 2025-07-04 10:24:32 +01:00
Maicon Santana
eef1bac3e2 fix misspelling 2025-06-30 19:38:34 +01:00
Maicon
0cae8890b8 Remove -fno-stack-protector as it is not needed and add requestFullscreen on exported methods 2025-06-30 09:54:20 +01:00
Maicon
8f50436dc9 Fix comments 2025-06-29 09:11:41 +01:00
Maicon
6e9c3acaa4 Add run examples using zig and emscripten for web 2025-06-29 09:04:58 +01:00
Nikolas
b26f6d34ba Allow passing options to raygui in build.zig 2025-05-30 14:30:24 +02:00
Lumen Keyes
6f11e27bbe fix typo 2025-05-12 11:19:08 -06:00
Lumen Keyes
dea6a24777 build.zig fix: link EGL for Android 2025-05-12 11:13:32 -06:00
lumenkeyes
35de7b26a4 catch error in build.zig 2025-05-06 10:08:12 -06:00
lumenkeyes
eae3fd83d5 properly detect if abi is android 2025-05-06 10:04:54 -06:00
lumenkeyes
c4b9c0e039 properly generate android triple in build.zig 2025-05-06 09:46:42 -06:00
Jonathan Marler
8d03636132 build.zig: fix building raylib for emscripten
build.zig doesn't support the examples for the emscripten OS but it does
support the raylib library. However, the examples panic if emscripten
is configured which prevents it from building the library. I've replaced
this panic with a fail step to fix this.
2025-04-26 10:37:11 -06:00
Jonathan Marler
3d792f3363 build.zig: run zig fmt 2025-04-11 09:44:44 -06:00
Lumen Keyes
d0cf8961d3 fix typo 2025-04-01 10:54:51 -06:00
Lumen Keyes
33b2829a89 fix android-libc.txt generation
Previously, the libc paths file `android-libc.txt` was written to
the folder from which the user ran `zig build`. This caused
problems when using raylib as a dependency in other zig
projects, since raylib is not built in the project root, but the
`android-libc.txt` file was still generated in the project root. The file
should now be generated in .zig-cache, which should fix the isssue (and
leave the project root folder cleaner).
2025-04-01 10:43:22 -06:00
Lumen Keyes
d52687eeee Add Android Target to build.zig
Added an Android target to the zig build script.
This allows a user to easily build with only Android-supported
libraries.
Library paths are automatically inferred as much as possible.
2025-03-31 13:36:51 -06:00
Jonathan Marler
508ca5c80f [build] only include rglfw.c for glfw platform
It looks like raylib doesn't require rglfw.c if you're using the RGFW
backend.  I'm guessing the same is true for SDL but I haven't tested.
Excluding this one file brings the raylib library down from 6.9 MB to
6.3 MB for RGFW.

However, one of the examples requires the symbols from rglfw.c,
to accomodate this I added a function that will check whether raylib has
already included rglfw and if not include it for that one example.
2025-03-26 21:14:46 -06:00
Jonathan Marler
ac17de5074 [build] remove examples/build.zig, incorporate into main build.zig
Removes the second build.zig in the examples directory and incorporates it
into the main build.zig. This gives the zig build system the data needed to
know if the raylib library needs to be rebuilt when running any example.
2025-03-25 11:05:59 -06:00
Johannes
75b6b825df using addCMacro instead of defineCMacro (#4620)
Co-authored-by: Johannes Rønning <johannes@picterus.com>
2024-12-28 15:57:10 +01:00
Per Hallsmark
d0504800d2 install rcamera.h (#4603)
Signed-off-by: Per Hallsmark <per.hallsmark@bitjuggler.se>
2024-12-15 11:16:08 +01:00
HaxSam
a9aa6b4988 [build.zig] improve build system for zig (#4531)
Is now possible to switch platform

Is now possible to diable raudio, rmodels, and so on

Made getOptions public so it can be used for zig wrappers
2024-11-24 16:22:51 +01:00
kimierik
532167d28b build.zig: fix raygui inclusion in windows crosscompilation (#4489) 2024-11-20 11:26:29 +01:00
kimierik
7053970f7b build.zig: remove raygui from options and re add adding raygui as a (#4485)
function
2024-11-13 18:52:12 +01:00
Tomas Slusny
ce3b121f07 build.zig: Remove addRaylib and fix raygui builds when using raylib as dep (#4475)
- addRaylib just duplicates what adding raylib as dependency already does
  so it do not needs to exist
- move raygui build to standard build process when flag is enabled. this
  works correctly when using raylib as dependency and having raygui as
  dependency as well. problem with previous approach was that raygui was in
  options but it was doing nothing because you had to also use addRaygui for
  it to be effective

Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
2024-11-10 13:47:15 +01:00
Tomas Slusny
53b929cbfb Improve cross-compilation with zig builds (#4468)
- Add xcode_frameworks when cross compiling for mac (ref:
https://github.com/hexops/mach/blob/main/build.zig)
- Add emsdk when cross compiling for wasm (ref:
https://github.com/floooh/sokol-zig/blob/master/build.zig)

Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
2024-11-08 14:31:31 +01:00
Sage Hane
53f7da2506 build.zig: Fix a minor issue with -Dconfig (#4418) 2024-10-22 18:31:26 +02:00
Sage Hane
55249faa58 build.zig: Re-add OpenGL to Linux deps (#4417) 2024-10-22 17:35:08 +02:00
Sage Hane
b89bf0185a build.zig: Better specify Linux dependencies (#4406) 2024-10-22 13:20:09 +02:00
Sage Hane
110ee74875 build.zig: Merge src/build.zig to build.zig (#4393)
* build.zig: Move `src/build.zig` to `build.zig`

* build.zig: Remove uses of `@src`

* build.zig: Update entry point
2024-10-21 12:57:11 +02:00
Sage Hane
d3f86eb957 build.zig: Improve logic (#4375)
* build.zig: Fix `@src` logic

* build.zig: Clarify build error

* build.zig: Add option for enabling `raygui`

* build.zig: Expose `Options` type
2024-10-10 18:56:43 +02:00
freakmangd
e0f6faa151 [build.zig] Drop support for 0.11.0 and use more idiomatic build script code (#3927)
* Remove support for 0.11.0, and make build script more idiomatic
+ remove all 0.11.0 compatibility functions
+ remove most LazyPath .path variants
  + I didn't touch emscripten, I don't know if its relative or absolute
+ change all absolute paths to use .cwd_relative
+ only use the builder allocator
+ have local dependencies use the package manager
+ make adding raygui more flexible
+ use zig-cache for generated wayland files

* Remove support for 0.11.0 in examples/build.zig

* update examples further and add clarifying comment on addRaygui
2024-04-22 09:13:01 +02:00
freakmangd
ba2a103011 [build.zig] Fix local dependency breakage (#3913)
* fix local dependency breakage

* revert accidental change in include path
2024-04-13 23:34:14 +02:00
Andrew Lee
b7141d556e Add shared library build option for build.zig and update to zig 0.12.0-dev.2139 (#3727)
* update build.zig to 0.12.0-dev.2139 and add shared lib option

* add no-sanitize workarounds
2024-01-13 10:46:53 +01:00
freakmangd
482722d881 Update to latest zig 0.12.0dev while keeping 0.11.0 compatibility (#3715)
* update build.zig for latest zig 0.12.0dev while still allowing 0.11.0

* update examples/build.zig and add nicer message for type mismatch
2024-01-11 19:48:37 +01:00
Caleb Barger
ba75a7a23b build.zig updates for 0.11.0 release. (#3501) 2023-11-02 09:14:34 +01:00
Purple4pur
4981acb241 fix zig syntax errors in examples, and make it install executables correctly (#3395) 2023-10-13 19:55:52 +02:00
Ray
0d8a6cfbfa Revert "Update zig build system to zig version 0.11.0 (#3393)"
This reverts commit 540ad99442.
2023-10-10 08:48:55 +02:00
Purple4pur
540ad99442 Update zig build system to zig version 0.11.0 (#3393)
* update build.zig for zig 0.11.0

* fix build.zig in examples to install executable correctly

* discard build.zig, only use src/build.zig, to avoid annoying zig-out path problem

* update zig version note
2023-10-09 13:05:19 +02:00
Gamer-Kold
6b92d71ea1 Reverted commits that deprecated the build.zig files, and added a note to all of them stating version of zig they were using (#3060)
* Revert "Fixed broken build.zig files. Now works with latest stable compiler (as of commit, latest is 0.10.1) (#3045)"

This reverts commit de748dfffe so that zig
build script works with master branch of zig.

* Added a note to build.zig files that denotes what version of zig they have been tested with.

* Standardised the note in the build.zig files
2023-05-15 11:23:36 +02:00
Gamer-Kold
de748dfffe Fixed broken build.zig files. Now works with latest stable compiler (as of commit, latest is 0.10.1) (#3045)
Co-authored-by: Talha Qamar <qamartalha@proton.me>
2023-05-06 12:04:40 +02:00
star-tek-mb
ed2caa1277 fix for latest zig master (#3037) 2023-05-01 11:02:34 +02:00
star-tek-mb
ff70a04bf5 update zig build to latest master (#2910)
also, adds package manager support
2023-02-05 13:03:03 +01:00