]> git.lizzy.rs Git - irrlicht.git/blobdiff - include/IrrCompileConfig.h
Bump revision
[irrlicht.git] / include / IrrCompileConfig.h
index 0c7c5af3daeb09be4f70358eca4474048d2c463f..2e70f7c4080283f31768c01297c775d42398ba92 100644 (file)
@@ -5,9 +5,9 @@
 #ifndef __IRR_COMPILE_CONFIG_H_INCLUDED__\r
 #define __IRR_COMPILE_CONFIG_H_INCLUDED__\r
 \r
-//! Identifies Irrlicht fork customized for the Minetest engine\r
-#define IRRLICHT_VERSION_MT_REVISION 2\r
-#define IRRLICHT_VERSION_MT "mt2"\r
+//! Identifies the IrrlichtMt fork customized for the Minetest engine\r
+#define IRRLICHT_VERSION_MT_REVISION 8\r
+#define IRRLICHT_VERSION_MT "mt8"\r
 \r
 //! Irrlicht SDK Version\r
 #define IRRLICHT_VERSION_MAJOR 1\r
@@ -37,8 +37,6 @@
 //! _IRR_COMPILE_WITH_OSX_DEVICE_ for Cocoa native windowing on OSX\r
 //! _IRR_COMPILE_WITH_X11_DEVICE_ for Linux X11 based device\r
 //! _IRR_COMPILE_WITH_SDL_DEVICE_ for platform independent SDL framework\r
-//! _IRR_COMPILE_WITH_CONSOLE_DEVICE_ for no windowing system, used as a fallback\r
-//! _IRR_COMPILE_WITH_FB_DEVICE_ for framebuffer systems\r
 \r
 //! Passing defines to the compiler which have NO in front of the _IRR definename is an alternative\r
 //! way which can be used to disable defines (instead of outcommenting them in this header).\r
 #undef _IRR_COMPILE_WITH_SDL_DEVICE_\r
 #endif\r
 \r
-//! Comment this line to compile without the fallback console device.\r
-#define _IRR_COMPILE_WITH_CONSOLE_DEVICE_\r
-#ifdef NO_IRR_COMPILE_WITH_CONSOLE_DEVICE_\r
-#undef _IRR_COMPILE_WITH_CONSOLE_DEVICE_\r
-#endif\r
-\r
 //! WIN32 for Windows32\r
 //! WIN64 for Windows64\r
 // The windows platform and API support SDL and WINDOW device\r
-#if defined(_WIN32) || defined(_WIN64) || defined(WIN32) || defined(WIN64)\r
+#if defined(_WIN32) || defined(_WIN64)\r
 #define _IRR_WINDOWS_\r
 #define _IRR_WINDOWS_API_\r
+#ifndef _IRR_COMPILE_WITH_SDL_DEVICE_\r
 #define _IRR_COMPILE_WITH_WINDOWS_DEVICE_\r
 #endif\r
-\r
-#if defined(_MSC_VER) && (_MSC_VER < 1500)\r
-#  error "Only Microsoft Visual Studio 9.0 and later are supported."\r
-#endif\r
-\r
-// XBox is deprecated (as DX8 is removed). Use Irrlicht 1.8 if you still want to work on this.\r
-#if defined(_XBOX)\r
-       #undef _IRR_WINDOWS_\r
-       #define _IRR_XBOX_PLATFORM_     // deprecated\r
-       #define _IRR_WINDOWS_API_\r
-       //#define _IRR_COMPILE_WITH_WINDOWS_DEVICE_\r
-       #undef _IRR_COMPILE_WITH_WINDOWS_DEVICE_\r
-       //#define _IRR_COMPILE_WITH_SDL_DEVICE_\r
-\r
-       #include <xtl.h>\r
 #endif\r
 \r
-#if defined(__APPLE__) || defined(MACOSX)\r
-#if !defined(MACOSX)\r
-#define MACOSX // legacy support\r
-#endif\r
+#if defined(__APPLE__)\r
 #if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) || defined(__IPHONE_OS_VERSION_MIN_REQUIRED)\r
 #define _IRR_IOS_PLATFORM_\r
 #define _IRR_COMPILE_WITH_IOS_DEVICE_\r
@@ -98,7 +73,9 @@
 #define _IRR_COMPILE_WITH_IOS_BUILTIN_MAIN_\r
 #else\r
 #define _IRR_OSX_PLATFORM_\r
+#ifndef _IRR_COMPILE_WITH_SDL_DEVICE_\r
 #define _IRR_COMPILE_WITH_OSX_DEVICE_\r
+#endif\r
 #define NO_IRR_COMPILE_WITH_OGLES1_\r
 #define NO_IRR_COMPILE_WITH_OGLES2_\r
 #define NO_IRR_COMPILE_WITH_WEBGL1_\r
 #define _IRR_COMPILE_WITH_SDL_DEVICE_\r
 #define NO_IRR_COMPILE_WITH_X11_DEVICE_\r
 #define _IRR_LINUX_PLATFORM_   // emscripten basically working like a unix\r
-#define NO_IRR_COMPILE_WITH_SOFTWARE_\r
-#define NO_IRR_COMPILE_WITH_BURNINGSVIDEO_\r
 #endif // __EMSCRIPTEN__\r
 \r
 #if defined(__ANDROID__)\r
 #define _IRR_LINUX_PLATFORM_\r
 #endif\r
 #define _IRR_POSIX_API_\r
+#ifndef _IRR_COMPILE_WITH_SDL_DEVICE_\r
 #define _IRR_COMPILE_WITH_X11_DEVICE_\r
 #endif\r
