diff --git a/src/config.h b/src/config.h index 0013c131..a8b5ea19 100644 --- a/src/config.h +++ b/src/config.h @@ -1,78 +1,129 @@ -/* Edit to control what features Makefile'd raylib is compiled with. */ -#ifdef RAYLIB_CMAKE /* Edit CMakeOptions.txt for CMake instead! */ -#include "cmake/config.h" +/********************************************************************************************** +* +* raylib configuration flags +* +* This file defines all the configuration flags for the different raylib modules +* +* LICENSE: zlib/libpng +* +* Copyright (c) 2018 Ahmad Fatoum & Ramon Santamaria (@raysan5) +* +* This software is provided "as-is", without any express or implied warranty. In no event +* will the authors be held liable for any damages arising from the use of this software. +* +* Permission is granted to anyone to use this software for any purpose, including commercial +* applications, and to alter it and redistribute it freely, subject to the following restrictions: +* +* 1. The origin of this software must not be misrepresented; you must not claim that you +* wrote the original software. If you use this software in a product, an acknowledgment +* in the product documentation would be appreciated but is not required. +* +* 2. Altered source versions must be plainly marked as such, and must not be misrepresented +* as being the original software. +* +* 3. This notice may not be removed or altered from any source distribution. +* +**********************************************************************************************/ + +#define RAYLIB_VERSION "1.9.7-dev" + +// Edit to control what features Makefile'd raylib is compiled with +#if defined(RAYLIB_CMAKE) + // Edit CMakeOptions.txt for CMake instead + #include "cmake/config.h" #else -// text.c -/* Default font is loaded on window initialization to be available for the user to render simple text. NOTE: If enabled, uses external module functions to load default raylib font (module: text) */ -#define SUPPORT_DEFAULT_FONT 1 -/* Selected desired fileformats to be supported for loading. */ -#define SUPPORT_FILEFORMAT_FNT 1 -#define SUPPORT_FILEFORMAT_TTF 1 -// textures.c -/* Selecte desired fileformats to be supported for image data loading. */ -#define SUPPORT_FILEFORMAT_PNG 1 -#define SUPPORT_FILEFORMAT_DDS 1 -#define SUPPORT_FILEFORMAT_HDR 1 -#define SUPPORT_FILEFORMAT_KTX 1 -#define SUPPORT_FILEFORMAT_ASTC 1 -/* #undef SUPPORT_FILEFORMAT_BMP */ -/* #undef SUPPORT_FILEFORMAT_TGA */ -/* #undef SUPPORT_FILEFORMAT_JPG */ -/* #undef SUPPORT_FILEFORMAT_GIF */ -/* #undef SUPPORT_FILEFORMAT_PSD */ -/* #undef SUPPORT_FILEFORMAT_PKM */ -/* #undef SUPPORT_FILEFORMAT_PVR */ +//------------------------------------------------------------------------------------ +// Module: core - Configuration Flags +//------------------------------------------------------------------------------------ +// Camera module is included (camera.h) and multiple predefined cameras are available: free, 1st/3rd person, orbital +#define SUPPORT_CAMERA_SYSTEM 1 +// Gestures module is included (gestures.h) to support gestures detection: tap, hold, swipe, drag +#define SUPPORT_GESTURES_SYSTEM 1 +// Mouse gestures are directly mapped like touches and processed by gestures system +#define SUPPORT_MOUSE_GESTURES 1 +// Use busy wait loop for timing sync, if not defined, a high-resolution timer is setup and used +#define SUPPORT_BUSY_WAIT_LOOP 1 +// Allow automatic gif recording of current screen pressing CTRL+F12, defined in KeyCallback() +#define SUPPORT_GIF_RECORDING 1 -/* Support multiple image editing functions to scale, adjust colors, flip, draw on images, crop... If not defined only three image editing functions supported: ImageFormat(), ImageAlphaMask(), ImageToPOT() */ -#define SUPPORT_IMAGE_MANIPULATION 1 -/* Support proedural image generation functionality (gradient, spot, perlin-noise, cellular) */ -#define SUPPORT_IMAGE_GENERATION 1 +//------------------------------------------------------------------------------------ +// Module: rlgl - Configuration Flags +//------------------------------------------------------------------------------------ +// Support VR simulation functionality (stereo rendering) +#define SUPPORT_VR_SIMULATOR 1 +// Include stereo rendering distortion shader (shader_distortion.h) +#define SUPPORT_DISTORTION_SHADER 1 -// rlgl.c -/* Support VR simulation functionality (stereo rendering) */ -#define SUPPORT_VR_SIMULATOR 1 -/* Include stereo rendering distortion shader (shader_distortion.h) */ -#define SUPPORT_DISTORTION_SHADER 1 -// core.c -/* Camera module is included (camera.h) and multiple predefined cameras are available: free, 1st/3rd person, orbital */ -#define SUPPORT_CAMERA_SYSTEM 1 -/* Gestures module is included (gestures.h) to support gestures detection: tap, hold, swipe, drag */ -#define SUPPORT_GESTURES_SYSTEM 1 -/* Mouse gestures are directly mapped like touches and processed by gestures system. */ -#define SUPPORT_MOUSE_GESTURES 1 -/* Use busy wait loop for timing sync, if not defined, a high-resolution timer is setup and used */ -#define SUPPORT_BUSY_WAIT_LOOP 1 -/* Allow automatic gif recording of current screen pressing CTRL+F12, defined in KeyCallback() */ -#define SUPPORT_GIF_RECORDING 1 +//------------------------------------------------------------------------------------ +// Module: textures - Configuration Flags +//------------------------------------------------------------------------------------ +// Selecte desired fileformats to be supported for image data loading +#define SUPPORT_FILEFORMAT_PNG 1 +//#define SUPPORT_FILEFORMAT_BMP 1 +//#define SUPPORT_FILEFORMAT_TGA 1 +//#define SUPPORT_FILEFORMAT_JPG 1 +//#define SUPPORT_FILEFORMAT_GIF 1 +//#define SUPPORT_FILEFORMAT_PSD 1 +#define SUPPORT_FILEFORMAT_DDS 1 +#define SUPPORT_FILEFORMAT_HDR 1 +#define SUPPORT_FILEFORMAT_KTX 1 +#define SUPPORT_FILEFORMAT_ASTC 1 +//#define SUPPORT_FILEFORMAT_PKM 1 +//#define SUPPORT_FILEFORMAT_PVR 1 -// audio.c -/* Desired fileformats to be supported for loading. */ -#define SUPPORT_FILEFORMAT_WAV 1 -#define SUPPORT_FILEFORMAT_OGG 1 -#define SUPPORT_FILEFORMAT_XM 1 -#define SUPPORT_FILEFORMAT_MOD 1 -/* #undef SUPPORT_FILEFORMAT_FLAC */ +// Support multiple image editing functions to scale, adjust colors, flip, draw on images, crop... +// If not defined only three image editing functions supported: ImageFormat(), ImageAlphaMask(), ImageToPOT() +#define SUPPORT_IMAGE_MANIPULATION 1 +// Support proedural image generation functionality (gradient, spot, perlin-noise, cellular) +#define SUPPORT_IMAGE_GENERATION 1 -// models.c -/* Selected desired fileformats to be supported for loading. */ -#define SUPPORT_FILEFORMAT_OBJ 1 -#define SUPPORT_FILEFORMAT_MTL 1 -/* Support procedural mesh generation functions, uses external par_shapes.h library - * NOTE: Some generated meshes DO NOT include generated texture coordinates - */ -#define SUPPORT_MESH_GENERATION 1 +//------------------------------------------------------------------------------------ +// Module: text - Configuration Flags +//------------------------------------------------------------------------------------ +// Default font is loaded on window initialization to be available for the user to render simple text +// NOTE: If enabled, uses external module functions to load default raylib font +#define SUPPORT_DEFAULT_FONT 1 +// Selected desired font fileformats to be supported for loading +#define SUPPORT_FILEFORMAT_FNT 1 +#define SUPPORT_FILEFORMAT_TTF 1 -// utils.c -/* Show TraceLog() output messages. NOTE: By default LOG_DEBUG traces not shown */ -#define SUPPORT_TRACELOG 1 -/* Support saving image data as PNG fileformat. NOTE: Requires stb_image_write library */ -#define SUPPORT_SAVE_PNG 1 -/* Support saving image data as PMP fileformat. NOTE: Requires stb_image_write library */ -/* #undef SUPPORT_SAVE_BMP */ +//------------------------------------------------------------------------------------ +// Module: models - Configuration Flags +//------------------------------------------------------------------------------------ +// Selected desired model fileformats to be supported for loading +#define SUPPORT_FILEFORMAT_OBJ 1 +#define SUPPORT_FILEFORMAT_MTL 1 +// Support procedural mesh generation functions, uses external par_shapes.h library +// NOTE: Some generated meshes DO NOT include generated texture coordinates +#define SUPPORT_MESH_GENERATION 1 -#endif + +//------------------------------------------------------------------------------------ +// Module: audio - Configuration Flags +//------------------------------------------------------------------------------------ +// Desired audio fileformats to be supported for loading +#define SUPPORT_FILEFORMAT_WAV 1 +#define SUPPORT_FILEFORMAT_OGG 1 +#define SUPPORT_FILEFORMAT_XM 1 +#define SUPPORT_FILEFORMAT_MOD 1 +//#define SUPPORT_FILEFORMAT_FLAC 1 + + +//------------------------------------------------------------------------------------ +// Module: utils - Configuration Flags +//------------------------------------------------------------------------------------ +// Show TraceLog() output messages +// NOTE: By default LOG_DEBUG traces not shown +#define SUPPORT_TRACELOG 1 +// Support saving image data fileformats +// NOTE: Requires stb_image_write library +#define SUPPORT_SAVE_PNG 1 +//#define SUPPORT_SAVE_BMP 1 + + +#endif //defined(RAYLIB_CMAKE) diff --git a/src/core.c b/src/core.c index 8392ac52..c1187e5a 100644 --- a/src/core.c +++ b/src/core.c @@ -448,7 +448,7 @@ struct android_app *GetAndroidApp(void) // NOTE: data parameter could be used to pass any kind of required data to the initialization void InitWindow(int width, int height, const char *title) { - TraceLog(LOG_INFO, "Initializing raylib (v1.9.6-dev)"); + TraceLog(LOG_INFO, "Initializing raylib %s", RAYLIB_VERSION); windowTitle = title; #if defined(PLATFORM_ANDROID) diff --git a/src/raylib.h b/src/raylib.h index a5963905..fd4b9b21 100644 --- a/src/raylib.h +++ b/src/raylib.h @@ -1,8 +1,6 @@ /********************************************************************************************** * -* raylib v1.9.6-dev -* -* A simple and easy-to-use library to learn videogames programming (www.raylib.com) +* raylib - A simple and easy-to-use library to learn videogames programming (www.raylib.com) * * FEATURES: * - Written in plain C code (C99) in PascalCase/camelCase notation