diff options
| author | David Reid <[email protected]> | 2018-05-21 20:26:28 +1000 |
|---|---|---|
| committer | David Reid <[email protected]> | 2018-05-21 20:26:28 +1000 |
| commit | 6d8cc250bd086a6bfdf34effad4b9b3cca3e97a7 (patch) | |
| tree | 95d9092e666ef409dd4cb75a5f836e37acabfdf9 /src/CMakeOptions.txt | |
| parent | 3ca5047c8285318c2385c6b52b2e2b5f12905f0d (diff) | |
| parent | e025e62445913bf1ec9cf075eaaf1dc7374da83c (diff) | |
| download | raylib-6d8cc250bd086a6bfdf34effad4b9b3cca3e97a7.tar.gz raylib-6d8cc250bd086a6bfdf34effad4b9b3cca3e97a7.zip | |
Merge branch 'master' of https://github.com/raysan5/raylib into dr/mini_al
Diffstat (limited to 'src/CMakeOptions.txt')
| -rw-r--r-- | src/CMakeOptions.txt | 45 |
1 files changed, 31 insertions, 14 deletions
diff --git a/src/CMakeOptions.txt b/src/CMakeOptions.txt index 7fc7a915..4ed1a375 100644 --- a/src/CMakeOptions.txt +++ b/src/CMakeOptions.txt @@ -1,13 +1,24 @@ ### Config options ### include(CMakeDependentOption) +set(PLATFORM "Desktop" CACHE STRING "Platform to build for.") +set_property(CACHE PLATFORM PROPERTY STRINGS "Desktop" "Web" "Android" "Raspberry Pi") + +set(OPENGL_VERSION "3.3" CACHE STRING "OpenGL Version to build raylib with") +set_property(CACHE OPENGL_VERSION PROPERTY STRINGS "3.3" "2.1" "1.1" "ES 2.0") + # Shared library is always PIC. Static library should be PIC too if linked into a shared library option(WITH_PIC "Compile static library as position-independent code" OFF) option(SHARED "Build raylib as a dynamic library" OFF) option(STATIC "Build raylib as a static library" ON) option(MACOS_FATLIB "Build fat library for both i386 and x86_64 on macOS" ON) option(USE_AUDIO "Build raylib with audio module" ON) -cmake_dependent_option(USE_OPENAL_BACKEND "Link raylib with openAL instead of mini-al" OFF "USE_AUDIO" OFF) +if(${PLATFORM} MATCHES "Web") + cmake_dependent_option(USE_OPENAL_BACKEND "Link raylib with openAL instead of mini-al" ON "USE_AUDIO" OFF) +else() + cmake_dependent_option(USE_OPENAL_BACKEND "Link raylib with openAL instead of mini-al" OFF "USE_AUDIO" OFF) +endif() + set(USE_EXTERNAL_GLFW OFF CACHE STRING "Link raylib against system GLFW instead of embedded one") set_property(CACHE USE_EXTERNAL_GLFW PROPERTY STRINGS ON OFF IF_POSSIBLE) if(UNIX AND NOT APPLE) @@ -15,16 +26,11 @@ if(UNIX AND NOT APPLE) endif() -set(PLATFORM "Desktop" CACHE STRING "Platform to build for.") -set_property(CACHE PLATFORM PROPERTY STRINGS "Desktop" "Web" "Android" "Raspberry Pi") - -set(OPENGL_VERSION "3.3" CACHE STRING "OpenGL Version to build raylib with") -set_property(CACHE OPENGL_VERSION PROPERTY STRINGS "3.3" "2.1" "1.1" "ES 2.0") - # core.c option(SUPPORT_BUSY_WAIT_LOOP "Use busy wait loop for timing sync instead of a high-resolution timer" ON) option(SUPPORT_CAMERA_SYSTEM "Provide camera module (camera.h) with multiple predefined cameras: free, 1st/3rd person, orbital" ON) option(SUPPORT_DEFAULT_FONT "Default font is loaded on window initialization to be available for the user to render simple text. If enabled, uses external module functions to load default raylib font (module: text)" ON) +option(SUPPORT_SCREEN_CAPTURE "Allow automatic screen capture of current screen pressing F12, defined in KeyCallback()" ON) option(SUPPORT_GIF_RECORDING "Allow automatic gif recording of current screen pressing CTRL+F12, defined in KeyCallback()" ON) option(SUPPORT_GESTURES_SYSTEM "Gestures module is included (gestures.h) to support gestures detection: tap, hold, swipe, drag" ON) option(SUPPORT_MOUSE_GESTURES "Mouse gestures are directly mapped like touches and processed by gestures system" ON) @@ -33,10 +39,9 @@ option(SUPPORT_MOUSE_GESTURES "Mouse gestures are directly mapped like touches a option(SUPPORT_VR_SIMULATOR "Support VR simulation functionality (stereo rendering)" ON) option(SUPPORT_DISTORTION_SHADER "Include stereo rendering distortion shader (shader_distortion.h)" ON) -# models.c -option(SUPPORT_FILEFORMAT_OBJ "Support loading OBJ file format" ON) -option(SUPPORT_FILEFORMAT_MTL "Support loading MTL file format" ON) -option(SUPPORT_MESH_GENERATION "Support procedural mesh generation functions, uses external par_shapes.h library. NOTE: Some generated meshes DO NOT include generated texture coordinates" ON) +# shapes.c +option(SUPPORT_FONT_TEXTURE "Draw rectangle shapes using font texture white character instead of default white texture. Allows drawing rectangles and text with a single draw call, very useful for GUI systems!" ON) +option(SUPPORT_QUADS_DRAW_MODE "Use QUADS instead of TRIANGLES for drawing when possible. Some lines-based shapes could still use lines" ON) # textures.c option(SUPPORT_IMAGE_GENERATION "Support proedural image generation functionality (gradient, spot, perlin-noise, cellular)" ON) @@ -53,6 +58,11 @@ option(SUPPORT_FILEFORMAT_PSD "Support loading PSD as textures" OFF) option(SUPPORT_FILEFORMAT_PKM "Support loading PKM as textures" OFF) option(SUPPORT_FILEFORMAT_PVR "Support loading PVR as textures" OFF) +# models.c +option(SUPPORT_FILEFORMAT_OBJ "Support loading OBJ file format" ON) +option(SUPPORT_FILEFORMAT_MTL "Support loading MTL file format" ON) +option(SUPPORT_MESH_GENERATION "Support procedural mesh generation functions, uses external par_shapes.h library. NOTE: Some generated meshes DO NOT include generated texture coordinates" ON) + # audio.c option(SUPPORT_FILEFORMAT_WAV "Support loading WAV for sound" ON) option(SUPPORT_FILEFORMAT_OGG "Support loading OGG for sound" ON) @@ -60,9 +70,6 @@ option(SUPPORT_FILEFORMAT_XM "Support loading XM for sound" ON) option(SUPPORT_FILEFORMAT_MOD "Support loading MOD for sound" ON) option(SUPPORT_FILEFORMAT_FLAC "Support loading FLAC for sound" OFF) -# shapes.c -option(USE_DEFAULT_FONT_TEXTURE "Draw rectangle shapes using font texture white character instead of default white texture. Allows drawing rectangles and text with a single draw call, very useful for GUI systems!" ON) - # utils.c option(SUPPORT_SAVE_PNG "Support saving image data in PNG file format" ON) option(SUPPORT_SAVE_BMP "Support saving image data in BMP file format" OFF) @@ -86,4 +93,14 @@ if(DEFINED STATIC_RAYLIB) message(DEPRECATION "-DSTATIC_RAYLIB is deprecated. Please use -DSTATIC instead.") endif() +if(${PLATFORM} MATCHES "Desktop" AND APPLE) + if(MACOS_FATLIB) + if (CMAKE_OSX_ARCHITECTURES) + message(FATAL_ERROR "User supplied -DCMAKE_OSX_ARCHITECTURES overrides -DMACOS_FATLIB=ON") + else() + set(CMAKE_OSX_ARCHITECTURES "x86_64;i386") + endif() + endif() +endif() + # vim: ft=cmake |
