
* 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>
32 lines
844 B
CMake
Executable File
32 lines
844 B
CMake
Executable File
cmake_minimum_required(VERSION 3.0)
|
|
project(raylib)
|
|
|
|
# Directory for easier includes
|
|
set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
|
|
|
|
# RAYLIB_IS_MAIN determines whether the project is being used from root, or as a dependency.
|
|
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)
|
|
|
|
# Checks a few environment and compiler configurations
|
|
include(BuildOptions)
|
|
|
|
# Main sources directory (the second parameter sets the output directory name to raylib)
|
|
add_subdirectory(src raylib)
|
|
|
|
if (${BUILD_EXAMPLES})
|
|
MESSAGE(STATUS "Building examples is enabled")
|
|
add_subdirectory(examples)
|
|
endif()
|
|
|
|
enable_testing()
|