+#endif\r
 \r
 \r
 //! Define _IRR_COMPILE_WITH_JOYSTICK_SUPPORT_ if you want joystick events.\r
+#if !(defined(__FreeBSD__) || defined(__OpenBSD__))\r
 #define _IRR_COMPILE_WITH_JOYSTICK_EVENTS_\r
+#endif\r
 #ifdef NO_IRR_COMPILE_WITH_JOYSTICK_EVENTS_\r
 #undef _IRR_COMPILE_WITH_JOYSTICK_EVENTS_\r
 #endif\r
 \r
 \r
 //! Maximum number of texture an SMaterial can have, up to 8 are supported by Irrlicht.\r
-#define _IRR_MATERIAL_MAX_TEXTURES_ 8\r
-\r
-//! Whether to support XML and XML-based formats (irrmesh, collada...)\r
-#define _IRR_COMPILE_WITH_XML_\r
-#ifdef NO_IRR_COMPILE_WITH_XML_\r
-#undef _IRR_COMPILE_WITH_XML_\r
-#endif\r
+#define _IRR_MATERIAL_MAX_TEXTURES_ 4\r
 \r
 //! Add a leak-hunter to Irrlicht which helps finding unreleased reference counted objects.\r
 //! NOTE: This is slow and should only be used for debugging\r
@@ -193,16 +166,6 @@ If not defined, Windows Multimedia library is used, which offers also broad supp
 #ifdef NO_IRR_COMPILE_WITH_DIRECTINPUT_JOYSTICK_\r
 #undef _IRR_COMPILE_WITH_DIRECTINPUT_JOYSTICK_\r
 #endif\r
-// can't get this to compile currently under borland, can be removed if someone has a better solution\r
-#if defined(__BORLANDC__)\r
-#undef _IRR_COMPILE_WITH_DIRECTINPUT_JOYSTICK_\r
-#endif\r
-\r
-//! enabled Direct3D 9\r
-#define _IRR_COMPILE_WITH_DIRECT3D_9_\r
-#ifdef NO_IRR_COMPILE_WITH_DIRECT3D_9_\r
-#undef _IRR_COMPILE_WITH_DIRECT3D_9_\r
-#endif\r
 \r
 #endif\r
 \r
@@ -265,7 +228,11 @@ Depending on platform you may have to enable _IRR_OGLES1_USE_KHRONOS_API_HEADERS
 //! Define _IRR_COMPILE_WITH_OGLES2_ to compile the Irrlicht engine with OpenGL ES 2.0.\r
 /** If you do not wish the engine to be compiled with OpenGL ES 2.0, comment this\r
 define out. */\r
+#if defined(_IRR_ANDROID_PLATFORM_) || defined(_IRR_IOS_PLATFORM_)\r
+#define _IRR_COMPILE_WITH_OGLES2_\r
+#else\r
 //#define _IRR_COMPILE_WITH_OGLES2_\r
+#endif\r
 #ifdef NO_IRR_COMPILE_WITH_OGLES2_\r
 #undef _IRR_COMPILE_WITH_OGLES2_\r
 #endif\r
@@ -296,21 +263,6 @@ define out. */
 \r
 \r
 \r
-//! Define _IRR_COMPILE_WITH_SOFTWARE_ to compile the Irrlicht engine with software driver\r
-/** If you do not need the software driver, or want to use Burning's Video instead,\r
-comment this define out */\r
-#define _IRR_COMPILE_WITH_SOFTWARE_\r
-#ifdef NO_IRR_COMPILE_WITH_SOFTWARE_\r
-#undef _IRR_COMPILE_WITH_SOFTWARE_\r
-#endif\r
-\r
-//! Define _IRR_COMPILE_WITH_BURNINGSVIDEO_ to compile the Irrlicht engine with Burning's video driver\r
-/** If you do not need this software driver, you can comment this define out. */\r
-#define _IRR_COMPILE_WITH_BURNINGSVIDEO_\r
-#ifdef NO_IRR_COMPILE_WITH_BURNINGSVIDEO_\r
-#undef _IRR_COMPILE_WITH_BURNINGSVIDEO_\r
-#endif\r
-\r
 //! Define _IRR_COMPILE_WITH_X11_ to compile the Irrlicht engine with X11 support.\r
 /** If you do not wish the engine to be compiled with X11, comment this\r
 define out. */\r
@@ -320,19 +272,9 @@ define out. */
 #undef _IRR_COMPILE_WITH_X11_\r
 #endif\r
 \r
-//! On some Linux systems the XF86 vidmode extension, X11 RandR, or XInput2 are missing.\r
-//! Use these defines to add/remove support for those dependencies as needed.\r
-//! XInput2 (library called Xi) is currently only used to support touch-input.\r
 #if defined(_IRR_LINUX_PLATFORM_) && defined(_IRR_COMPILE_WITH_X11_)\r
-#define _IRR_LINUX_X11_VIDMODE_\r
-//#define _IRR_LINUX_X11_RANDR_\r
-//#define _IRR_LINUX_X11_XINPUT2_\r
-#ifdef NO_IRR_LINUX_X11_VIDMODE_\r
-#undef _IRR_LINUX_X11_VIDMODE_\r
-#endif\r
-#ifdef NO_IRR_LINUX_X11_RANDR_\r
-#undef _IRR_LINUX_X11_RANDR_\r
-#endif\r
+//! XInput2 (library called Xi) is currently only used to support touch-input.\r
+#define _IRR_LINUX_X11_XINPUT2_\r
 #ifdef NO_IRR_LINUX_X11_XINPUT2_\r
 #undef _IRR_LINUX_X11_XINPUT2_\r
 #endif\r
