summaryrefslogtreecommitdiffhomepage
path: root/cmake
AgeCommit message (Collapse)Author
2023-11-07Add ES 3.0 to CMakeOptions (#3514)mooff
2023-11-06[build]: add uninstall cmake target (#3511)Aniket Teredesai
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-02Add SUPPORT_FILEFORMAT_SVG to cmake (#3284)Asdqwe
2023-08-27Fix CMake extraneous -lglfw (#3266)iacore
Closes #3265. The problem: LIBS_PRIVATE is a list of library names (used by pkg-config), but the shared library of the same name doesn't always exist.
2023-08-27Add missing cmake options (#3267)Asdqwe
2023-08-03Adds CMake option for SUPPORT_CUSTOM_FRAME_CONTROL (#3221)ubkp
2023-07-13fix: cmake option "OPENGL_VERSION" doesn't work (#3170)Roy Qu
2023-05-28Enhanced cmake part for OpenBSD (#3086)RayIT
* Fixed compile on OpenBSD * Changed to not use seperate UNIX for cmake
2023-05-28Fixed compile on OpenBSD (#3085)RayIT
2023-01-21Add packaging for distros with deb- and rpm-based packages. (#2877)KOLANICH
2023-01-10OpenGLES 2.0 support on PLATFORM_DESKTOP (#2840)Go Watanabe
* OpenGLES 2.0 support on PLATFORM_DESKTOP * exmples raylib_opengl_interop desktop GLES2 support * rename gles2.h -> glad_gles2.h
2022-12-11Use GLVND also for old cmake versions (#2826)simendsjo
Use GLVND also when legacy implementations exist for old cmake versions <= 3.10. This is a breaking change for old cmake versions (prior to around 2017-10-05) which will now use GLVND rather than defaulting to libGL. This fixes the following warning when building: CMake Warning (dev) at /gnu/store/qv13zgbmyx0vjav8iiqp772kp6rxvwnd-cmake-3.24.2/share/cmake-3.24/Modules/FindOpenGL.cmake:315 (message): Policy CMP0072 is not set: FindOpenGL prefers GLVND by default when available. Run "cmake --help-policy CMP0072" for policy details. Use the cmake_policy command to set the policy and suppress this warning. FindOpenGL found both a legacy GL library: OPENGL_gl_LIBRARY: /home/simendsjo/.guix-profile/lib/libGL.so and GLVND libraries for OpenGL and GLX: OPENGL_opengl_LIBRARY: /home/simendsjo/.guix-profile/lib/libOpenGL.so OPENGL_glx_LIBRARY: /home/simendsjo/.guix-profile/lib/libGLX.so OpenGL_GL_PREFERENCE has not been set to "GLVND" or "LEGACY", so for compatibility with CMake 3.10 and below the legacy GL library will be used. Call Stack (most recent call first): cmake/LibraryConfigurations.cmake:21 (find_package) src/CMakeLists.txt:46 (include) This warning is for project developers. Use -Wno-dev to suppress it. See https://cmake.org/cmake/help/latest/policy/CMP0072.html Closes #2825
2022-11-29ADDED: Optional support for PNM images (.ppm, .pgm)Ray
2022-11-28Fix wrong compile definition (#2815)Daijiro Fukuda
2022-10-27Fix deprecation error on android api higher than 23 (#2778)Angga Permana
2022-08-09Fix #2621: Set CMP0054 policy to NEW and appropriately quote ${PLATFORM} (#2622)archie2x
2022-07-26add: cmake config include guard (#2592)MyUncle
2022-07-05WARNING: BREAKING: REMOVED: `*StorageValue()` functionsRay
Those functions were platform dependent and user has no control over the file created. They have been removed from raylib and just moved to `core_storage_values` example.
2022-06-24Fix CMake build on Raspberry Pi OS Bullseye (#2548)Richard Smith
2022-05-20Fixed Android CMake build error (#2486)Patrick
`android_native_app_glue.c` wasn't appended to the `raylib_sources` as other libraries were. Co-authored-by: Patrick Martin <[email protected]>
2022-04-05Fix OpenGL 4.3 graphics option in CMake (#2427)GoldenThumbs
2022-03-08Update raylib-config.cmake (#2374)Marco G. Maia
Updated cmake to windows users. So they can `find_package(raylib [...])` with exported target as raylib instead of ${raylib_LIBRARIES}, etc
2022-02-05Make audio examples compile with external glfw on Linux (#2329)locriacyber
2022-01-29Add missing defines to CUSTOMIZE_BUILD block (#2318)Macoy Madson
This fixes compilation and linking errors when CUSTOMIZE_BUILD is ON. Any option wasn't actually applied if it wasn't in this list. I also added a message which makes it a bit easier to confirm you have successfully enabled an option.
2022-01-08Fixed Compiling Raylib for android Using cmake (#2270)hero2002
* Fixed Compiling Raylib for android Using cmake * improved the cmake config for android so it don't conflict * improved the cmake config for android so it don't conflict
2021-09-10Add find opengl for widnows too. (#1985)Hristo Stamenov
* Add find opengl for widnows too. * Also fix set LIBS_PRIVATE to bi similar to linux and apple targets
2021-06-09There no longer is a library glfw_objlib and now it is only glfw. (#1818)Hristo Stamenov
2021-05-25Bumped minimum GLFW vers in cmake (#1788)Ben Beshara
2021-04-09Enable DRM platform cross compilation support (#1717)Jon
* Log a warning if chdir failed, use agnostic CHDIR instead of chdir * Only include libdrm directory explicitly when not cross compiling
2021-03-08Added SUPPORT_STANDARD_FILEIO flag support for the CMake build system (#1638)Kirottu
* Update CMakeOptions.txt * Update config.h.in * Added SUPPORT_STANDARD_FILEIO to CMakeOptions.txt * Fixed typo * Added SUPPORT_STANDARD_FILEIO to CompileDefinitions.cmake Co-authored-by: KirottuM <[email protected]>
2021-01-26Documentation cmake (#1549)hristo
* 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-25Removing config.h.in file (#1546)hristo
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-25Removing test file. (#1545)hristo
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-22Fix issue when trying to build raylib statically (#1544)Nikolas
2021-01-22Remove STATIC and SHARED variables. (#1542)hristo
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-13Big cmake changes (#1514)hristo
* 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 <[email protected]> * Remove debug message Co-authored-by: Rob Loach <[email protected]> * Improvements based on review. * Simplify the install condition to not be platform specific as it was before. Co-authored-by: Alexander Neumann <[email protected]> * Remove some CMAKE variables as they don't affect the build in any way Co-authored-by: Alexander Neumann <[email protected]> Co-authored-by: Rob Loach <[email protected]> Co-authored-by: Alexander Neumann <[email protected]>
2020-12-13Fixed the build for web using CMake. (#1452)hristo
* Fixed the build for web using CMake. I found that the build for me was failing and I added some if defined checks in the core.c file where the glfwSetWindowAttrib was used. (error: implicit declaration of function 'glfwSetWindowAttrib' is invalid in C99 [-Werror,-Wimplicit-function-declaration]) I also changed some values in the toolchain file so that it correctly uses the .bat files when on windows. * Cleaned up the additional variables (they are not important) * Added more improvements to cmakelists Added the option to use the system provided Emscripten toolchain to be more uniform with other libraries. Fixed and issue which prevented example being built from cmake and also building with html extensions properly. * Fixed ENUM to STRING because of a missed warning
2020-09-25Add join_paths and join prefix with include/lib dirs (#1383)Adam Griffiths
Fixes #1380: incorrect usage of CMake paths which causes issues on some more complicated environments (NixOS especially).
2020-04-08Revert "CMake: Don't create symlinks on unsupporting file systems (#539)"Ahmad Fatoum
As noted in #539, the symlink check was to support compiling raylib on VirtualBox vboxfs as no symlinks are supported there. With me using Linux as daily driver outside VirtualBox now, this 'feature' is most likely unused by anyone, but still annoys other users (#791). Just revert it and be done with it. If there are really others building raylib on vboxfs or a similarly crippled file system under Linux, they should now step forward when their build breaks. This reverts commit b8ca51fd01a68b9b6040f8c3c631eedefd7d7735.
2020-04-08ignore symlink creation failure errorShy
2019-07-24CMake: fix dependency build with -Draylib_USE_STATIC_LIBS=ONAhmad Fatoum
Fixes #899, which made apparent three issues with how static libraries are handled in raylib-config.cmake: - XPREFIX is set before pkg_check_modules, which causes a duplicate STATIC in variables, e.g. PC_RAYLIB_STATIC_STATIC_.* - raylib_static is searched for, but no library exists with that name - raylib_LDFLAGS isn't populated properly This commit fixes these.
2019-04-09Take care of raylib_USE_STATIC_LIBS when calling find_librarymyd7349
2019-04-09Fix CMake support on Win32myd7349
2018-07-29CMake: Major cleanup to support find_package(raylib)Ahmad Fatoum
Remove that link_libraries_to_executable() hack and defines a proper raylib target that can be used with target_link_libraries. The same target is also available for external (user) code by using find_package(raylib). This results in: - Remove hardcoded build directories from examples and games CMakeLists.txt - Allow rlgl_standalone and other special examples to be built easily - Allow CMake projects to find_package(raylib instead of fiddling with pkg-config - Makes code a little more maintainable - Fixes #471, #606. - Makes code less confusing by removing the double use of PLATFORM (#584). Note that this is still not _The Right Way_(TM), because normally raylib-config.cmake (or its includes) would be automatically generated. I didn't manage to get that to work though, so I went the easier route of just wrapping pkg_check_modules for consumption by find_package.
2018-07-29Travis CI: Add OpenAL-ConfigurationAhmad Fatoum
2018-07-23CMake: Fail when -D{PLATFORM,OPENGL_VERSION}=INVALID_VALUEAhmad Fatoum
as well as -DUSE_EXTERNAL_GLFW. Nips issues like #584 in the bud.
2018-07-03Travis CI: Add test case for pkg-configAhmad Fatoum
2018-07-03CMake: Reuse libraries found by glfw CMake configAhmad Fatoum
if (${PLATFORM} MATCHES "Desktop") target_link_libraries(${RAYLIB}_shared glfw ${GLFW_LIBRARIES}) was never true because PLATFORM STREQUAL "PLATFORM_DESKTOP"... This fixes #551 and makes the changes suggested in #552 (commited as 965cc8ab) unnecessary.
2018-06-23Added support DragonFly os from BSD family[email protected]