mirror of
https://github.com/nicbarker/clay.git
synced 2025-04-18 20:28:01 +00:00
Added separate CMAKE options to include each of the individual examples as well as one global option to include all examples. I set build all examples to OFF as a default since downloading all of SDL 2 and 3 seems excessive. Instead, the demo from the video and the website are turned on by default. A note about these options should probably be added to the ReadMe as well, but I wasn't sure where the logical place to put it would be.
41 lines
1.4 KiB
CMake
41 lines
1.4 KiB
CMake
cmake_minimum_required(VERSION 3.27)
|
|
project(clay)
|
|
|
|
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
|
|
|
|
option(CLAY_INCLUDE_ALL_EXAMPLES "Build all examples" OFF)
|
|
option(CLAY_INCLUDE_DEMOS "Build video demo and website" ON)
|
|
option(CLAY_INCLUDE_CPP_EXAMPLE "Build C++ example" OFF)
|
|
option(CLAY_INCLUDE_RAYLIB_EXAMPLES "Build raylib examples" OFF)
|
|
option(CLAY_INCLUDE_SDL2_EXAMPLES "Build SDL 2 examples" OFF)
|
|
option(CLAY_INCLUDE_SDL3_EXAMPLES "Build SDL 3 examples" OFF)
|
|
|
|
message(STATUS "CLAY_INCLUDE_DEMOS: ${CLAY_INCLUDE_DEMOS}")
|
|
|
|
if(APPLE)
|
|
enable_language(OBJC)
|
|
endif()
|
|
|
|
if(CLAY_INCLUDE_ALL_EXAMPLES OR CLAY_INCLUDE_CPP_EXAMPLE)
|
|
add_subdirectory("examples/cpp-project-example")
|
|
endif()
|
|
if(CLAY_INCLUDE_ALL_EXAMPLES OR CLAY_INCLUDE_DEMOS)
|
|
if(NOT MSVC)
|
|
add_subdirectory("examples/clay-official-website")
|
|
endif()
|
|
add_subdirectory("examples/introducing-clay-video-demo")
|
|
endif ()
|
|
|
|
if(CLAY_INCLUDE_ALL_EXAMPLES OR CLAY_INCLUDE_RAYLIB_EXAMPLES)
|
|
add_subdirectory("examples/raylib-multi-context")
|
|
add_subdirectory("examples/raylib-sidebar-scrolling-container")
|
|
endif ()
|
|
if(CLAY_INCLUDE_ALL_EXAMPLES OR CLAY_INCLUDE_SDL2_EXAMPLES)
|
|
add_subdirectory("examples/SDL2-video-demo")
|
|
endif ()
|
|
if(NOT MSVC AND (CLAY_INCLUDE_ALL_EXAMPLES OR CLAY_INCLUDE_SDL3_EXAMPLES))
|
|
add_subdirectory("examples/SDL3-simple-demo")
|
|
endif()
|
|
|
|
# add_subdirectory("examples/cairo-pdf-rendering") Some issue with github actions populating cairo, disable for now
|