@@ -355,24 +297,7 @@ you will not be able to use anything provided by the GUI Environment, including
 #undef _IRR_COMPILE_WITH_GUI_\r
 #endif\r
 \r
-//! Define _IRR_COMPILE_WITH_PARTICLES to compile the engine the withe build-in particle system\r
-/** You can disable this if you don't need particles or use an external particle system. */\r
-#define _IRR_COMPILE_WITH_PARTICLES_\r
-#ifdef NO_IRR_COMPILE_WITH_PARTICLES_\r
-#undef _IRR_COMPILE_WITH_PARTICLES_\r
-#endif\r
-\r
-//! Define _IRR_WCHAR_FILESYSTEM to enable unicode filesystem support for the engine.\r
-/** This enables the engine to read/write from unicode filesystem. If you\r
-disable this feature, the engine behave as before (ansi). This is currently only supported\r
-for Windows based systems. You also have to set #define UNICODE for this to compile.\r
-*/\r
-//#define _IRR_WCHAR_FILESYSTEM\r
-#ifdef NO_IRR_WCHAR_FILESYSTEM\r
-#undef _IRR_WCHAR_FILESYSTEM\r
-#endif\r
-\r
-//! Define _IRR_COMPILE_WITH_JPEGLIB_ to enable compiling the engine using libjpeg.\r
+//! Define _IRR_COMPILE_WITH_LIBJPEG_ to enable compiling the engine using libjpeg.\r
 /** This enables the engine to read jpeg images. If you comment this out,\r
 the engine will no longer read .jpeg images. */\r
 #define _IRR_COMPILE_WITH_LIBJPEG_\r
@@ -388,117 +313,15 @@ the engine will no longer read .png images. */
 #undef _IRR_COMPILE_WITH_LIBPNG_\r
 #endif\r
 \r
-//! Define _IRR_D3D_NO_SHADER_DEBUGGING to disable shader debugging in D3D9\r
-/** If _IRR_D3D_NO_SHADER_DEBUGGING is undefined in IrrCompileConfig.h,\r
-it is possible to debug all D3D9 shaders in VisualStudio. All shaders\r
-(which have been generated in memory or read from archives for example) will be emitted\r
-into a temporary file at runtime for this purpose. To debug your shaders, choose\r
-Debug->Direct3D->StartWithDirect3DDebugging in Visual Studio, and for every shader a\r
-file named 'irr_dbg_shader_%%.vsh' or 'irr_dbg_shader_%%.psh' will be created. Drag'n'drop\r
-the file you want to debug into visual studio. That's it. You can now set breakpoints and\r
-watch registers, variables etc. This works with ASM, HLSL, and both with pixel and vertex shaders.\r
-Note that the engine will run in D3D REF for this, which is a lot slower than HAL. */\r
-#define _IRR_D3D_NO_SHADER_DEBUGGING\r
-#ifdef NO_IRR_D3D_NO_SHADER_DEBUGGING\r
-#undef _IRR_D3D_NO_SHADER_DEBUGGING\r
-#endif\r
-\r
-//! Define _IRR_D3D_USE_LEGACY_HLSL_COMPILER to enable the old HLSL compiler in recent DX SDKs\r
-/** This enables support for ps_1_x shaders for recent DX SDKs. Otherwise, support\r
-for this shader model is not available anymore in SDKs after Oct2006. You need to\r
-distribute the OCT2006_d3dx9_31_x86.cab or OCT2006_d3dx9_31_x64.cab though, in order\r
-to provide the user with the proper DLL. That's why it's disabled by default. */\r
-//#define _IRR_D3D_USE_LEGACY_HLSL_COMPILER\r
-#ifdef NO_IRR_D3D_USE_LEGACY_HLSL_COMPILER\r
-#undef _IRR_D3D_USE_LEGACY_HLSL_COMPILER\r
-#endif\r
-\r
-//! Define _IRR_USE_NVIDIA_PERFHUD_ to opt-in to using the nVidia PerHUD tool\r
-/** Enable, by opting-in, to use the nVidia PerfHUD performance analysis driver\r
-tool <http://developer.nvidia.com/object/nvperfhud_home.html>. */\r
-#undef _IRR_USE_NVIDIA_PERFHUD_\r
-\r
-//! Define one of the three setting for Burning's Video Software Rasterizer\r
-/** So if we were marketing guys we could say Irrlicht has 4 Software-Rasterizers.\r
-       In a Nutshell:\r
-               All Burnings Rasterizers use 32 Bit Backbuffer, 32Bit Texture & 32 Bit Z or WBuffer,\r
-               16 Bit/32 Bit can be adjusted on a global flag.\r
-\r
-               BURNINGVIDEO_RENDERER_BEAUTIFUL\r
-                       32 Bit + Vertexcolor + Lighting + Per Pixel Perspective Correct + SubPixel/SubTexel Correct +\r
-                       Bilinear Texturefiltering + WBuffer\r
-\r
-               BURNINGVIDEO_RENDERER_FAST\r
-                       32 Bit + Per Pixel Perspective Correct + SubPixel/SubTexel Correct + WBuffer +\r
-                       Bilinear Dithering TextureFiltering + WBuffer\r
-\r
-               BURNINGVIDEO_RENDERER_ULTRA_FAST\r
-                       16Bit + SubPixel/SubTexel Correct + ZBuffer\r
-*/\r
-\r
-#define BURNINGVIDEO_RENDERER_BEAUTIFUL\r
-//#define BURNINGVIDEO_RENDERER_FAST\r
-//#define BURNINGVIDEO_RENDERER_ULTRA_FAST\r
-//#define BURNINGVIDEO_RENDERER_CE\r
-\r
 //! Uncomment the following line if you want to ignore the deprecated warnings\r
 //#define IGNORE_DEPRECATED_WARNING\r
 \r
