Home | Namespaces | Hierarchy | Alphabetical List | Class list | Files | Namespace Members | Class members | File members | Tutorials

IrrCompileConfig.h

Go to the documentation of this file.
00001 // Copyright (C) 2002-2009 Nikolaus Gebhardt
00002 // This file is part of the "Irrlicht Engine".
00003 // For conditions of distribution and use, see copyright notice in irrlicht.h
00004 
00005 #ifndef __IRR_COMPILE_CONFIG_H_INCLUDED__
00006 #define __IRR_COMPILE_CONFIG_H_INCLUDED__
00007 
00009 #define IRRLICHT_VERSION_MAJOR 1
00010 #define IRRLICHT_VERSION_MINOR 6
00011 #define IRRLICHT_VERSION_REVISION 1
00012 // This flag will be defined only in SVN, the official release code will have
00013 // it undefined
00014 #define IRRLICHT_VERSION_SVN
00015 #define IRRLICHT_SDK_VERSION "1.6.1"
00016 
00017 #include <stdio.h> // TODO: Although included elsewhere this is required at least for mingw
00018 
00029 
00038 
00039 
00041 //#define _IRR_COMPILE_WITH_SDL_DEVICE_
00042 
00044 #define _IRR_COMPILE_WITH_CONSOLE_DEVICE_
00045 
00048 // The windows platform and API support SDL and WINDOW device
00049 #if defined(_WIN32) || defined(_WIN64) || defined(WIN32) || defined(WIN64)
00050 #define _IRR_WINDOWS_
00051 #define _IRR_WINDOWS_API_
00052 #define _IRR_COMPILE_WITH_WINDOWS_DEVICE_
00053 #endif
00054 
00056 #if defined(_WIN32_WCE)
00057 #define _IRR_WINDOWS_
00058 #define _IRR_WINDOWS_API_
00059 #define _IRR_WINDOWS_CE_PLATFORM_
00060 #define _IRR_COMPILE_WITH_WINDOWS_CE_DEVICE_
00061 #endif
00062 
00063 #if defined(_MSC_VER) && (_MSC_VER < 1300)
00064 #  error "Only Microsoft Visual Studio 7.0 and later are supported."
00065 #endif
00066 
00067 // XBox only suppots the native Window stuff
00068 #if defined(_XBOX)
00069         #undef _IRR_WINDOWS_
00070         #define _IRR_XBOX_PLATFORM_
00071         #define _IRR_WINDOWS_API_
00072         //#define _IRR_COMPILE_WITH_WINDOWS_DEVICE_
00073         #undef _IRR_COMPILE_WITH_WINDOWS_DEVICE_
00074         //#define _IRR_COMPILE_WITH_SDL_DEVICE_
00075 
00076         #include <xtl.h>
00077 #endif
00078 
00079 #if defined(__APPLE__) || defined(MACOSX)
00080 #if !defined(MACOSX)
00081 #define MACOSX // legacy support
00082 #endif
00083 #define _IRR_OSX_PLATFORM_
00084 #define _IRR_COMPILE_WITH_OSX_DEVICE_
00085 #endif
00086 
00087 #if !defined(_IRR_WINDOWS_API_) && !defined(_IRR_OSX_PLATFORM_)
00088 #ifndef _IRR_SOLARIS_PLATFORM_
00089 #define _IRR_LINUX_PLATFORM_
00090 #endif
00091 #define _IRR_POSIX_API_
00092 #define _IRR_COMPILE_WITH_X11_DEVICE_
00093 #endif
00094 
00096 #define _IRR_COMPILE_WITH_JOYSTICK_EVENTS_
00097 
00099 #define _IRR_MATERIAL_MAX_TEXTURES_ 4
00100 
00103 
00116 #if defined(_IRR_WINDOWS_API_) && (!defined(__GNUC__) || defined(IRR_COMPILE_WITH_DX9_DEV_PACK))
00117 
00119 #define _IRR_COMPILE_WITH_DIRECT3D_8_
00120 #define _IRR_COMPILE_WITH_DIRECT3D_9_
00121 #endif
00122 
00124 
00126 #define _IRR_COMPILE_WITH_OPENGL_
00127 
00129 
00131 #define _IRR_COMPILE_WITH_SOFTWARE_
00132 
00134 
00135 #define _IRR_COMPILE_WITH_BURNINGSVIDEO_
00136 
00138 
00140 // Only used in LinuxDevice.
00141 #define _IRR_COMPILE_WITH_X11_
00142 
00144 
00146 #if !defined(_IRR_OSX_PLATFORM_) && !defined(_IRR_SOLARIS_PLATFORM_)
00147 #define _IRR_OPENGL_USE_EXTPOINTER_
00148 #endif
00149 
00152 #if defined(_IRR_LINUX_PLATFORM_) && defined(_IRR_COMPILE_WITH_X11_)
00153 #define _IRR_LINUX_X11_VIDMODE_
00154 //#define _IRR_LINUX_X11_RANDR_
00155 #endif
00156 
00158 
00160 #define _IRR_COMPILE_WITH_GUI_
00161 
00162 
00164 
00167 //#define _IRR_WCHAR_FILESYSTEM
00168 
00170 
00173 #define _IRR_COMPILE_WITH_ZLIB_
00174 
00176 
00178 #define _IRR_USE_NON_SYSTEM_ZLIB_
00179 
00180 
00182 
00184 #define _IRR_COMPILE_WITH_LIBJPEG_
00185 
00187 
00189 #define _IRR_USE_NON_SYSTEM_JPEG_LIB_
00190 
00191 
00193 
00195 #define _IRR_COMPILE_WITH_LIBPNG_
00196 
00198 
00200 #define _IRR_USE_NON_SYSTEM_LIB_PNG_
00201 
00202 
00204 
00213 #define _IRR_D3D_NO_SHADER_DEBUGGING
00214 
00216 
00220 //#define _IRR_D3D_USE_LEGACY_HLSL_COMPILER
00221 
00223 
00225 #undef _IRR_USE_NVIDIA_PERFHUD_
00226 
00228 
00245 #define BURNINGVIDEO_RENDERER_BEAUTIFUL
00246 //#define BURNINGVIDEO_RENDERER_FAST
00247 //#define BURNINGVIDEO_RENDERER_ULTRA_FAST
00248 //#define BURNINGVIDEO_RENDERER_CE
00249 
00251 //#define IGNORE_DEPRECATED_WARNING
00252 
00254 
00256 #define _IRR_COMPILE_WITH_SKINNED_MESH_SUPPORT_
00257 
00258 #ifdef _IRR_COMPILE_WITH_SKINNED_MESH_SUPPORT_
00260 #define _IRR_COMPILE_WITH_B3D_LOADER_
00262 #define _IRR_COMPILE_WITH_MS3D_LOADER_
00264 #define _IRR_COMPILE_WITH_X_LOADER_
00265 #endif
00266 
00268 #define _IRR_COMPILE_WITH_IRR_MESH_LOADER_
00269 
00271 #define _IRR_COMPILE_WITH_MD2_LOADER_
00273 #define _IRR_COMPILE_WITH_MD3_LOADER_
00274 
00276 #define _IRR_COMPILE_WITH_3DS_LOADER_
00278 #define _IRR_COMPILE_WITH_COLLADA_LOADER_
00280 #define _IRR_COMPILE_WITH_CSM_LOADER_
00282 #define _IRR_COMPILE_WITH_BSP_LOADER_
00284 #define _IRR_COMPILE_WITH_DMF_LOADER_
00286 #define _IRR_COMPILE_WITH_LMTS_LOADER_
00288 #define _IRR_COMPILE_WITH_MY3D_LOADER_
00290 #define _IRR_COMPILE_WITH_OBJ_LOADER_
00292 #define _IRR_COMPILE_WITH_OCT_LOADER_
00294 #define _IRR_COMPILE_WITH_OGRE_LOADER_
00296 #define _IRR_COMPILE_WITH_LWO_LOADER_
00298 #define _IRR_COMPILE_WITH_STL_LOADER_
00300 #define _IRR_COMPILE_WITH_PLY_LOADER_
00301 
00303 #define _IRR_COMPILE_WITH_IRR_WRITER_
00305 #define _IRR_COMPILE_WITH_COLLADA_WRITER_
00307 #define _IRR_COMPILE_WITH_STL_WRITER_
00309 #define _IRR_COMPILE_WITH_OBJ_WRITER_
00311 #define _IRR_COMPILE_WITH_PLY_WRITER_
00312 
00315 #define _IRR_COMPILE_WITH_BMP_LOADER_
00317 #define _IRR_COMPILE_WITH_JPG_LOADER_
00319 #define _IRR_COMPILE_WITH_PCX_LOADER_
00321 #define _IRR_COMPILE_WITH_PNG_LOADER_
00323 #define _IRR_COMPILE_WITH_PPM_LOADER_
00325 #define _IRR_COMPILE_WITH_PSD_LOADER_
00327 #define _IRR_COMPILE_WITH_TGA_LOADER_
00329 #define _IRR_COMPILE_WITH_WAL_LOADER_
00331 #define _IRR_COMPILE_WITH_RGB_LOADER_
00332 
00334 #define _IRR_COMPILE_WITH_BMP_WRITER_
00336 #define _IRR_COMPILE_WITH_JPG_WRITER_
00338 #define _IRR_COMPILE_WITH_PCX_WRITER_
00340 #define _IRR_COMPILE_WITH_PNG_WRITER_
00342 #define _IRR_COMPILE_WITH_PPM_WRITER_
00344 #define _IRR_COMPILE_WITH_PSD_WRITER_
00346 #define _IRR_COMPILE_WITH_TGA_WRITER_
00347 
00349 #define __IRR_COMPILE_WITH_ZIP_ARCHIVE_LOADER_
00351 #define __IRR_COMPILE_WITH_MOUNT_ARCHIVE_LOADER_
00353 #define __IRR_COMPILE_WITH_PAK_ARCHIVE_LOADER_
00355 #define __IRR_COMPILE_WITH_TAR_ARCHIVE_LOADER_
00356 
00358 
00361 #if !defined(_IRR_OSX_PLATFORM_) && !defined(_IRR_SOLARIS_PLATFORM_)
00362         //#define IRRLICHT_FAST_MATH
00363 #endif
00364 
00365 // Some cleanup and standard stuff
00366 
00367 #ifdef _IRR_WINDOWS_API_
00368 
00369 // To build Irrlicht as a static library, you must define _IRR_STATIC_LIB_ in both the
00370 // Irrlicht build, *and* in the user application, before #including <irrlicht.h>
00371 #ifndef _IRR_STATIC_LIB_
00372 #ifdef IRRLICHT_EXPORTS
00373 #define IRRLICHT_API __declspec(dllexport)
00374 #else
00375 #define IRRLICHT_API __declspec(dllimport)
00376 #endif // IRRLICHT_EXPORT
00377 #else
00378 #define IRRLICHT_API
00379 #endif // _IRR_STATIC_LIB_
00380 
00381 // Declare the calling convention.
00382 #if defined(_STDCALL_SUPPORTED)
00383 #define IRRCALLCONV __stdcall
00384 #else
00385 #define IRRCALLCONV __cdecl
00386 #endif // STDCALL_SUPPORTED
00387 
00388 #else // _IRR_WINDOWS_API_
00389 
00390 // Force symbol export in shared libraries built with gcc.
00391 #if (__GNUC__ >= 4) && !defined(_IRR_STATIC_LIB_) && defined(IRRLICHT_EXPORTS)
00392 #define IRRLICHT_API __attribute__ ((visibility("default")))
00393 #else
00394 #define IRRLICHT_API
00395 #endif
00396 
00397 #define IRRCALLCONV
00398 
00399 #endif // _IRR_WINDOWS_API_
00400 
00401 // We need to disable DIRECT3D9 support for Visual Studio 6.0 because
00402 // those $%&$!! disabled support for it since Dec. 2004 and users are complaining
00403 // about linker errors. Comment this out only if you are knowing what you are
00404 // doing. (Which means you have an old DX9 SDK and VisualStudio6).
00405 #ifdef _MSC_VER
00406 #if (_MSC_VER < 1300 && !defined(__GNUC__))
00407 #undef _IRR_COMPILE_WITH_DIRECT3D_9_
00408 #pragma message("Compiling Irrlicht with Visual Studio 6.0, support for DX9 is disabled.")
00409 #endif
00410 #endif
00411 
00412 // XBox does not have OpenGL or DirectX9
00413 #if defined(_IRR_XBOX_PLATFORM_)
00414         #undef _IRR_COMPILE_WITH_OPENGL_
00415         #undef _IRR_COMPILE_WITH_DIRECT3D_9_
00416 #endif
00417 
00419 #if defined(_WIN32_WCE)
00420         #undef _IRR_COMPILE_WITH_OPENGL_
00421         #undef _IRR_COMPILE_WITH_DIRECT3D_8_
00422         #undef _IRR_COMPILE_WITH_DIRECT3D_9_
00423 
00424         #undef BURNINGVIDEO_RENDERER_BEAUTIFUL
00425         #undef BURNINGVIDEO_RENDERER_FAST
00426         #undef BURNINGVIDEO_RENDERER_ULTRA_FAST
00427         #define BURNINGVIDEO_RENDERER_CE
00428 
00429         #undef _IRR_COMPILE_WITH_WINDOWS_DEVICE_
00430         #define _IRR_COMPILE_WITH_WINDOWS_CE_DEVICE_
00431         //#define _IRR_WCHAR_FILESYSTEM
00432 
00433         #undef _IRR_COMPILE_WITH_IRR_MESH_LOADER_
00434         //#undef _IRR_COMPILE_WITH_MD2_LOADER_
00435         #undef _IRR_COMPILE_WITH_MD3_LOADER_
00436         #undef _IRR_COMPILE_WITH_3DS_LOADER_
00437         #undef _IRR_COMPILE_WITH_COLLADA_LOADER_
00438         #undef _IRR_COMPILE_WITH_CSM_LOADER_
00439         #undef _IRR_COMPILE_WITH_BSP_LOADER_
00440         #undef _IRR_COMPILE_WITH_DMF_LOADER_
00441         #undef _IRR_COMPILE_WITH_LMTS_LOADER_
00442         #undef _IRR_COMPILE_WITH_MY3D_LOADER_
00443         #undef _IRR_COMPILE_WITH_OBJ_LOADER_
00444         #undef _IRR_COMPILE_WITH_OCT_LOADER_
00445         #undef _IRR_COMPILE_WITH_OGRE_LOADER_
00446         #undef _IRR_COMPILE_WITH_LWO_LOADER_
00447         #undef _IRR_COMPILE_WITH_STL_LOADER_
00448         #undef _IRR_COMPILE_WITH_IRR_WRITER_
00449         #undef _IRR_COMPILE_WITH_COLLADA_WRITER_
00450         #undef _IRR_COMPILE_WITH_STL_WRITER_
00451         #undef _IRR_COMPILE_WITH_OBJ_WRITER_
00452         //#undef _IRR_COMPILE_WITH_BMP_LOADER_
00453         //#undef _IRR_COMPILE_WITH_JPG_LOADER_
00454         #undef _IRR_COMPILE_WITH_PCX_LOADER_
00455         //#undef _IRR_COMPILE_WITH_PNG_LOADER_
00456         #undef _IRR_COMPILE_WITH_PPM_LOADER_
00457         #undef _IRR_COMPILE_WITH_PSD_LOADER_
00458         //#undef _IRR_COMPILE_WITH_TGA_LOADER_
00459         #undef _IRR_COMPILE_WITH_WAL_LOADER_
00460         #undef _IRR_COMPILE_WITH_BMP_WRITER_
00461         #undef _IRR_COMPILE_WITH_JPG_WRITER_
00462         #undef _IRR_COMPILE_WITH_PCX_WRITER_
00463         #undef _IRR_COMPILE_WITH_PNG_WRITER_
00464         #undef _IRR_COMPILE_WITH_PPM_WRITER_
00465         #undef _IRR_COMPILE_WITH_PSD_WRITER_
00466         #undef _IRR_COMPILE_WITH_TGA_WRITER_
00467 
00468 #endif
00469 
00470 #ifndef _IRR_WINDOWS_API_
00471         #undef _IRR_WCHAR_FILESYSTEM
00472 #endif
00473 
00474 #if defined(__sparc__) || defined(__sun__)
00475 #define __BIG_ENDIAN__
00476 #endif
00477 
00478 #if defined(_IRR_SOLARIS_PLATFORM_)
00479         #undef _IRR_COMPILE_WITH_JOYSTICK_EVENTS_
00480 #endif
00481 
00482 #endif // __IRR_COMPILE_CONFIG_H_INCLUDED__
00483 

The Irrlicht Engine
The Irrlicht Engine Documentation © 2003-2009 by Nikolaus Gebhardt. Generated on Sun Jan 10 09:24:04 2010 by Doxygen (1.5.6)