aboutsummaryrefslogtreecommitdiff
path: root/deps/raylib/CMakeLists.txt
diff options
context:
space:
mode:
authorbonmas14 <bonmas14@gmail.com>2025-09-20 22:28:15 +0300
committerbonmas14 <bonmas14@gmail.com>2025-09-20 22:28:15 +0300
commitcdda4c4182c9ee068567529715e4a5c68a8efb58 (patch)
tree38a63f62a64018a2d35fc33354f8589fd33b7514 /deps/raylib/CMakeLists.txt
downloadc_wizard-cdda4c4182c9ee068567529715e4a5c68a8efb58.tar.gz
c_wizard-cdda4c4182c9ee068567529715e4a5c68a8efb58.zip
Init commit v1.0
Diffstat (limited to 'deps/raylib/CMakeLists.txt')
-rw-r--r--deps/raylib/CMakeLists.txt64
1 files changed, 64 insertions, 0 deletions
diff --git a/deps/raylib/CMakeLists.txt b/deps/raylib/CMakeLists.txt
new file mode 100644
index 0000000..678d8e3
--- /dev/null
+++ b/deps/raylib/CMakeLists.txt
@@ -0,0 +1,64 @@
+cmake_minimum_required(VERSION 3.5)
+project(raylib)
+
+# Avoid excessive expansion of variables in conditionals. In particular, if
+# "PLATFORM" is "DRM" then:
+#
+# if (${PLATFORM} MATCHES "DRM")
+#
+# may expand e.g to:
+#
+# if (/usr/lib/aarch64-linux-gnu/libdrm.so MATCHES "DRM")
+#
+# See https://cmake.org/cmake/help/latest/policy/CMP0054.html
+cmake_policy(SET CMP0054 NEW)
+
+# Makes a hidden visibility preset on a static lib respected
+# This is used to hide glfw's symbols from the library exports when building an so/dylib
+# See https://cmake.org/cmake/help/latest/policy/CMP0063.html
+cmake_policy(SET CMP0063 NEW)
+
+# Directory for easier includes
+# Anywhere you see include(...) you can check <root>/cmake for that file
+list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
+
+# RAYLIB_IS_MAIN determines whether the project is being used from root
+# or if it is added as a dependency (through add_subdirectory for example).
+if ("${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_CURRENT_SOURCE_DIR}")
+ set(RAYLIB_IS_MAIN TRUE)
+else()
+ set(RAYLIB_IS_MAIN FALSE)
+endif()
+
+# Sets compiler flags and language standard
+include(CompilerFlags)
+
+# Registers build options that are exposed to cmake
+include(CMakeOptions.txt)
+
+if (UNIX AND NOT APPLE)
+ if (NOT GLFW_BUILD_WAYLAND AND NOT GLFW_BUILD_X11)
+ MESSAGE(FATAL_ERROR "Cannot disable both Wayland and X11")
+ endif()
+endif()
+
+# Main sources directory (the second parameter sets the output directory name to raylib)
+add_subdirectory(src raylib)
+
+# Uninstall target
+if(NOT TARGET uninstall)
+ configure_file(
+ "${CMAKE_CURRENT_SOURCE_DIR}/cmake/Uninstall.cmake"
+ "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake"
+ IMMEDIATE @ONLY)
+
+ add_custom_target(uninstall
+ COMMAND ${CMAKE_COMMAND} -P ${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake)
+endif()
+
+if (${BUILD_EXAMPLES})
+ MESSAGE(STATUS "Building examples is enabled")
+ add_subdirectory(examples)
+endif()
+
+enable_testing()