-//! Define _IRR_COMPILE_WITH_SHADOW_VOLUME_SCENENODE_ to support ShadowVolumes\r
-#define _IRR_COMPILE_WITH_SHADOW_VOLUME_SCENENODE_\r
-#ifdef NO_IRR_COMPILE_WITH_SHADOW_VOLUME_SCENENODE_\r
-#undef _IRR_COMPILE_WITH_SHADOW_VOLUME_SCENENODE_\r
-#endif\r
-\r
-//! Define _IRR_COMPILE_WITH_OCTREE_SCENENODE_ to support OctreeSceneNodes\r
-#define _IRR_COMPILE_WITH_OCTREE_SCENENODE_\r
-#ifdef NO_IRR_COMPILE_WITH_OCTREE_SCENENODE_\r
-#undef _IRR_COMPILE_WITH_OCTREE_SCENENODE_\r
-#endif\r
-\r
-//! Define _IRR_COMPILE_WITH_TERRAIN_SCENENODE_ to support TerrainSceneNodes\r
-#define _IRR_COMPILE_WITH_TERRAIN_SCENENODE_\r
-#ifdef NO_IRR_COMPILE_WITH_TERRAIN_SCENENODE_\r
-#undef _IRR_COMPILE_WITH_TERRAIN_SCENENODE_\r
-#endif\r
-\r
 //! Define _IRR_COMPILE_WITH_BILLBOARD_SCENENODE_ to support BillboardSceneNodes\r
 #define _IRR_COMPILE_WITH_BILLBOARD_SCENENODE_\r
 #ifdef NO_IRR_COMPILE_WITH_BILLBOARD_SCENENODE_\r
 #undef _IRR_COMPILE_WITH_BILLBOARD_SCENENODE_\r
 #endif\r
 \r
-//! Define _IRR_COMPILE_WITH_WATER_SURFACE_SCENENODE_ to support WaterSurfaceSceneNodes\r
-#define _IRR_COMPILE_WITH_WATER_SURFACE_SCENENODE_\r
-#ifdef NO_IRR_COMPILE_WITH_WATER_SURFACE_SCENENODE_\r
-#undef _IRR_COMPILE_WITH_WATER_SURFACE_SCENENODE_\r
-#endif\r
-\r
-//! Define _IRR_COMPILE_WITH_SKYDOME_SCENENODE_ to support SkydomeSceneNodes\r
-#define _IRR_COMPILE_WITH_SKYDOME_SCENENODE_\r
-#ifdef NO_IRR_COMPILE_WITH_SKYDOME_SCENENODE_\r
-#undef _IRR_COMPILE_WITH_SKYDOME_SCENENODE_\r
-#endif\r
-\r
-//! Define _IRR_COMPILE_WITH_CUBE_SCENENODE_ to support CubeSceneNodes\r
-#define _IRR_COMPILE_WITH_CUBE_SCENENODE_\r
-#ifdef NO_IRR_COMPILE_WITH_CUBE_SCENENODE_\r
-#undef _IRR_COMPILE_WITH_CUBE_SCENENODE_\r
-#endif\r
-\r
-//! Define _IRR_COMPILE_WITH_SPHERE_SCENENODE_ to support CubeSceneNodes\r
-#define _IRR_COMPILE_WITH_SPHERE_SCENENODE_\r
-#ifdef NO_IRR_COMPILE_WITH_SPHERE_SCENENODE_\r
-#undef _IRR_COMPILE_WITH_SPHERE_SCENENODE_\r
-#endif\r
-\r
-//! Define _IRR_COMPILE_WITH_IRR_SCENE_LOADER_ if you want to be able to load\r
-/** .irr scenes using ISceneManager::loadScene */\r
-#define _IRR_COMPILE_WITH_IRR_SCENE_LOADER_\r
-#ifdef NO_IRR_COMPILE_WITH_IRR_SCENE_LOADER_\r
-#undef _IRR_COMPILE_WITH_IRR_SCENE_LOADER_\r
-#endif\r
-\r
 //! Define _IRR_COMPILE_WITH_SKINNED_MESH_SUPPORT_ if you want to use bone based\r
 /** animated meshes. If you compile without this, you will be unable to load\r
 B3D, MS3D or X meshes */\r
@@ -513,139 +336,18 @@ B3D, MS3D or X meshes */
 #ifdef NO_IRR_COMPILE_WITH_B3D_LOADER_\r
 #undef _IRR_COMPILE_WITH_B3D_LOADER_\r
 #endif\r
-//! Define _IRR_COMPILE_WITH_MS3D_LOADER_ if you want to Milkshape files\r
-#define _IRR_COMPILE_WITH_MS3D_LOADER_\r
-#ifdef NO_IRR_COMPILE_WITH_MS3D_LOADER_\r
-#undef _IRR_COMPILE_WITH_MS3D_LOADER_\r
-#endif\r
 //! Define _IRR_COMPILE_WITH_X_LOADER_ if you want to use Microsoft X files\r
 #define _IRR_COMPILE_WITH_X_LOADER_\r
 #ifdef NO_IRR_COMPILE_WITH_X_LOADER_\r
 #undef _IRR_COMPILE_WITH_X_LOADER_\r
 #endif\r
