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 7
    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 -beta
    00015 #define IRRLICHT_SDK_VERSION "1.7.1"
    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 Documentation © 2003-2010 by Nikolaus Gebhardt. Generated on Sun Feb 14 13:06:57 2010 by Doxygen (1.6.2)