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 0
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"
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 
00122 #endif
00123 
00125 
00127 #define _IRR_COMPILE_WITH_OPENGL_
00128 
00130 
00132 #define _IRR_COMPILE_WITH_SOFTWARE_
00133 
00135 
00136 #define _IRR_COMPILE_WITH_BURNINGSVIDEO_
00137 
00139 
00141 // Only used in LinuxDevice.
00142 #define _IRR_COMPILE_WITH_X11_
00143 
00145 
00147 #if !defined(_IRR_OSX_PLATFORM_) && !defined(_IRR_SOLARIS_PLATFORM_)
00148 #define _IRR_OPENGL_USE_EXTPOINTER_
00149 #endif
00150 
00153 #if defined(_IRR_LINUX_PLATFORM_) && defined(_IRR_COMPILE_WITH_X11_)
00154 #define _IRR_LINUX_X11_VIDMODE_
00155 //#define _IRR_LINUX_X11_RANDR_
00156 #endif
00157 
00159 
00161 #define _IRR_COMPILE_WITH_GUI_
00162 
00163 
00165 
00168 //#define _IRR_WCHAR_FILESYSTEM
00169 
00171 
00174 #define _IRR_COMPILE_WITH_ZLIB_
00175 
00177 
00179 #define _IRR_USE_NON_SYSTEM_ZLIB_
00180 
00181 
00183 
00185 #define _IRR_COMPILE_WITH_LIBJPEG_
00186 
00188 
00190 #define _IRR_USE_NON_SYSTEM_JPEG_LIB_
00191 
00192 
00194 
00196 #define _IRR_COMPILE_WITH_LIBPNG_
00197 
00199 
00201 #define _IRR_USE_NON_SYSTEM_LIB_PNG_
00202 
00203 
00205 
00214 #define _IRR_D3D_NO_SHADER_DEBUGGING
00215 
00217 
00221 //#define _IRR_D3D_USE_LEGACY_HLSL_COMPILER
00222 
00224 
00226 #undef _IRR_USE_NVIDIA_PERFHUD_
00227 
00229 
00246 #define BURNINGVIDEO_RENDERER_BEAUTIFUL
00247 //#define BURNINGVIDEO_RENDERER_FAST
00248 //#define BURNINGVIDEO_RENDERER_ULTRA_FAST
00249 //#define BURNINGVIDEO_RENDERER_CE
00250 
00252 //#define IGNORE_DEPRECATED_WARNING
00253 
00255 
00257 #define _IRR_COMPILE_WITH_SKINNED_MESH_SUPPORT_
00258 
00259 #ifdef _IRR_COMPILE_WITH_SKINNED_MESH_SUPPORT_
00261 #define _IRR_COMPILE_WITH_B3D_LOADER_
00263 #define _IRR_COMPILE_WITH_MS3D_LOADER_
00265 #define _IRR_COMPILE_WITH_X_LOADER_
00266 #endif
00267 
00269 #define _IRR_COMPILE_WITH_IRR_MESH_LOADER_
00270 
00272 #define _IRR_COMPILE_WITH_MD2_LOADER_
00274 #define _IRR_COMPILE_WITH_MD3_LOADER_
00275 
00277 #define _IRR_COMPILE_WITH_3DS_LOADER_
00279 #define _IRR_COMPILE_WITH_COLLADA_LOADER_
00281 #define _IRR_COMPILE_WITH_CSM_LOADER_
00283 #define _IRR_COMPILE_WITH_BSP_LOADER_
00285 #define _IRR_COMPILE_WITH_DMF_LOADER_
00287 #define _IRR_COMPILE_WITH_LMTS_LOADER_
00289 #define _IRR_COMPILE_WITH_MY3D_LOADER_
00291 #define _IRR_COMPILE_WITH_OBJ_LOADER_
00293 #define _IRR_COMPILE_WITH_OCT_LOADER_
00295 #define _IRR_COMPILE_WITH_OGRE_LOADER_
00297 #define _IRR_COMPILE_WITH_LWO_LOADER_
00299 #define _IRR_COMPILE_WITH_STL_LOADER_
00301 #define _IRR_COMPILE_WITH_PLY_LOADER_
00302 
00304 #define _IRR_COMPILE_WITH_IRR_WRITER_
00306 #define _IRR_COMPILE_WITH_COLLADA_WRITER_
00308 #define _IRR_COMPILE_WITH_STL_WRITER_
00310 #define _IRR_COMPILE_WITH_OBJ_WRITER_
00312 #define _IRR_COMPILE_WITH_PLY_WRITER_
00313 
00316 #define _IRR_COMPILE_WITH_BMP_LOADER_
00318 #define _IRR_COMPILE_WITH_JPG_LOADER_
00320 #define _IRR_COMPILE_WITH_PCX_LOADER_
00322 #define _IRR_COMPILE_WITH_PNG_LOADER_
00324 #define _IRR_COMPILE_WITH_PPM_LOADER_
00326 #define _IRR_COMPILE_WITH_PSD_LOADER_
00328 #define _IRR_COMPILE_WITH_TGA_LOADER_
00330 #define _IRR_COMPILE_WITH_WAL_LOADER_
00332 #define _IRR_COMPILE_WITH_RGB_LOADER_
00333 
00335 #define _IRR_COMPILE_WITH_BMP_WRITER_
00337 #define _IRR_COMPILE_WITH_JPG_WRITER_
00339 #define _IRR_COMPILE_WITH_PCX_WRITER_
00341 #define _IRR_COMPILE_WITH_PNG_WRITER_
00343 #define _IRR_COMPILE_WITH_PPM_WRITER_
00345 #define _IRR_COMPILE_WITH_PSD_WRITER_
00347 #define _IRR_COMPILE_WITH_TGA_WRITER_
00348 
00350 #define __IRR_COMPILE_WITH_ZIP_ARCHIVE_LOADER_
00352 #define __IRR_COMPILE_WITH_MOUNT_ARCHIVE_LOADER_
00354 #define __IRR_COMPILE_WITH_PAK_ARCHIVE_LOADER_
00356 #define __IRR_COMPILE_WITH_TAR_ARCHIVE_LOADER_
00357 
00359 
00362 #if !defined(_IRR_OSX_PLATFORM_) && !defined(_IRR_SOLARIS_PLATFORM_)
00363         //#define IRRLICHT_FAST_MATH
00364 #endif
00365 
00366 // Some cleanup and standard stuff
00367 
00368 #ifdef _IRR_WINDOWS_API_
00369 
00370 // To build Irrlicht as a static library, you must define _IRR_STATIC_LIB_ in both the
00371 // Irrlicht build, *and* in the user application, before #including <irrlicht.h>
00372 #ifndef _IRR_STATIC_LIB_
00373 #ifdef IRRLICHT_EXPORTS
00374 #define IRRLICHT_API __declspec(dllexport)
00375 #else
00376 #define IRRLICHT_API __declspec(dllimport)
00377 #endif // IRRLICHT_EXPORT
00378 #else
00379 #define IRRLICHT_API
00380 #endif // _IRR_STATIC_LIB_
00381 
00382 // Declare the calling convention.
00383 #if defined(_STDCALL_SUPPORTED)
00384 #define IRRCALLCONV __stdcall
00385 #else
00386 #define IRRCALLCONV __cdecl
00387 #endif // STDCALL_SUPPORTED
00388 
00389 #else // _IRR_WINDOWS_API_
00390 
00391 // Force symbol export in shared libraries built with gcc.
00392 #if (__GNUC__ >= 4) && !defined(_IRR_STATIC_LIB_) && defined(IRRLICHT_EXPORTS)
00393 #define IRRLICHT_API __attribute__ ((visibility("default")))
00394 #else
00395 #define IRRLICHT_API
00396 #endif
00397 
00398 #define IRRCALLCONV
00399 
00400 #endif // _IRR_WINDOWS_API_
00401 
00402 // We need to disable DIRECT3D9 support for Visual Studio 6.0 because
00403 // those $%&$!! disabled support for it since Dec. 2004 and users are complaining
00404 // about linker errors. Comment this out only if you are knowing what you are
00405 // doing. (Which means you have an old DX9 SDK and VisualStudio6).
00406 #ifdef _MSC_VER
00407 #if (_MSC_VER < 1300 && !defined(__GNUC__))
00408 #undef _IRR_COMPILE_WITH_DIRECT3D_9_
00409 #pragma message("Compiling Irrlicht with Visual Studio 6.0, support for DX9 is disabled.")
00410 #endif
00411 #endif
00412 
00413 // XBox does not have OpenGL or DirectX9
00414 #if defined(_IRR_XBOX_PLATFORM_)
00415         #undef _IRR_COMPILE_WITH_OPENGL_
00416         #undef _IRR_COMPILE_WITH_DIRECT3D_9_
00417 #endif
00418 
00420 #if defined(_WIN32_WCE)
00421         #undef _IRR_COMPILE_WITH_OPENGL_
00422         #undef _IRR_COMPILE_WITH_DIRECT3D_8_
00423         #undef _IRR_COMPILE_WITH_DIRECT3D_9_
00424 
00425         #undef BURNINGVIDEO_RENDERER_BEAUTIFUL
00426         #undef BURNINGVIDEO_RENDERER_FAST
00427         #undef BURNINGVIDEO_RENDERER_ULTRA_FAST
00428         #define BURNINGVIDEO_RENDERER_CE
00429 
00430         #undef _IRR_COMPILE_WITH_WINDOWS_DEVICE_
00431         #define _IRR_COMPILE_WITH_WINDOWS_CE_DEVICE_
00432         //#define _IRR_WCHAR_FILESYSTEM
00433 
00434         #undef _IRR_COMPILE_WITH_IRR_MESH_LOADER_
00435         //#undef _IRR_COMPILE_WITH_MD2_LOADER_
00436         #undef _IRR_COMPILE_WITH_MD3_LOADER_
00437         #undef _IRR_COMPILE_WITH_3DS_LOADER_
00438         #undef _IRR_COMPILE_WITH_COLLADA_LOADER_
00439         #undef _IRR_COMPILE_WITH_CSM_LOADER_
00440         #undef _IRR_COMPILE_WITH_BSP_LOADER_
00441         #undef _IRR_COMPILE_WITH_DMF_LOADER_
00442         #undef _IRR_COMPILE_WITH_LMTS_LOADER_
00443         #undef _IRR_COMPILE_WITH_MY3D_LOADER_
00444         #undef _IRR_COMPILE_WITH_OBJ_LOADER_
00445         #undef _IRR_COMPILE_WITH_OCT_LOADER_
00446         #undef _IRR_COMPILE_WITH_OGRE_LOADER_
00447         #undef _IRR_COMPILE_WITH_LWO_LOADER_
00448         #undef _IRR_COMPILE_WITH_STL_LOADER_
00449         #undef _IRR_COMPILE_WITH_IRR_WRITER_
00450         #undef _IRR_COMPILE_WITH_COLLADA_WRITER_
00451         #undef _IRR_COMPILE_WITH_STL_WRITER_
00452         #undef _IRR_COMPILE_WITH_OBJ_WRITER_
00453         //#undef _IRR_COMPILE_WITH_BMP_LOADER_
00454         //#undef _IRR_COMPILE_WITH_JPG_LOADER_
00455         #undef _IRR_COMPILE_WITH_PCX_LOADER_
00456         //#undef _IRR_COMPILE_WITH_PNG_LOADER_
00457         #undef _IRR_COMPILE_WITH_PPM_LOADER_
00458         #undef _IRR_COMPILE_WITH_PSD_LOADER_
00459         //#undef _IRR_COMPILE_WITH_TGA_LOADER_
00460         #undef _IRR_COMPILE_WITH_WAL_LOADER_
00461         #undef _IRR_COMPILE_WITH_BMP_WRITER_
00462         #undef _IRR_COMPILE_WITH_JPG_WRITER_
00463         #undef _IRR_COMPILE_WITH_PCX_WRITER_
00464         #undef _IRR_COMPILE_WITH_PNG_WRITER_
00465         #undef _IRR_COMPILE_WITH_PPM_WRITER_
00466         #undef _IRR_COMPILE_WITH_PSD_WRITER_
00467         #undef _IRR_COMPILE_WITH_TGA_WRITER_
00468 
00469 #endif
00470 
00471 #ifndef _IRR_WINDOWS_API_
00472         #undef _IRR_WCHAR_FILESYSTEM
00473 #endif
00474 
00475 #if defined(__sparc__) || defined(__sun__)
00476 #define __BIG_ENDIAN__
00477 #endif
00478 
00479 #if defined(_IRR_SOLARIS_PLATFORM_)
00480         #undef _IRR_COMPILE_WITH_JOYSTICK_EVENTS_
00481 #endif
00482 
00483 #endif // __IRR_COMPILE_CONFIG_H_INCLUDED__
00484 

The Irrlicht Engine
The Irrlicht Engine Documentation © 2003-2009 by Nikolaus Gebhardt. Generated on Mon Oct 26 12:48:35 2009 by Doxygen (1.5.6)