-//! Define _IRR_COMPILE_WITH_OGRE_LOADER_ if you want to load Ogre 3D files\r
-#define _IRR_COMPILE_WITH_OGRE_LOADER_\r
-#ifdef NO_IRR_COMPILE_WITH_OGRE_LOADER_\r
-#undef _IRR_COMPILE_WITH_OGRE_LOADER_\r
-#endif\r
 #endif // _IRR_COMPILE_WITH_SKINNED_MESH_SUPPORT_\r
 \r
-//! Define _IRR_COMPILE_WITH_IRR_MESH_LOADER_ if you want to load Irrlicht Engine .irrmesh files\r
-#define _IRR_COMPILE_WITH_IRR_MESH_LOADER_\r
-#ifdef NO_IRR_COMPILE_WITH_IRR_MESH_LOADER_\r
-#undef _IRR_COMPILE_WITH_IRR_MESH_LOADER_\r
-#endif\r
-//! Define _IRR_COMPILE_WITH_HALFLIFE_LOADER_ if you want to load Halflife animated files\r
-#define _IRR_COMPILE_WITH_HALFLIFE_LOADER_\r
-#ifdef NO_IRR_COMPILE_WITH_HALFLIFE_LOADER_\r
-#undef _IRR_COMPILE_WITH_HALFLIFE_LOADER_\r
-#endif\r
-//! Define _IRR_COMPILE_WITH_MD2_LOADER_ if you want to load Quake 2 animated files\r
-#define _IRR_COMPILE_WITH_MD2_LOADER_\r
-#ifdef NO_IRR_COMPILE_WITH_MD2_LOADER_\r
-#undef _IRR_COMPILE_WITH_MD2_LOADER_\r
-#endif\r
-//! Define _IRR_COMPILE_WITH_MD3_LOADER_ if you want to load Quake 3 animated files\r
-#define _IRR_COMPILE_WITH_MD3_LOADER_\r
-#ifdef NO_IRR_COMPILE_WITH_MD3_LOADER_\r
-#undef _IRR_COMPILE_WITH_MD3_LOADER_\r
-#endif\r
-//! Define _IRR_COMPILE_WITH_3DS_LOADER_ if you want to load 3D Studio Max files\r
-#define _IRR_COMPILE_WITH_3DS_LOADER_\r
-#ifdef NO_IRR_COMPILE_WITH_3DS_LOADER_\r
-#undef _IRR_COMPILE_WITH_3DS_LOADER_\r
-#endif\r
-//! Define _IRR_COMPILE_WITH_COLLADA_LOADER_ if you want to load Collada files\r
-#define _IRR_COMPILE_WITH_COLLADA_LOADER_\r
-#ifdef NO_IRR_COMPILE_WITH_COLLADA_LOADER_\r
-#undef _IRR_COMPILE_WITH_COLLADA_LOADER_\r
-#endif\r
-//! Define _IRR_COMPILE_WITH_CSM_LOADER_ if you want to load Cartography Shop files\r
-#define _IRR_COMPILE_WITH_CSM_LOADER_\r
-#ifdef NO_IRR_COMPILE_WITH_CSM_LOADER_\r
-#undef _IRR_COMPILE_WITH_CSM_LOADER_\r
-#endif\r
-//! Define _IRR_COMPILE_WITH_BSP_LOADER_ if you want to load Quake 3 BSP files\r
-#define _IRR_COMPILE_WITH_BSP_LOADER_\r
-#ifdef NO_IRR_COMPILE_WITH_BSP_LOADER_\r
-#undef _IRR_COMPILE_WITH_BSP_LOADER_\r
-#endif\r
-//! Define _IRR_COMPILE_WITH_DMF_LOADER_ if you want to load DeleD files\r
-#define _IRR_COMPILE_WITH_DMF_LOADER_\r
-#ifdef NO_IRR_COMPILE_WITH_DMF_LOADER_\r
-#undef _IRR_COMPILE_WITH_DMF_LOADER_\r
-#endif\r
-//! Define _IRR_COMPILE_WITH_LMTS_LOADER_ if you want to load LMTools files\r
-#define _IRR_COMPILE_WITH_LMTS_LOADER_\r
-#ifdef NO_IRR_COMPILE_WITH_LMTS_LOADER_\r
-#undef _IRR_COMPILE_WITH_LMTS_LOADER_\r
-#endif\r
-//! Define _IRR_COMPILE_WITH_MY3D_LOADER_ if you want to load MY3D files\r
-#define _IRR_COMPILE_WITH_MY3D_LOADER_\r
-#ifdef NO_IRR_COMPILE_WITH_MY3D_LOADER_\r
-#undef _IRR_COMPILE_WITH_MY3D_LOADER_\r
-#endif\r
 //! Define _IRR_COMPILE_WITH_OBJ_LOADER_ if you want to load Wavefront OBJ files\r
 #define _IRR_COMPILE_WITH_OBJ_LOADER_\r
 #ifdef NO_IRR_COMPILE_WITH_OBJ_LOADER_\r
 #undef _IRR_COMPILE_WITH_OBJ_LOADER_\r
 #endif\r
