Commit Graph

4541 Commits

Author SHA1 Message Date
hristo
88a6f16c9a
Documentation cmake (#1549)
* Documenting the compiler flags

* Moved some android compiler flags and added documentation on them too.

* Some more restructuring.

Removed unnecessary comments that were self described by the code.
Added some more explanations around certain parts of CMake and especially around compiler flags.
2021-01-26 14:34:27 +01:00
raysan5
65b299c6cf Replace tabs by 4 spaces 2021-01-25 17:53:04 +01:00
hristo
f3ce3a6f74
Removing config.h.in file (#1546)
CMake relied on this file for configurations and also was interfering in the regular config.h by having a separate definition if building with CMake. This was not entirely correct so instead we will define compile time definitions separately through CMake (CompileDefinitions.cmake) and also will use the provided EXTERNAL_CONFIG_FLAGS that I found that will not use config.h in through the build process.

I also introduced a new compiler option (CUSTOMIZE_BUILD) that when OFF will use the default config.h and when ON will show other options for redefining your own options.

Fixed an error in rlgl.h where if you have both RLGL_STANDALONE and SUPPORT_VR_SIMULATOR you get a compile time error.
2021-01-25 10:47:53 +01:00
hristo
4bf7b00013
Removing test file. (#1545)
This test file is just testing compilation with the library works correctly but is no longer needed because:
- it is not cross platform
- it taps into the CTest system which is better suited for real unit/integration tests
- it can be incorporated into the pipeline of github actions instead in the future
2021-01-25 10:44:30 +01:00
hristo
1d23e15692
Added a windows and linux simple compile with cmake (#1543)
* Added a windows and linux simple compile with cmake

Will expand on the file but it will be nice to know if they are some extremely breaking changes in the future. cmake.yml will run two task one for linux build and one for windows build essentially checking that both are working. We can add all platforms later.

* Renaming the task to "CMake Builds" and removing the test step.

Commented out the test step as I don't yet know what the two bash files are doing but they are failing the build.
2021-01-24 21:09:01 +01:00
Nikolas
a0d2b64747
Fix issue when trying to build raylib statically (#1544) 2021-01-22 23:43:06 +01:00
Ray
f4f208c4ae ADDED: UploadMesh() #1529
Upload mesh data to GPU and get VAO/VBO identifiers
2021-01-22 12:16:19 +01:00
Ray
721768bdb0 Remove automatic pointer lock on mouse click #1513 2021-01-22 11:57:57 +01:00
Ray
f2c0981c57 Review typo 2021-01-22 11:57:18 +01:00
hristo
05dfbf3cd4
Remove STATIC and SHARED variables. (#1542)
As described in the official documentation https://cmake.org/cmake/help/v3.0/variable/BUILD_SHARED_LIBS.html this flag is global by default and controls if the library will be built as a shared or a static library allowing us to define only one call to the add_library function (without specifying its type). It is also added as an option to be visible in CMake GUI applications.
2021-01-22 00:07:22 +01:00
Ray
18ab694f70 ADDED: SetGamepadMappings() #1506 2021-01-21 14:39:03 +01:00
Ray
677f420bf0 REVIEWED: physac module and examples #1525 2021-01-20 20:55:12 +01:00
Ray
b845f3886a Minor tweak to Makefile 2021-01-20 17:18:45 +01:00
Ray
d20efde49d Merge branch 'master' of https://github.com/raysan5/raylib 2021-01-20 17:07:06 +01:00
Ray
01b7509a39 Review screen capture / gif recording #1540 2021-01-20 17:06:53 +01:00
Ray
407c014eb4 Update Makefile 2021-01-20 17:06:30 +01:00
Ray
5e6eb0b847
Update raylib to v3.5 :P 2021-01-19 12:36:30 +01:00
Rob Loach
3e3e41eaba
Update node-raylib to 3.5 (#1539)
[`node-raylib`](https://github.com/robloach/node-raylib) is now on raylib 3.5.0
2021-01-17 09:31:56 +01:00
Richard Smith
f21aa0352b
Update BINDINGS.md (#1538) 2021-01-16 20:01:28 +01:00
hristo
6cc27e9797
Fix cmake build error dirent (#1536)
* Better ignore support for idea projects.

Added a wildcard at the end because different configurations would have a diffeerent build directory.

* Removed external from being a relative include directory for target raylib.

Fixes #1533
2021-01-16 14:04:01 +01:00
Gil Barbosa Reis
1866be0475
Fix absolute path handling in GetFileName and GetDirectoryPath (#1534) (#1535) 2021-01-16 10:33:13 +01:00
Ray
eb7820b2b0 Review comment 2021-01-15 00:20:35 +01:00
Ray
b7f275efb3 Review warning 2021-01-15 00:20:23 +01:00
Ray
186e52c4d8 REVIEWED: DecompressData()
Corrected bug!
2021-01-14 20:42:01 +01:00
Ray
a3c56d9052
go-raylib updated to 3.5 2021-01-14 19:53:58 +01:00
Dmitry Matveyev
8d3381b490
Add NimraylibNow! wrapper for Nim to bindings [ci skip] (#1532) 2021-01-14 17:09:34 +01:00
hristo
9821725c6b
Big cmake changes (#1514)
* Delete emscripten.cmake

This file is not needed at this point. EMSDK provides a toolchain file that has a lot more things in it and is better supported. Project currently works fine with the documentation provided in Emscripten SDK on how to build projects.

* First pass file separation.

The main two files are cleaner now. Only important things can be seen. Major changes include:
- raylib_static is now the alias instead of raylib
- Repeating segments are removed and pulled into separate files into <root>/cmake
- File is reordered to make more sense
- Installs are better structured
- Library is build into an output directory "raylib" instead of "src"
- All public header files are now set as a public header file
- Source files need to be listed (it is a bad practice to capture them using wildcards and file globs)
- CMakeLists are better commented

* Second pass on the example dirs.

They are quite complex so I'm more hesitant to do major changes. Also it works pretty well. Noticed that I forgot one of the seperated files and added it into src/CMakeLists.txt.

* Returned the header copy as it was convenient to have the public headers copied.

* A better description to the variable RAYLIB_IS_MAIN

Co-authored-by: Rob Loach <robloach@gmail.com>

* Remove debug message

Co-authored-by: Rob Loach <robloach@gmail.com>

* Improvements based on review.

* Simplify the install condition to not be platform specific as it was before.

Co-authored-by: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com>

* Remove some CMAKE variables as they don't affect the build in any way

Co-authored-by: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com>

Co-authored-by: Rob Loach <robloach@gmail.com>
Co-authored-by: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com>
2021-01-13 23:10:02 +01:00
Davidson Francis
3d22709808
Fixes Android builds on Linux environments (#1530)
* simple_game: Configure Make and makefile for Linux environments

* simple_game: Fix build issues on Android plaform with Linux HOST

The Makefile.Android.linux file was out of date with the rest of the
project, so this commit updates the paths, as well as leaving some as
optional, if it is already configured as an environment variable.

In addition, it corrects the build error related to static raylib:
the makefile was trying to generate libmain.so using the path of the
NDK libraries, instead of using those of the Android system, which
resulted in crashes in the generated apk.
2021-01-13 23:07:34 +01:00
Ray
a0a840101c Update miniaudio to v0.10.30 #1518 2021-01-12 22:51:26 +01:00
Ray
5d1d590692 REDESIGN: Compresion API
Now it compresses/decompresses valid DEFLATE streams instead of zlib streams. It uses the minimal and efficient libraries: sdefl/sinfl.
2021-01-12 21:15:11 +01:00
Ray
dfa11e22cf Add comments 2021-01-12 20:25:09 +01:00
Ray
c256b26629 Reorder function 2021-01-12 20:24:58 +01:00
Ray
12e7be63f7 Merge branch 'master' of https://github.com/raysan5/raylib 2021-01-12 20:24:43 +01:00
Ray
477653a0d6 Update Makefile 2021-01-12 20:24:31 +01:00
Dmitry Matveyev
04a1bb1390
Reorder typedefs in physac.h to be in header part (#1528) 2021-01-12 20:12:14 +01:00
Ray
bbc09288bd rlOrtho() reverted change 2021-01-09 12:37:21 +01:00
Jeffery Myers
b76dc06297
It's top-bottom not bottom-top in GL space. (#1517) 2021-01-07 23:13:44 +01:00
Dan J
33ed142306
Add info to readme for conan dependency manager (#1516)
Co-authored-by: resttime <resttime@users.noreply.github.com>
2021-01-07 10:02:48 +01:00
badlydrawnrod
49f9bff260
Fix keyboard state change detection on RPI (#1488)
* Fix keyboard state change detection on RPI

* Rework RaspberryPi evdev keyboard input.

- Extract evdev keyboard handling into PollKeyboardEvents()
- Move keyboard polling to main thread
- Rename EventThreadSpawn() to ConfigureEvdevDevice() as it doesn't necessarily spawn threads
- Remove unused code (KeyEventFifo and lastKeyPressed)

* Replace tabs with 4 spaces.
2021-01-06 20:46:12 +01:00
Kirottu
22da9087b1
Include SUPPORT_DATA_STORAGE flag for building with CMake (#1515)
* Update CMakeOptions.txt

* Update config.h.in
2021-01-06 20:45:32 +01:00
Victor Gallet
a6cd6eedbe
Remove unused condition in 'GenerateMipmaps' function for GRAPHICS_API_OPENGL_11 (#1496) 2021-01-06 13:27:32 +01:00
raysan5
7bd33e4406 Review rlOrtho() to avoid return in the middle of the function
I usually try to avoid any return in the middle of functions, I try to keep them always at the end of the functions.
2021-01-06 13:26:55 +01:00
Jeffery Myers
5d4aada526
Don't create an ortho matrix when the viewport is 0 in any axis. (#1504)
* Don't create an ortho matrix when the viewport is 0 in any axis.
Not all compilers divide by 0 and return inf, some segfault.
The matrix is not used by anything when minimized, so it just needs to not be called.

* Better fix that always ensures the rlgl matrix is always valid

* Better fix that always ensures the rlgl matrix is always valid
2021-01-06 13:21:58 +01:00
hristo
551597d579
Removed a repeating allocation of memory (#1507)
Resolves #1495
This line allocated some memory that was already allocated in the beginning of the function and was essentially creating a leak.
2021-01-03 22:43:09 +01:00
Tornike Goshadze
4bce0f27e6
Update Raylib-cs bindings version (#1508) 2021-01-03 22:20:02 +01:00
Chris
320732ae6b
Update mappings.h in glfw using GenerateMappings.cmake (#1505) 2021-01-02 21:46:39 +01:00
raysan5
d7b4b9e485 Update year to 2021 2021-01-02 18:15:13 +01:00
ayshvab
f5815b781a
Update project.4coder (#1503)
Fix run .cmd for win
2021-01-02 11:36:11 +01:00
ArnautDaniel
10b5e2e73a
Update Gforth and Factor bindings (#1500) 2020-12-31 16:10:29 +01:00
Victor Gallet
57fef97433
Modify the check condition for the screen window height and width. It can't be less than zero because it's an unsigned int (#1497) 2020-12-31 13:29:35 +01:00