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-2010 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 7
00011 #define IRRLICHT_VERSION_REVISION 2
00012 // This flag will be defined only in SVN, the official release code will have
00013 // it undefined
00014 #define IRRLICHT_VERSION_SVN -beta
00015 #define IRRLICHT_SDK_VERSION "1.7.2"
00016 
00017 #include <stdio.h> // TODO: Although included elsewhere this is required at least for mingw
00018 
00029 
00039 
00040 
00042 //#define _IRR_COMPILE_WITH_SDL_DEVICE_
00043 
00045 #define _IRR_COMPILE_WITH_CONSOLE_DEVICE_
00046 
00049 // The windows platform and API support SDL and WINDOW device
00050 #if defined(_WIN32) || defined(_WIN64) || defined(WIN32) || defined(WIN64)
00051 #define _IRR_WINDOWS_
00052 #define _IRR_WINDOWS_API_
00053 #define _IRR_COMPILE_WITH_WINDOWS_DEVICE_
00054 #endif
00055 
00057 #if defined(_WIN32_WCE)
00058 #define _IRR_WINDOWS_
00059 #define _IRR_WINDOWS_API_
00060 #define _IRR_WINDOWS_CE_PLATFORM_
00061 #define _IRR_COMPILE_WITH_WINDOWS_CE_DEVICE_
00062 #endif
00063 
00064 #if defined(_MSC_VER) && (_MSC_VER < 1300)
00065 #  error "Only Microsoft Visual Studio 7.0 and later are supported."
00066 #endif
00067 
00068 // XBox only suppots the native Window stuff
00069 #if defined(_XBOX)
00070         #undef _IRR_WINDOWS_
00071         #define _IRR_XBOX_PLATFORM_
00072         #define _IRR_WINDOWS_API_
00073         //#define _IRR_COMPILE_WITH_WINDOWS_DEVICE_
00074         #undef _IRR_COMPILE_WITH_WINDOWS_DEVICE_
00075         //#define _IRR_COMPILE_WITH_SDL_DEVICE_
00076 
00077         #include <xtl.h>
00078 #endif
00079 
00080 #if defined(__APPLE__) || defined(MACOSX)
00081 #if !defined(MACOSX)
00082 #define MACOSX // legacy support
00083 #endif
00084 #define _IRR_OSX_PLATFORM_
00085 #define _IRR_COMPILE_WITH_OSX_DEVICE_
00086 #endif
00087 
00088 #if !defined(_IRR_WINDOWS_API_) && !defined(_IRR_OSX_PLATFORM_)
00089 #ifndef _IRR_SOLARIS_PLATFORM_
00090 #define _IRR_LINUX_PLATFORM_
00091 #endif
00092 #define _IRR_POSIX_API_
00093 #define _IRR_COMPILE_WITH_X11_DEVICE_
00094 #endif
00095 
00097 #define _IRR_COMPILE_WITH_JOYSTICK_EVENTS_
00098 
00100 #define _IRR_MATERIAL_MAX_TEXTURES_ 4
00101 
00104 
00117 #if defined(_IRR_WINDOWS_API_) && (!defined(__GNUC__) || defined(IRR_COMPILE_WITH_DX9_DEV_PACK))
00118 
00120 //#define _IRR_COMPILE_WITH_DIRECT3D_8_
00121 #define _IRR_COMPILE_WITH_DIRECT3D_9_
00122 
00123 #endif
00124 
00126 
00128 #define _IRR_COMPILE_WITH_OPENGL_
00129 
00131 
00133 #define _IRR_COMPILE_WITH_SOFTWARE_
00134 
00136 
00137 #define _IRR_COMPILE_WITH_BURNINGSVIDEO_
00138 
00140 
00142 // Only used in LinuxDevice.
00143 #define _IRR_COMPILE_WITH_X11_
00144 
00146 
00148 #if !defined(_IRR_OSX_PLATFORM_) && !defined(_IRR_SOLARIS_PLATFORM_)
00149 #define _IRR_OPENGL_USE_EXTPOINTER_
00150 #endif
00151 
00154 #if defined(_IRR_LINUX_PLATFORM_) && defined(_IRR_COMPILE_WITH_X11_)
00155 #define _IRR_LINUX_X11_VIDMODE_
00156 //#define _IRR_LINUX_X11_RANDR_
00157 #endif
00158 
00160 
00162 #define _IRR_COMPILE_WITH_GUI_
00163 
00164 
00166 
00169 //#define _IRR_WCHAR_FILESYSTEM
00170 
00172 
00174 #define _IRR_COMPILE_WITH_LIBJPEG_
00175 
00177 
00179 #define _IRR_USE_NON_SYSTEM_JPEG_LIB_
00180 
00181 
00183 
00185 #define _IRR_COMPILE_WITH_LIBPNG_
00186 
00188 
00190 #define _IRR_USE_NON_SYSTEM_LIB_PNG_
00191 
00192 
00194 
00203 #define _IRR_D3D_NO_SHADER_DEBUGGING
00204 
00206 
00210 //#define _IRR_D3D_USE_LEGACY_HLSL_COMPILER
00211 
00213 
00215 #undef _IRR_USE_NVIDIA_PERFHUD_
00216 
00218 
00235 #define BURNINGVIDEO_RENDERER_BEAUTIFUL
00236 //#define BURNINGVIDEO_RENDERER_FAST
00237 //#define BURNINGVIDEO_RENDERER_ULTRA_FAST
00238 //#define BURNINGVIDEO_RENDERER_CE
00239 
00241 //#define IGNORE_DEPRECATED_WARNING
00242 
00244 
00246 #define _IRR_COMPILE_WITH_SKINNED_MESH_SUPPORT_
00247 
00248 #ifdef _IRR_COMPILE_WITH_SKINNED_MESH_SUPPORT_
00250 #define _IRR_COMPILE_WITH_B3D_LOADER_
00252 #define _IRR_COMPILE_WITH_MS3D_LOADER_
00254 #define _IRR_COMPILE_WITH_X_LOADER_
00256 #define _IRR_COMPILE_WITH_OGRE_LOADER_
00257 #endif
00258 
00260 #define _IRR_COMPILE_WITH_IRR_MESH_LOADER_
00261 
00263 #define _IRR_COMPILE_WITH_MD2_LOADER_
00265 #define _IRR_COMPILE_WITH_MD3_LOADER_
00266 
00268 #define _IRR_COMPILE_WITH_3DS_LOADER_
00270 #define _IRR_COMPILE_WITH_COLLADA_LOADER_
00272 #define _IRR_COMPILE_WITH_CSM_LOADER_
00274 #define _IRR_COMPILE_WITH_BSP_LOADER_
00276 #define _IRR_COMPILE_WITH_DMF_LOADER_
00278 #define _IRR_COMPILE_WITH_LMTS_LOADER_
00280 #define _IRR_COMPILE_WITH_MY3D_LOADER_
00282 #define _IRR_COMPILE_WITH_OBJ_LOADER_
00284 #define _IRR_COMPILE_WITH_OCT_LOADER_
00286 #define _IRR_COMPILE_WITH_LWO_LOADER_
00288 #define _IRR_COMPILE_WITH_STL_LOADER_
00290 #define _IRR_COMPILE_WITH_PLY_LOADER_
00291 
00293 #define _IRR_COMPILE_WITH_IRR_WRITER_
00295 #define _IRR_COMPILE_WITH_COLLADA_WRITER_
00297 #define _IRR_COMPILE_WITH_STL_WRITER_
00299 #define _IRR_COMPILE_WITH_OBJ_WRITER_
00301 #define _IRR_COMPILE_WITH_PLY_WRITER_
00302 
00305 #define _IRR_COMPILE_WITH_BMP_LOADER_
00307 #define _IRR_COMPILE_WITH_JPG_LOADER_
00309 #define _IRR_COMPILE_WITH_PCX_LOADER_
00311 #define _IRR_COMPILE_WITH_PNG_LOADER_
00313 #define _IRR_COMPILE_WITH_PPM_LOADER_
00315 #define _IRR_COMPILE_WITH_PSD_LOADER_
00317 #define _IRR_COMPILE_WITH_TGA_LOADER_
00319 #define _IRR_COMPILE_WITH_WAL_LOADER_
00321 #define _IRR_COMPILE_WITH_RGB_LOADER_
00322 
00324 #define _IRR_COMPILE_WITH_BMP_WRITER_
00326 #define _IRR_COMPILE_WITH_JPG_WRITER_
00328 #define _IRR_COMPILE_WITH_PCX_WRITER_
00330 #define _IRR_COMPILE_WITH_PNG_WRITER_
00332 #define _IRR_COMPILE_WITH_PPM_WRITER_
00334 #define _IRR_COMPILE_WITH_PSD_WRITER_
00336 #define _IRR_COMPILE_WITH_TGA_WRITER_
00337 
00339 
00340 #define __IRR_COMPILE_WITH_ZIP_ARCHIVE_LOADER_
00341 #ifdef __IRR_COMPILE_WITH_ZIP_ARCHIVE_LOADER_
00343 
00346 #define _IRR_COMPILE_WITH_ZLIB_
00348 
00351 #define _IRR_USE_NON_SYSTEM_ZLIB_
00353 #define _IRR_COMPILE_WITH_ZIP_ENCRYPTION_
00355 
00358 #define _IRR_COMPILE_WITH_BZIP2_
00360 
00363 #define _IRR_USE_NON_SYSTEM_BZLIB_
00365 
00367 #define _IRR_COMPILE_WITH_LZMA_
00368 #endif
00369 
00371 #define __IRR_COMPILE_WITH_MOUNT_ARCHIVE_LOADER_
00373 #define __IRR_COMPILE_WITH_PAK_ARCHIVE_LOADER_
00375 #define __IRR_COMPILE_WITH_NPK_ARCHIVE_LOADER_
00377 #define __IRR_COMPILE_WITH_TAR_ARCHIVE_LOADER_
00378 
00380 
00383 #if !defined(_IRR_OSX_PLATFORM_) && !defined(_IRR_SOLARIS_PLATFORM_)
00384         //#define IRRLICHT_FAST_MATH
00385 #endif
00386 
00387 // Some cleanup and standard stuff
00388 
00389 #ifdef _IRR_WINDOWS_API_
00390 
00391 // To build Irrlicht as a static library, you must define _IRR_STATIC_LIB_ in both the
00392 // Irrlicht build, *and* in the user application, before #including <irrlicht.h>
00393 #ifndef _IRR_STATIC_LIB_
00394 #ifdef IRRLICHT_EXPORTS
00395 #define IRRLICHT_API __declspec(dllexport)
00396 #else
00397 #define IRRLICHT_API __declspec(dllimport)
00398 #endif // IRRLICHT_EXPORT
00399 #else
00400 #define IRRLICHT_API
00401 #endif // _IRR_STATIC_LIB_
00402 
00403 // Declare the calling convention.
00404 #if defined(_STDCALL_SUPPORTED)
00405 #define IRRCALLCONV __stdcall
00406 #else
00407 #define IRRCALLCONV __cdecl
00408 #endif // STDCALL_SUPPORTED
00409 
00410 #else // _IRR_WINDOWS_API_
00411 
00412 // Force symbol export in shared libraries built with gcc.
00413 #if (__GNUC__ >= 4) && !defined(_IRR_STATIC_LIB_) && defined(IRRLICHT_EXPORTS)
00414 #define IRRLICHT_API __attribute__ ((visibility("default")))
00415 #else
00416 #define IRRLICHT_API
00417 #endif
00418 
00419 #define IRRCALLCONV
00420 
00421 #endif // _IRR_WINDOWS_API_
00422 
00423 // We need to disable DIRECT3D9 support for Visual Studio 6.0 because
00424 // those $%&$!! disabled support for it since Dec. 2004 and users are complaining
00425 // about linker errors. Comment this out only if you are knowing what you are
00426 // doing. (Which means you have an old DX9 SDK and VisualStudio6).
00427 #ifdef _MSC_VER
00428 #if (_MSC_VER < 1300 && !defined(__GNUC__))
00429 #undef _IRR_COMPILE_WITH_DIRECT3D_9_
00430 #pragma message("Compiling Irrlicht with Visual Studio 6.0, support for DX9 is disabled.")
00431 #endif
00432 #endif
00433 
00434 // XBox does not have OpenGL or DirectX9
00435 #if defined(_IRR_XBOX_PLATFORM_)
00436         #undef _IRR_COMPILE_WITH_OPENGL_
00437         #undef _IRR_COMPILE_WITH_DIRECT3D_9_
00438 #endif
00439 
00441 #if defined(_WIN32_WCE)
00442         #undef _IRR_COMPILE_WITH_OPENGL_
00443         #undef _IRR_COMPILE_WITH_DIRECT3D_8_
00444         #undef _IRR_COMPILE_WITH_DIRECT3D_9_
00445 
00446         #undef BURNINGVIDEO_RENDERER_BEAUTIFUL
00447         #undef BURNINGVIDEO_RENDERER_FAST
00448         #undef BURNINGVIDEO_RENDERER_ULTRA_FAST
00449         #define BURNINGVIDEO_RENDERER_CE
00450 
00451         #undef _IRR_COMPILE_WITH_WINDOWS_DEVICE_
00452         #define _IRR_COMPILE_WITH_WINDOWS_CE_DEVICE_
00453         //#define _IRR_WCHAR_FILESYSTEM
00454 
00455         #undef _IRR_COMPILE_WITH_IRR_MESH_LOADER_
00456         //#undef _IRR_COMPILE_WITH_MD2_LOADER_
00457         #undef _IRR_COMPILE_WITH_MD3_LOADER_
00458         #undef _IRR_COMPILE_WITH_3DS_LOADER_
00459         #undef _IRR_COMPILE_WITH_COLLADA_LOADER_
00460         #undef _IRR_COMPILE_WITH_CSM_LOADER_
00461         #undef _IRR_COMPILE_WITH_BSP_LOADER_
00462         #undef _IRR_COMPILE_WITH_DMF_LOADER_
00463         #undef _IRR_COMPILE_WITH_LMTS_LOADER_
00464         #undef _IRR_COMPILE_WITH_MY3D_LOADER_
00465         #undef _IRR_COMPILE_WITH_OBJ_LOADER_
00466         #undef _IRR_COMPILE_WITH_OCT_LOADER_
00467         #undef _IRR_COMPILE_WITH_OGRE_LOADER_
00468         #undef _IRR_COMPILE_WITH_LWO_LOADER_
00469         #undef _IRR_COMPILE_WITH_STL_LOADER_
00470         #undef _IRR_COMPILE_WITH_IRR_WRITER_
00471         #undef _IRR_COMPILE_WITH_COLLADA_WRITER_
00472         #undef _IRR_COMPILE_WITH_STL_WRITER_
00473         #undef _IRR_COMPILE_WITH_OBJ_WRITER_
00474         //#undef _IRR_COMPILE_WITH_BMP_LOADER_
00475         //#undef _IRR_COMPILE_WITH_JPG_LOADER_
00476         #undef _IRR_COMPILE_WITH_PCX_LOADER_
00477         //#undef _IRR_COMPILE_WITH_PNG_LOADER_
00478         #undef _IRR_COMPILE_WITH_PPM_LOADER_
00479         #undef _IRR_COMPILE_WITH_PSD_LOADER_
00480         //#undef _IRR_COMPILE_WITH_TGA_LOADER_
00481         #undef _IRR_COMPILE_WITH_WAL_LOADER_
00482         #undef _IRR_COMPILE_WITH_BMP_WRITER_
00483         #undef _IRR_COMPILE_WITH_JPG_WRITER_
00484         #undef _IRR_COMPILE_WITH_PCX_WRITER_
00485         #undef _IRR_COMPILE_WITH_PNG_WRITER_
00486         #undef _IRR_COMPILE_WITH_PPM_WRITER_
00487         #undef _IRR_COMPILE_WITH_PSD_WRITER_
00488         #undef _IRR_COMPILE_WITH_TGA_WRITER_
00489 
00490 #endif
00491 
00492 #ifndef _IRR_WINDOWS_API_
00493         #undef _IRR_WCHAR_FILESYSTEM
00494 #endif
00495 
00496 #if defined(__sparc__) || defined(__sun__)
00497 #define __BIG_ENDIAN__
00498 #endif
00499 
00500 #if defined(_IRR_SOLARIS_PLATFORM_)
00501         #undef _IRR_COMPILE_WITH_JOYSTICK_EVENTS_
00502 #endif
00503 
00504 #endif // __IRR_COMPILE_CONFIG_H_INCLUDED__
00505 

The Irrlicht Engine
The Irrlicht Engine Documentation © 2003-2010 by Nikolaus Gebhardt. Generated on Sun Oct 24 12:41:57 2010 by Doxygen (1.6.2)