-//! Define _IRR_COMPILE_WITH_OCT_LOADER_ if you want to load FSRad OCT files\r
-#define _IRR_COMPILE_WITH_OCT_LOADER_\r
-#ifdef NO_IRR_COMPILE_WITH_OCT_LOADER_\r
-#undef _IRR_COMPILE_WITH_OCT_LOADER_\r
-#endif\r
-//! Define _IRR_COMPILE_WITH_LWO_LOADER_ if you want to load Lightwave3D files\r
-#define _IRR_COMPILE_WITH_LWO_LOADER_\r
-#ifdef NO_IRR_COMPILE_WITH_LWO_LOADER_\r
-#undef _IRR_COMPILE_WITH_LWO_LOADER_\r
-#endif\r
-//! Define _IRR_COMPILE_WITH_STL_LOADER_ if you want to load stereolithography files\r
-#define _IRR_COMPILE_WITH_STL_LOADER_\r
-#ifdef NO_IRR_COMPILE_WITH_STL_LOADER_\r
-#undef _IRR_COMPILE_WITH_STL_LOADER_\r
-#endif\r
-//! Define _IRR_COMPILE_WITH_PLY_LOADER_ if you want to load Polygon (Stanford Triangle) files\r
-#define _IRR_COMPILE_WITH_PLY_LOADER_\r
-#ifdef NO_IRR_COMPILE_WITH_PLY_LOADER_\r
-#undef _IRR_COMPILE_WITH_PLY_LOADER_\r
-#endif\r
-//! Define _IRR_COMPILE_WITH_SMF_LOADER_ if you want to load 3D World Studio mesh files\r
-#define _IRR_COMPILE_WITH_SMF_LOADER_\r
-#ifdef NO_IRR_COMPILE_WITH_SMF_LOADER_\r
-#undef _IRR_COMPILE_WITH_SMF_LOADER_\r
-#endif\r
-\r
-//! Define _IRR_COMPILE_WITH_IRR_WRITER_ if you want to write static .irrMesh files\r
-#define _IRR_COMPILE_WITH_IRR_WRITER_\r
-#ifdef NO_IRR_COMPILE_WITH_IRR_WRITER_\r
-#undef _IRR_COMPILE_WITH_IRR_WRITER_\r
-#endif\r
-//! Define _IRR_COMPILE_WITH_COLLADA_WRITER_ if you want to write Collada files\r
-#define _IRR_COMPILE_WITH_COLLADA_WRITER_\r
-#ifdef NO_IRR_COMPILE_WITH_COLLADA_WRITER_\r
-#undef _IRR_COMPILE_WITH_COLLADA_WRITER_\r
-#endif\r
-//! Define _IRR_COMPILE_WITH_STL_WRITER_ if you want to write .stl files\r
-#define _IRR_COMPILE_WITH_STL_WRITER_\r
-#ifdef NO_IRR_COMPILE_WITH_STL_WRITER_\r
-#undef _IRR_COMPILE_WITH_STL_WRITER_\r
-#endif\r
-//! Define _IRR_COMPILE_WITH_OBJ_WRITER_ if you want to write .obj files\r
-#define _IRR_COMPILE_WITH_OBJ_WRITER_\r
-#ifdef NO_IRR_COMPILE_WITH_OBJ_WRITER_\r
-#undef _IRR_COMPILE_WITH_OBJ_WRITER_\r
-#endif\r
-//! Define _IRR_COMPILE_WITH_PLY_WRITER_ if you want to write .ply files\r
-#define _IRR_COMPILE_WITH_PLY_WRITER_\r
-#ifdef NO_IRR_COMPILE_WITH_PLY_WRITER_\r
-#undef _IRR_COMPILE_WITH_PLY_WRITER_\r
-#endif\r
-//! Define _IRR_COMPILE_WITH_B3D_WRITER_ if you want to write .b3d files\r
-#define _IRR_COMPILE_WITH_B3D_WRITER_\r
-#ifdef NO_IRR_COMPILE_WITH_B3D_WRITER_\r
-#undef _IRR_COMPILE_WITH_B3D_WRITER_\r
-#endif\r
 \r
 //! Define _IRR_COMPILE_WITH_BMP_LOADER_ if you want to load .bmp files\r
 //! Disabling this loader will also disable the built-in font\r
@@ -658,107 +360,27 @@ B3D, MS3D or X meshes */
 #ifdef NO_IRR_COMPILE_WITH_JPG_LOADER_\r
 #undef _IRR_COMPILE_WITH_JPG_LOADER_\r
 #endif\r
-//! Define _IRR_COMPILE_WITH_PCX_LOADER_ if you want to load .pcx files\r
-#define _IRR_COMPILE_WITH_PCX_LOADER_\r
-#ifdef NO_IRR_COMPILE_WITH_PCX_LOADER_\r
-#undef _IRR_COMPILE_WITH_PCX_LOADER_\r
-#endif\r
 //! Define _IRR_COMPILE_WITH_PNG_LOADER_ if you want to load .png files\r
 #define _IRR_COMPILE_WITH_PNG_LOADER_\r
 #ifdef NO_IRR_COMPILE_WITH_PNG_LOADER_\r
 #undef _IRR_COMPILE_WITH_PNG_LOADER_\r
 #endif\r
-//! Define _IRR_COMPILE_WITH_PPM_LOADER_ if you want to load .ppm/.pgm/.pbm files\r
-#define _IRR_COMPILE_WITH_PPM_LOADER_\r
-#ifdef NO_IRR_COMPILE_WITH_PPM_LOADER_\r
-#undef _IRR_COMPILE_WITH_PPM_LOADER_\r
-#endif\r
-//! Define _IRR_COMPILE_WITH_PSD_LOADER_ if you want to load .psd files\r
-#define _IRR_COMPILE_WITH_PSD_LOADER_\r
-#ifdef NO_IRR_COMPILE_WITH_PSD_LOADER_\r
-#undef _IRR_COMPILE_WITH_PSD_LOADER_\r
-#endif\r
-//! Define _IRR_COMPILE_WITH_PVR_LOADER_ if you want to load .pvr files\r
-#define _IRR_COMPILE_WITH_PVR_LOADER_\r
-#ifdef NO_IRR_COMPILE_WITH_PVR_LOADER_\r
-#undef _IRR_COMPILE_WITH_PVR_LOADER_\r
-#endif\r
-//! Define _IRR_COMPILE_WITH_DDS_LOADER_ if you want to load compressed .dds files\r
-// Patent problem isn't related to this loader.\r
-#define _IRR_COMPILE_WITH_DDS_LOADER_\r
-#ifdef NO_IRR_COMPILE_WITH_DDS_LOADER_\r
-#undef _IRR_COMPILE_WITH_DDS_LOADER_\r
-#endif\r
-//! Define _IRR_COMPILE_WITH_DDS_DECODER_LOADER_ if you want to load .dds files\r
-//! loader will decompress these files and will send to the memory as uncompressed files.\r
-// Outcommented because\r
-// a) it doesn't compile on 64-bit currently\r
-// b) anyone enabling it should be aware that S3TC compression algorithm which might be used in that loader\r
-// is patented in the US by S3 and they do collect license fees when it's used in applications.\r
-// So if you are unfortunate enough to develop applications for US market and their broken patent system be careful.\r
-// #define _IRR_COMPILE_WITH_DDS_DECODER_LOADER_\r
-#ifdef NO_IRR_COMPILE_WITH_DDS_DECODER_LOADER_\r
-#undef _IRR_COMPILE_WITH_DDS_DECODER_LOADER_\r
-#endif\r
-#ifdef _IRR_COMPILE_WITH_DDS_DECODER_LOADER_\r
-#undef _IRR_COMPILE_WITH_DDS_LOADER_\r
-#endif\r
 //! Define _IRR_COMPILE_WITH_TGA_LOADER_ if you want to load .tga files\r
 #define _IRR_COMPILE_WITH_TGA_LOADER_\r
 #ifdef NO_IRR_COMPILE_WITH_TGA_LOADER_\r
 #undef _IRR_COMPILE_WITH_TGA_LOADER_\r
 #endif\r
-//! Define _IRR_COMPILE_WITH_WAL_LOADER_ if you want to load .wal files\r
-#define _IRR_COMPILE_WITH_WAL_LOADER_\r
-#ifdef NO_IRR_COMPILE_WITH_WAL_LOADER_\r
-#undef _IRR_COMPILE_WITH_WAL_LOADER_\r
-#endif\r
-//! Define _IRR_COMPILE_WITH_LMP_LOADER_ if you want to load .lmp files\r
-#define _IRR_COMPILE_WITH_LMP_LOADER_\r
-#ifdef NO_IRR_COMPILE_WITH_LMP_LOADER_\r
-#undef _IRR_COMPILE_WITH_LMP_LOADER_\r
-#endif\r
-//! Define _IRR_COMPILE_WITH_RGB_LOADER_ if you want to load Silicon Graphics .rgb/.rgba/.sgi/.int/.inta/.bw files\r
-#define _IRR_COMPILE_WITH_RGB_LOADER_\r
-#ifdef NO_IRR_COMPILE_WITH_RGB_LOADER_\r
-#undef _IRR_COMPILE_WITH_RGB_LOADER_\r
-#endif\r
 \r
-//! Define _IRR_COMPILE_WITH_BMP_WRITER_ if you want to write .bmp files\r
-#define _IRR_COMPILE_WITH_BMP_WRITER_\r
-#ifdef NO_IRR_COMPILE_WITH_BMP_WRITER_\r
-#undef _IRR_COMPILE_WITH_BMP_WRITER_\r
-#endif\r
 //! Define _IRR_COMPILE_WITH_JPG_WRITER_ if you want to write .jpg files\r
 #define _IRR_COMPILE_WITH_JPG_WRITER_\r
 #ifdef NO_IRR_COMPILE_WITH_JPG_WRITER_\r
 #undef _IRR_COMPILE_WITH_JPG_WRITER_\r
 #endif\r
-//! Define _IRR_COMPILE_WITH_PCX_WRITER_ if you want to write .pcx files\r
-#define _IRR_COMPILE_WITH_PCX_WRITER_\r
-#ifdef NO_IRR_COMPILE_WITH_PCX_WRITER_\r
-#undef _IRR_COMPILE_WITH_PCX_WRITER_\r
-#endif\r
 //! Define _IRR_COMPILE_WITH_PNG_WRITER_ if you want to write .png files\r
 #define _IRR_COMPILE_WITH_PNG_WRITER_\r
 #ifdef NO_IRR_COMPILE_WITH_PNG_WRITER_\r
 #undef _IRR_COMPILE_WITH_PNG_WRITER_\r
 #endif\r
-//! Define _IRR_COMPILE_WITH_PPM_WRITER_ if you want to write .ppm files\r
-#define _IRR_COMPILE_WITH_PPM_WRITER_\r
-#ifdef NO_IRR_COMPILE_WITH_PPM_WRITER_\r
-#undef _IRR_COMPILE_WITH_PPM_WRITER_\r
-#endif\r
-//! Define _IRR_COMPILE_WITH_PSD_WRITER_ if you want to write .psd files\r
-#define _IRR_COMPILE_WITH_PSD_WRITER_\r
-#ifdef NO_IRR_COMPILE_WITH_PSD_WRITER_\r
-#undef _IRR_COMPILE_WITH_PSD_WRITER_\r
-#endif\r
-//! Define _IRR_COMPILE_WITH_TGA_WRITER_ if you want to write .tga files\r
-#define _IRR_COMPILE_WITH_TGA_WRITER_\r
-#ifdef NO_IRR_COMPILE_WITH_TGA_WRITER_\r
-#undef _IRR_COMPILE_WITH_TGA_WRITER_\r
-#endif\r
 \r
 //! Define __IRR_COMPILE_WITH_ZIP_ARCHIVE_LOADER_ if you want to open ZIP and GZIP archives\r
 /** ZIP reading has several more options below to configure. */\r
@@ -782,37 +404,6 @@ ones. */
 #ifdef NO__IRR_COMPILE_WITH_MOUNT_ARCHIVE_LOADER_\r
 #undef __IRR_COMPILE_WITH_MOUNT_ARCHIVE_LOADER_\r
 #endif\r
-//! Define __IRR_COMPILE_WITH_PAK_ARCHIVE_LOADER_ if you want to open ID software PAK archives\r
-#define __IRR_COMPILE_WITH_PAK_ARCHIVE_LOADER_\r
-#ifdef NO__IRR_COMPILE_WITH_PAK_ARCHIVE_LOADER_\r
-#undef __IRR_COMPILE_WITH_PAK_ARCHIVE_LOADER_\r
-#endif\r
-//! Define __IRR_COMPILE_WITH_NPK_ARCHIVE_LOADER_ if you want to open Nebula Device NPK archives\r
-#define __IRR_COMPILE_WITH_NPK_ARCHIVE_LOADER_\r
-#ifdef NO__IRR_COMPILE_WITH_NPK_ARCHIVE_LOADER_\r
-#undef __IRR_COMPILE_WITH_NPK_ARCHIVE_LOADER_\r
-#endif\r
-//! Define __IRR_COMPILE_WITH_TAR_ARCHIVE_LOADER_ if you want to open TAR archives\r
-#define __IRR_COMPILE_WITH_TAR_ARCHIVE_LOADER_\r
-#ifdef NO__IRR_COMPILE_WITH_TAR_ARCHIVE_LOADER_\r
-#undef __IRR_COMPILE_WITH_TAR_ARCHIVE_LOADER_\r
-#endif\r
-//! Define __IRR_COMPILE_WITH_WAD_ARCHIVE_LOADER_ if you want to open WAD archives\r
-#define __IRR_COMPILE_WITH_WAD_ARCHIVE_LOADER_\r
-#ifdef NO__IRR_COMPILE_WITH_WAD_ARCHIVE_LOADER_\r
-#undef __IRR_COMPILE_WITH_WAD_ARCHIVE_LOADER_\r
-#endif\r
-\r
-//! Set FPU settings\r
-/** Irrlicht should use approximate float and integer fpu techniques\r
-precision will be lower but speed higher. currently X86 only\r
-*/\r
-#if !defined(_IRR_OSX_PLATFORM_) && !defined(_IRR_SOLARIS_PLATFORM_)\r
-       //#define IRRLICHT_FAST_MATH\r
-       #ifdef NO_IRRLICHT_FAST_MATH\r
-       #undef IRRLICHT_FAST_MATH\r
-       #endif\r
-#endif\r
 \r
 // Some cleanup and standard stuff\r
 \r
@@ -840,7 +431,7 @@ precision will be lower but speed higher. currently X86 only
 #else // _IRR_WINDOWS_API_\r
 \r
 // Force symbol export in shared libraries built with gcc.\r
-#if (__GNUC__ >= 4) && !defined(_IRR_STATIC_LIB_) && defined(IRRLICHT_EXPORTS)\r
+#if defined(__GNUC__) && !defined(_IRR_STATIC_LIB_) && defined(IRRLICHT_EXPORTS)\r
 #define IRRLICHT_API __attribute__ ((visibility("default")))\r
 #else\r
 #define IRRLICHT_API\r
@@ -850,10 +441,6 @@ precision will be lower but speed higher. currently X86 only
 \r
 #endif // _IRR_WINDOWS_API_\r
 \r
-#ifndef _IRR_WINDOWS_API_\r
-       #undef _IRR_WCHAR_FILESYSTEM\r
-#endif\r
-\r
 #if defined(_IRR_SOLARIS_PLATFORM_)\r
        #undef _IRR_COMPILE_WITH_JOYSTICK_EVENTS_\r
 #endif\r
@@ -864,30 +451,6 @@ precision will be lower but speed higher. currently X86 only
 #undef __IRR_HAS_S64\r
 #endif\r
 \r
-// These depend on XML\r
-#ifndef _IRR_COMPILE_WITH_XML_\r
-       #undef _IRR_COMPILE_WITH_IRR_MESH_LOADER_\r
-       #undef _IRR_COMPILE_WITH_IRR_WRITER_\r
-       #undef _IRR_COMPILE_WITH_COLLADA_WRITER_\r
-       #undef _IRR_COMPILE_WITH_COLLADA_LOADER_\r
-#endif\r
-\r
-#if defined(__BORLANDC__)\r
-       #include <tchar.h>\r
-\r
-       // Borland 5.5.1\r
-       #if __BORLANDC__ == 0x551\r
-               #undef _tfinddata_t\r
-               #undef _tfindfirst\r
-               #undef _tfindnext\r
-\r
-               #define _tfinddata_t __tfinddata_t\r
-               #define _tfindfirst  __tfindfirst\r
-               #define _tfindnext   __tfindnext\r
-               typedef long intptr_t;\r
-       #endif\r
-#endif\r
-\r
 #ifndef __has_feature\r
   #define __has_feature(x) 0  // Compatibility with non-clang compilers.\r
 #endif\r