| Irrlicht 3D Engine |

IrrCompileConfig.h
Go to the documentation of this file.

    00001 // Copyright (C) 2002-2012 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 8
    00011 #define IRRLICHT_VERSION_REVISION 3
    00012 // This flag will be defined only in SVN, the official release code will have
    00013 // it undefined
    00014 //#define IRRLICHT_VERSION_SVN -alpha
    00015 #define IRRLICHT_SDK_VERSION "1.8.3"
    00016
    00017 #include <stdio.h> // TODO: Although included elsewhere this is required at least for mingw
    00018
    00029
    00039
    00045
    00046
    00048 //#define _IRR_COMPILE_WITH_SDL_DEVICE_
    00049 #ifdef NO_IRR_COMPILE_WITH_SDL_DEVICE_
    00050 #undef _IRR_COMPILE_WITH_SDL_DEVICE_
    00051 #endif
    00052
    00054 #define _IRR_COMPILE_WITH_CONSOLE_DEVICE_
    00055 #ifdef NO_IRR_COMPILE_WITH_CONSOLE_DEVICE_
    00056 #undef _IRR_COMPILE_WITH_CONSOLE_DEVICE_
    00057 #endif
    00058
    00061 // The windows platform and API support SDL and WINDOW device
    00062 #if defined(_WIN32) || defined(_WIN64) || defined(WIN32) || defined(WIN64)
    00063 #define _IRR_WINDOWS_
    00064 #define _IRR_WINDOWS_API_
    00065 #define _IRR_COMPILE_WITH_WINDOWS_DEVICE_
    00066 #endif
    00067
    00069 #if defined(_WIN32_WCE)
    00070 #define _IRR_WINDOWS_
    00071 #define _IRR_WINDOWS_API_
    00072 #define _IRR_WINDOWS_CE_PLATFORM_
    00073 #define _IRR_COMPILE_WITH_WINDOWS_CE_DEVICE_
    00074 #endif
    00075
    00076 #if defined(_MSC_VER) && (_MSC_VER < 1300)
    00077 #  error "Only Microsoft Visual Studio 7.0 and later are supported."
    00078 #endif
    00079
    00080 // XBox only suppots the native Window stuff
    00081 #if defined(_XBOX)
    00082     #undef _IRR_WINDOWS_
    00083     #define _IRR_XBOX_PLATFORM_
    00084     #define _IRR_WINDOWS_API_
    00085     //#define _IRR_COMPILE_WITH_WINDOWS_DEVICE_
    00086     #undef _IRR_COMPILE_WITH_WINDOWS_DEVICE_
    00087     //#define _IRR_COMPILE_WITH_SDL_DEVICE_
    00088
    00089     #include <xtl.h>
    00090 #endif
    00091
    00092 #if defined(__APPLE__) || defined(MACOSX)
    00093 #if !defined(MACOSX)
    00094 #define MACOSX // legacy support
    00095 #endif
    00096 #define _IRR_OSX_PLATFORM_
    00097 #define _IRR_COMPILE_WITH_OSX_DEVICE_
    00098 #endif
    00099
    00100 #if !defined(_IRR_WINDOWS_API_) && !defined(_IRR_OSX_PLATFORM_)
    00101 #ifndef _IRR_SOLARIS_PLATFORM_
    00102 #define _IRR_LINUX_PLATFORM_
    00103 #endif
    00104 #define _IRR_POSIX_API_
    00105 #define _IRR_COMPILE_WITH_X11_DEVICE_
    00106 #endif
    00107
    00108
    00110 #define _IRR_COMPILE_WITH_JOYSTICK_EVENTS_
    00111 #ifdef NO_IRR_COMPILE_WITH_JOYSTICK_EVENTS_
    00112 #undef _IRR_COMPILE_WITH_JOYSTICK_EVENTS_
    00113 #endif
    00114
    00115
    00117 #define _IRR_MATERIAL_MAX_TEXTURES_ 4
    00118
    00121
    00134 #if defined(_IRR_WINDOWS_API_) && (!defined(__GNUC__) || defined(IRR_COMPILE_WITH_DX9_DEV_PACK))
    00135
    00137
    00139 #define _IRR_COMPILE_WITH_DIRECTINPUT_JOYSTICK_
    00140 #ifdef NO_IRR_COMPILE_WITH_DIRECTINPUT_JOYSTICK_
    00141 #undef _IRR_COMPILE_WITH_DIRECTINPUT_JOYSTICK_
    00142 #endif
    00143 // can't get this to compile currently under borland, can be removed if someone has a better solution
    00144 #if defined(__BORLANDC__)
    00145 #undef _IRR_COMPILE_WITH_DIRECTINPUT_JOYSTICK_
    00146 #endif
    00147
    00149 // #define _IRR_COMPILE_WITH_DIRECT3D_8_
    00150 #define _IRR_COMPILE_WITH_DIRECT3D_9_
    00151
    00152 #ifdef NO_IRR_COMPILE_WITH_DIRECT3D_8_
    00153 #undef _IRR_COMPILE_WITH_DIRECT3D_8_
    00154 #endif
    00155 #ifdef NO_IRR_COMPILE_WITH_DIRECT3D_9_
    00156 #undef _IRR_COMPILE_WITH_DIRECT3D_9_
    00157 #endif
    00158
    00159 #endif
    00160
    00162
    00164 #define _IRR_COMPILE_WITH_OPENGL_
    00165 #ifdef NO_IRR_COMPILE_WITH_OPENGL_
    00166 #undef _IRR_COMPILE_WITH_OPENGL_
    00167 #endif
    00168
    00170
    00172 #define _IRR_COMPILE_WITH_SOFTWARE_
    00173 #ifdef NO_IRR_COMPILE_WITH_SOFTWARE_
    00174 #undef _IRR_COMPILE_WITH_SOFTWARE_
    00175 #endif
    00176
    00178
    00179 #define _IRR_COMPILE_WITH_BURNINGSVIDEO_
    00180 #ifdef NO_IRR_COMPILE_WITH_BURNINGSVIDEO_
    00181 #undef _IRR_COMPILE_WITH_BURNINGSVIDEO_
    00182 #endif
    00183
    00185
    00187 // Only used in LinuxDevice.
    00188 #define _IRR_COMPILE_WITH_X11_
    00189 #ifdef NO_IRR_COMPILE_WITH_X11_
    00190 #undef _IRR_COMPILE_WITH_X11_
    00191 #endif
    00192
    00194
    00196 #if !defined(_IRR_OSX_PLATFORM_) && !defined(_IRR_SOLARIS_PLATFORM_)
    00197 #define _IRR_OPENGL_USE_EXTPOINTER_
    00198 #endif
    00199
    00203 #if defined(_IRR_LINUX_PLATFORM_) && defined(_IRR_COMPILE_WITH_X11_)
    00204 #define _IRR_LINUX_X11_VIDMODE_
    00205 //#define _IRR_LINUX_X11_RANDR_
    00206 #ifdef NO_IRR_LINUX_X11_VIDMODE_
    00207 #undef _IRR_LINUX_X11_VIDMODE_
    00208 #endif
    00209 #ifdef NO_IRR_LINUX_X11_RANDR_
    00210 #undef _IRR_LINUX_X11_RANDR_
    00211 #endif
    00212
    00216 //#define _IRR_LINUX_XCURSOR_
    00217 #ifdef NO_IRR_LINUX_XCURSOR_
    00218 #undef _IRR_LINUX_XCURSOR_
    00219 #endif
    00220
    00221 #endif
    00222
    00224
    00226 #define _IRR_COMPILE_WITH_GUI_
    00227 #ifdef NO_IRR_COMPILE_WITH_GUI_
    00228 #undef _IRR_COMPILE_WITH_GUI_
    00229 #endif
    00230
    00232
    00236 //#define _IRR_WCHAR_FILESYSTEM
    00237 #ifdef NO_IRR_WCHAR_FILESYSTEM
    00238 #undef _IRR_WCHAR_FILESYSTEM
    00239 #endif
    00240
    00242
    00244 #define _IRR_COMPILE_WITH_LIBJPEG_
    00245 #ifdef NO_IRR_COMPILE_WITH_LIBJPEG_
    00246 #undef _IRR_COMPILE_WITH_LIBJPEG_
    00247 #endif
    00248
    00250
    00252 #define _IRR_USE_NON_SYSTEM_JPEG_LIB_
    00253 #ifdef NO_IRR_USE_NON_SYSTEM_JPEG_LIB_
    00254 #undef _IRR_USE_NON_SYSTEM_JPEG_LIB_
    00255 #endif
    00256
    00258
    00260 #define _IRR_COMPILE_WITH_LIBPNG_
    00261 #ifdef NO_IRR_COMPILE_WITH_LIBPNG_
    00262 #undef _IRR_COMPILE_WITH_LIBPNG_
    00263 #endif
    00264
    00266
    00268 #define _IRR_USE_NON_SYSTEM_LIB_PNG_
    00269 #ifdef NO_IRR_USE_NON_SYSTEM_LIB_PNG_
    00270 #undef _IRR_USE_NON_SYSTEM_LIB_PNG_
    00271 #endif
    00272
    00274
    00283 #define _IRR_D3D_NO_SHADER_DEBUGGING
    00284 #ifdef NO_IRR_D3D_NO_SHADER_DEBUGGING
    00285 #undef _IRR_D3D_NO_SHADER_DEBUGGING
    00286 #endif
    00287
    00289
    00293 //#define _IRR_D3D_USE_LEGACY_HLSL_COMPILER
    00294 #ifdef NO_IRR_D3D_USE_LEGACY_HLSL_COMPILER
    00295 #undef _IRR_D3D_USE_LEGACY_HLSL_COMPILER
    00296 #endif
    00297
    00299 //#define _IRR_COMPILE_WITH_CG_
    00300 #ifdef NO_IRR_COMPILE_WITH_CG_
    00301 #undef _IRR_COMPILE_WITH_CG_
    00302 #endif
    00303 #if !defined(_IRR_COMPILE_WITH_OPENGL_) && !defined(_IRR_COMPILE_WITH_DIRECT3D_9_)
    00304 #undef _IRR_COMPILE_WITH_CG_
    00305 #endif
    00306
    00308
    00310 #undef _IRR_USE_NVIDIA_PERFHUD_
    00311
    00313
    00330 #define BURNINGVIDEO_RENDERER_BEAUTIFUL
    00331 //#define BURNINGVIDEO_RENDERER_FAST
    00332 //#define BURNINGVIDEO_RENDERER_ULTRA_FAST
    00333 //#define BURNINGVIDEO_RENDERER_CE
    00334
    00336 //#define IGNORE_DEPRECATED_WARNING
    00337
    00339
    00340 #define _IRR_COMPILE_WITH_IRR_SCENE_LOADER_
    00341 #ifdef NO_IRR_COMPILE_WITH_IRR_SCENE_LOADER_
    00342 #undef _IRR_COMPILE_WITH_IRR_SCENE_LOADER_
    00343 #endif
    00344
    00346
    00348 #define _IRR_COMPILE_WITH_SKINNED_MESH_SUPPORT_
    00349 #ifdef NO_IRR_COMPILE_WITH_SKINNED_MESH_SUPPORT_
    00350 #undef _IRR_COMPILE_WITH_SKINNED_MESH_SUPPORT_
    00351 #endif
    00352
    00353 #ifdef _IRR_COMPILE_WITH_SKINNED_MESH_SUPPORT_
    00354
    00355 #define _IRR_COMPILE_WITH_B3D_LOADER_
    00356 #ifdef NO_IRR_COMPILE_WITH_B3D_LOADER_
    00357 #undef _IRR_COMPILE_WITH_B3D_LOADER_
    00358 #endif
    00359
    00360 #define _IRR_COMPILE_WITH_MS3D_LOADER_
    00361 #ifdef NO_IRR_COMPILE_WITH_MS3D_LOADER_
    00362 #undef _IRR_COMPILE_WITH_MS3D_LOADER_
    00363 #endif
    00364
    00365 #define _IRR_COMPILE_WITH_X_LOADER_
    00366 #ifdef NO_IRR_COMPILE_WITH_X_LOADER_
    00367 #undef _IRR_COMPILE_WITH_X_LOADER_
    00368 #endif
    00369
    00370 #define _IRR_COMPILE_WITH_OGRE_LOADER_
    00371 #ifdef NO_IRR_COMPILE_WITH_OGRE_LOADER_
    00372 #undef _IRR_COMPILE_WITH_OGRE_LOADER_
    00373 #endif
    00374 #endif  // _IRR_COMPILE_WITH_SKINNED_MESH_SUPPORT_
    00375
    00377 #define _IRR_COMPILE_WITH_IRR_MESH_LOADER_
    00378 #ifdef NO_IRR_COMPILE_WITH_IRR_MESH_LOADER_
    00379 #undef _IRR_COMPILE_WITH_IRR_MESH_LOADER_
    00380 #endif
    00381
    00382 #define _IRR_COMPILE_WITH_HALFLIFE_LOADER_
    00383 #ifdef NO_IRR_COMPILE_WITH_HALFLIFE_LOADER_
    00384 #undef _IRR_COMPILE_WITH_HALFLIFE_LOADER_
    00385 #endif
    00386
    00387 #define _IRR_COMPILE_WITH_MD2_LOADER_
    00388 #ifdef NO_IRR_COMPILE_WITH_MD2_LOADER_
    00389 #undef _IRR_COMPILE_WITH_MD2_LOADER_
    00390 #endif
    00391
    00392 #define _IRR_COMPILE_WITH_MD3_LOADER_
    00393 #ifdef NO_IRR_COMPILE_WITH_MD3_LOADER_
    00394 #undef _IRR_COMPILE_WITH_MD3_LOADER_
    00395 #endif
    00396
    00397 #define _IRR_COMPILE_WITH_3DS_LOADER_
    00398 #ifdef NO_IRR_COMPILE_WITH_3DS_LOADER_
    00399 #undef _IRR_COMPILE_WITH_3DS_LOADER_
    00400 #endif
    00401
    00402 #define _IRR_COMPILE_WITH_COLLADA_LOADER_
    00403 #ifdef NO_IRR_COMPILE_WITH_COLLADA_LOADER_
    00404 #undef _IRR_COMPILE_WITH_COLLADA_LOADER_
    00405 #endif
    00406
    00407 #define _IRR_COMPILE_WITH_CSM_LOADER_
    00408 #ifdef NO_IRR_COMPILE_WITH_CSM_LOADER_
    00409 #undef _IRR_COMPILE_WITH_CSM_LOADER_
    00410 #endif
    00411
    00412 #define _IRR_COMPILE_WITH_BSP_LOADER_
    00413 #ifdef NO_IRR_COMPILE_WITH_BSP_LOADER_
    00414 #undef _IRR_COMPILE_WITH_BSP_LOADER_
    00415 #endif
    00416
    00417 #define _IRR_COMPILE_WITH_DMF_LOADER_
    00418 #ifdef NO_IRR_COMPILE_WITH_DMF_LOADER_
    00419 #undef _IRR_COMPILE_WITH_DMF_LOADER_
    00420 #endif
    00421
    00422 #define _IRR_COMPILE_WITH_LMTS_LOADER_
    00423 #ifdef NO_IRR_COMPILE_WITH_LMTS_LOADER_
    00424 #undef _IRR_COMPILE_WITH_LMTS_LOADER_
    00425 #endif
    00426
    00427 #define _IRR_COMPILE_WITH_MY3D_LOADER_
    00428 #ifdef NO_IRR_COMPILE_WITH_MY3D_LOADER_
    00429 #undef _IRR_COMPILE_WITH_MY3D_LOADER_
    00430 #endif
    00431
    00432 #define _IRR_COMPILE_WITH_OBJ_LOADER_
    00433 #ifdef NO_IRR_COMPILE_WITH_OBJ_LOADER_
    00434 #undef _IRR_COMPILE_WITH_OBJ_LOADER_
    00435 #endif
    00436
    00437 #define _IRR_COMPILE_WITH_OCT_LOADER_
    00438 #ifdef NO_IRR_COMPILE_WITH_OCT_LOADER_
    00439 #undef _IRR_COMPILE_WITH_OCT_LOADER_
    00440 #endif
    00441
    00442 #define _IRR_COMPILE_WITH_LWO_LOADER_
    00443 #ifdef NO_IRR_COMPILE_WITH_LWO_LOADER_
    00444 #undef _IRR_COMPILE_WITH_LWO_LOADER_
    00445 #endif
    00446
    00447 #define _IRR_COMPILE_WITH_STL_LOADER_
    00448 #ifdef NO_IRR_COMPILE_WITH_STL_LOADER_
    00449 #undef _IRR_COMPILE_WITH_STL_LOADER_
    00450 #endif
    00451
    00452 #define _IRR_COMPILE_WITH_PLY_LOADER_
    00453 #ifdef NO_IRR_COMPILE_WITH_PLY_LOADER_
    00454 #undef _IRR_COMPILE_WITH_PLY_LOADER_
    00455 #endif
    00456
    00457 #define _IRR_COMPILE_WITH_SMF_LOADER_
    00458 #ifdef NO_IRR_COMPILE_WITH_SMF_LOADER_
    00459 #undef _IRR_COMPILE_WITH_SMF_LOADER_
    00460 #endif
    00461
    00463 #define _IRR_COMPILE_WITH_IRR_WRITER_
    00464 #ifdef NO_IRR_COMPILE_WITH_IRR_WRITER_
    00465 #undef _IRR_COMPILE_WITH_IRR_WRITER_
    00466 #endif
    00467
    00468 #define _IRR_COMPILE_WITH_COLLADA_WRITER_
    00469 #ifdef NO_IRR_COMPILE_WITH_COLLADA_WRITER_
    00470 #undef _IRR_COMPILE_WITH_COLLADA_WRITER_
    00471 #endif
    00472
    00473 #define _IRR_COMPILE_WITH_STL_WRITER_
    00474 #ifdef NO_IRR_COMPILE_WITH_STL_WRITER_
    00475 #undef _IRR_COMPILE_WITH_STL_WRITER_
    00476 #endif
    00477
    00478 #define _IRR_COMPILE_WITH_OBJ_WRITER_
    00479 #ifdef NO_IRR_COMPILE_WITH_OBJ_WRITER_
    00480 #undef _IRR_COMPILE_WITH_OBJ_WRITER_
    00481 #endif
    00482
    00483 #define _IRR_COMPILE_WITH_PLY_WRITER_
    00484 #ifdef NO_IRR_COMPILE_WITH_PLY_WRITER_
    00485 #undef _IRR_COMPILE_WITH_PLY_WRITER_
    00486 #endif
    00487
    00490 #define _IRR_COMPILE_WITH_BMP_LOADER_
    00491 #ifdef NO_IRR_COMPILE_WITH_BMP_LOADER_
    00492 #undef _IRR_COMPILE_WITH_BMP_LOADER_
    00493 #endif
    00494
    00495 #define _IRR_COMPILE_WITH_JPG_LOADER_
    00496 #ifdef NO_IRR_COMPILE_WITH_JPG_LOADER_
    00497 #undef _IRR_COMPILE_WITH_JPG_LOADER_
    00498 #endif
    00499
    00500 #define _IRR_COMPILE_WITH_PCX_LOADER_
    00501 #ifdef NO_IRR_COMPILE_WITH_PCX_LOADER_
    00502 #undef _IRR_COMPILE_WITH_PCX_LOADER_
    00503 #endif
    00504
    00505 #define _IRR_COMPILE_WITH_PNG_LOADER_
    00506 #ifdef NO_IRR_COMPILE_WITH_PNG_LOADER_
    00507 #undef _IRR_COMPILE_WITH_PNG_LOADER_
    00508 #endif
    00509
    00510 #define _IRR_COMPILE_WITH_PPM_LOADER_
    00511 #ifdef NO_IRR_COMPILE_WITH_PPM_LOADER_
    00512 #undef _IRR_COMPILE_WITH_PPM_LOADER_
    00513 #endif
    00514
    00515 #define _IRR_COMPILE_WITH_PSD_LOADER_
    00516 #ifdef NO_IRR_COMPILE_WITH_PSD_LOADER_
    00517 #undef _IRR_COMPILE_WITH_PSD_LOADER_
    00518 #endif
    00519
    00520 // Outcommented because
    00521 // a) it doesn't compile on 64-bit currently
    00522 // b) anyone enabling it should be aware that S3TC compression algorithm which might be used in that loader
    00523 // is patented in the US by S3 and they do collect license fees when it's used in applications.
    00524 // So if you are unfortunate enough to develop applications for US market and their broken patent system be careful.
    00525 // #define _IRR_COMPILE_WITH_DDS_LOADER_
    00526 #ifdef NO_IRR_COMPILE_WITH_DDS_LOADER_
    00527 #undef _IRR_COMPILE_WITH_DDS_LOADER_
    00528 #endif
    00529
    00530 #define _IRR_COMPILE_WITH_TGA_LOADER_
    00531 #ifdef NO_IRR_COMPILE_WITH_TGA_LOADER_
    00532 #undef _IRR_COMPILE_WITH_TGA_LOADER_
    00533 #endif
    00534
    00535 #define _IRR_COMPILE_WITH_WAL_LOADER_
    00536 #ifdef NO_IRR_COMPILE_WITH_WAL_LOADER_
    00537 #undef _IRR_COMPILE_WITH_WAL_LOADER_
    00538 #endif
    00539
    00540 #define _IRR_COMPILE_WITH_LMP_LOADER_
    00541 #ifdef NO_IRR_COMPILE_WITH_LMP_LOADER_
    00542 #undef _IRR_COMPILE_WITH_LMP_LOADER_
    00543 #endif
    00544
    00545 #define _IRR_COMPILE_WITH_RGB_LOADER_
    00546 #ifdef NO_IRR_COMPILE_WITH_RGB_LOADER_
    00547 #undef _IRR_COMPILE_WITH_RGB_LOADER_
    00548 #endif
    00549
    00551 #define _IRR_COMPILE_WITH_BMP_WRITER_
    00552 #ifdef NO_IRR_COMPILE_WITH_BMP_WRITER_
    00553 #undef _IRR_COMPILE_WITH_BMP_WRITER_
    00554 #endif
    00555
    00556 #define _IRR_COMPILE_WITH_JPG_WRITER_
    00557 #ifdef NO_IRR_COMPILE_WITH_JPG_WRITER_
    00558 #undef _IRR_COMPILE_WITH_JPG_WRITER_
    00559 #endif
    00560
    00561 #define _IRR_COMPILE_WITH_PCX_WRITER_
    00562 #ifdef NO_IRR_COMPILE_WITH_PCX_WRITER_
    00563 #undef _IRR_COMPILE_WITH_PCX_WRITER_
    00564 #endif
    00565
    00566 #define _IRR_COMPILE_WITH_PNG_WRITER_
    00567 #ifdef NO_IRR_COMPILE_WITH_PNG_WRITER_
    00568 #undef _IRR_COMPILE_WITH_PNG_WRITER_
    00569 #endif
    00570
    00571 #define _IRR_COMPILE_WITH_PPM_WRITER_
    00572 #ifdef NO_IRR_COMPILE_WITH_PPM_WRITER_
    00573 #undef _IRR_COMPILE_WITH_PPM_WRITER_
    00574 #endif
    00575
    00576 #define _IRR_COMPILE_WITH_PSD_WRITER_
    00577 #ifdef NO_IRR_COMPILE_WITH_PSD_WRITER_
    00578 #undef _IRR_COMPILE_WITH_PSD_WRITER_
    00579 #endif
    00580
    00581 #define _IRR_COMPILE_WITH_TGA_WRITER_
    00582 #ifdef NO_IRR_COMPILE_WITH_TGA_WRITER_
    00583 #undef _IRR_COMPILE_WITH_TGA_WRITER_
    00584 #endif
    00585
    00587
    00588 #define __IRR_COMPILE_WITH_ZIP_ARCHIVE_LOADER_
    00589 #ifdef NO__IRR_COMPILE_WITH_ZIP_ARCHIVE_LOADER_
    00590 #undef __IRR_COMPILE_WITH_ZIP_ARCHIVE_LOADER_
    00591 #endif
    00592 #ifdef __IRR_COMPILE_WITH_ZIP_ARCHIVE_LOADER_
    00593
    00594
    00597 #define _IRR_COMPILE_WITH_ZLIB_
    00598 #ifdef NO_IRR_COMPILE_WITH_ZLIB_
    00599 #undef _IRR_COMPILE_WITH_ZLIB_
    00600 #endif
    00601
    00602
    00605 #define _IRR_USE_NON_SYSTEM_ZLIB_
    00606 #ifdef NO_IRR_USE_NON_SYSTEM_ZLIB_
    00607 #undef _IRR_USE_NON_SYSTEM_ZLIB_
    00608 #endif
    00609
    00610 #define _IRR_COMPILE_WITH_ZIP_ENCRYPTION_
    00611 #ifdef NO_IRR_COMPILE_WITH_ZIP_ENCRYPTION_
    00612 #undef _IRR_COMPILE_WITH_ZIP_ENCRYPTION_
    00613 #endif
    00614
    00615
    00618 #define _IRR_COMPILE_WITH_BZIP2_
    00619 #ifdef NO_IRR_COMPILE_WITH_BZIP2_
    00620 #undef _IRR_COMPILE_WITH_BZIP2_
    00621 #endif
    00622
    00623
    00626 #define _IRR_USE_NON_SYSTEM_BZLIB_
    00627 #ifdef NO_IRR_USE_NON_SYSTEM_BZLIB_
    00628 #undef _IRR_USE_NON_SYSTEM_BZLIB_
    00629 #endif
    00630
    00631
    00633 #define _IRR_COMPILE_WITH_LZMA_
    00634 #ifdef NO_IRR_COMPILE_WITH_LZMA_
    00635 #undef _IRR_COMPILE_WITH_LZMA_
    00636 #endif
    00637 #endif
    00638
    00640 #define __IRR_COMPILE_WITH_MOUNT_ARCHIVE_LOADER_
    00641 #ifdef NO__IRR_COMPILE_WITH_MOUNT_ARCHIVE_LOADER_
    00642 #undef __IRR_COMPILE_WITH_MOUNT_ARCHIVE_LOADER_
    00643 #endif
    00644
    00645 #define __IRR_COMPILE_WITH_PAK_ARCHIVE_LOADER_
    00646 #ifdef NO__IRR_COMPILE_WITH_PAK_ARCHIVE_LOADER_
    00647 #undef __IRR_COMPILE_WITH_PAK_ARCHIVE_LOADER_
    00648 #endif
    00649
    00650 #define __IRR_COMPILE_WITH_NPK_ARCHIVE_LOADER_
    00651 #ifdef NO__IRR_COMPILE_WITH_NPK_ARCHIVE_LOADER_
    00652 #undef __IRR_COMPILE_WITH_NPK_ARCHIVE_LOADER_
    00653 #endif
    00654
    00655 #define __IRR_COMPILE_WITH_TAR_ARCHIVE_LOADER_
    00656 #ifdef NO__IRR_COMPILE_WITH_TAR_ARCHIVE_LOADER_
    00657 #undef __IRR_COMPILE_WITH_TAR_ARCHIVE_LOADER_
    00658 #endif
    00659
    00660 #define __IRR_COMPILE_WITH_WAD_ARCHIVE_LOADER_
    00661 #ifdef NO__IRR_COMPILE_WITH_WAD_ARCHIVE_LOADER_
    00662 #undef __IRR_COMPILE_WITH_WAD_ARCHIVE_LOADER_
    00663 #endif
    00664
    00666
    00669 #if !defined(_IRR_OSX_PLATFORM_) && !defined(_IRR_SOLARIS_PLATFORM_)
    00670     //#define IRRLICHT_FAST_MATH
    00671     #ifdef NO_IRRLICHT_FAST_MATH
    00672     #undef IRRLICHT_FAST_MATH
    00673     #endif
    00674 #endif
    00675
    00676 // Some cleanup and standard stuff
    00677
    00678 #ifdef _IRR_WINDOWS_API_
    00679
    00680 // To build Irrlicht as a static library, you must define _IRR_STATIC_LIB_ in both the
    00681 // Irrlicht build, *and* in the user application, before #including <irrlicht.h>
    00682 #ifndef _IRR_STATIC_LIB_
    00683 #ifdef IRRLICHT_EXPORTS
    00684 #define IRRLICHT_API __declspec(dllexport)
    00685 #else
    00686 #define IRRLICHT_API __declspec(dllimport)
    00687 #endif // IRRLICHT_EXPORT
    00688 #else
    00689 #define IRRLICHT_API
    00690 #endif // _IRR_STATIC_LIB_
    00691
    00692 // Declare the calling convention.
    00693 #if defined(_STDCALL_SUPPORTED)
    00694 #define IRRCALLCONV __stdcall
    00695 #else
    00696 #define IRRCALLCONV __cdecl
    00697 #endif // STDCALL_SUPPORTED
    00698
    00699 #else // _IRR_WINDOWS_API_
    00700
    00701 // Force symbol export in shared libraries built with gcc.
    00702 #if (__GNUC__ >= 4) && !defined(_IRR_STATIC_LIB_) && defined(IRRLICHT_EXPORTS)
    00703 #define IRRLICHT_API __attribute__ ((visibility("default")))
    00704 #else
    00705 #define IRRLICHT_API
    00706 #endif
    00707
    00708 #define IRRCALLCONV
    00709
    00710 #endif // _IRR_WINDOWS_API_
    00711
    00712 // We need to disable DIRECT3D9 support for Visual Studio 6.0 because
    00713 // those $%&$!! disabled support for it since Dec. 2004 and users are complaining
    00714 // about linker errors. Comment this out only if you are knowing what you are
    00715 // doing. (Which means you have an old DX9 SDK and VisualStudio6).
    00716 #ifdef _MSC_VER
    00717 #if (_MSC_VER < 1300 && !defined(__GNUC__))
    00718 #undef _IRR_COMPILE_WITH_DIRECT3D_9_
    00719 #pragma message("Compiling Irrlicht with Visual Studio 6.0, support for DX9 is disabled.")
    00720 #endif
    00721 #endif
    00722
    00723 // XBox does not have OpenGL or DirectX9
    00724 #if defined(_IRR_XBOX_PLATFORM_)
    00725     #undef _IRR_COMPILE_WITH_OPENGL_
    00726     #undef _IRR_COMPILE_WITH_DIRECT3D_9_
    00727 #endif
    00728
    00730 #if defined(_WIN32_WCE)
    00731     #undef _IRR_COMPILE_WITH_OPENGL_
    00732     #undef _IRR_COMPILE_WITH_DIRECT3D_8_
    00733     #undef _IRR_COMPILE_WITH_DIRECT3D_9_
    00734
    00735     #undef BURNINGVIDEO_RENDERER_BEAUTIFUL
    00736     #undef BURNINGVIDEO_RENDERER_FAST
    00737     #undef BURNINGVIDEO_RENDERER_ULTRA_FAST
    00738     #define BURNINGVIDEO_RENDERER_CE
    00739
    00740     #undef _IRR_COMPILE_WITH_WINDOWS_DEVICE_
    00741     #define _IRR_COMPILE_WITH_WINDOWS_CE_DEVICE_
    00742     //#define _IRR_WCHAR_FILESYSTEM
    00743
    00744     #undef _IRR_COMPILE_WITH_IRR_MESH_LOADER_
    00745     //#undef _IRR_COMPILE_WITH_MD2_LOADER_
    00746     #undef _IRR_COMPILE_WITH_MD3_LOADER_
    00747     #undef _IRR_COMPILE_WITH_3DS_LOADER_
    00748     #undef _IRR_COMPILE_WITH_COLLADA_LOADER_
    00749     #undef _IRR_COMPILE_WITH_CSM_LOADER_
    00750     #undef _IRR_COMPILE_WITH_BSP_LOADER_
    00751     #undef _IRR_COMPILE_WITH_DMF_LOADER_
    00752     #undef _IRR_COMPILE_WITH_LMTS_LOADER_
    00753     #undef _IRR_COMPILE_WITH_MY3D_LOADER_
    00754     #undef _IRR_COMPILE_WITH_OBJ_LOADER_
    00755     #undef _IRR_COMPILE_WITH_OCT_LOADER_
    00756     #undef _IRR_COMPILE_WITH_OGRE_LOADER_
    00757     #undef _IRR_COMPILE_WITH_LWO_LOADER_
    00758     #undef _IRR_COMPILE_WITH_STL_LOADER_
    00759     #undef _IRR_COMPILE_WITH_IRR_WRITER_
    00760     #undef _IRR_COMPILE_WITH_COLLADA_WRITER_
    00761     #undef _IRR_COMPILE_WITH_STL_WRITER_
    00762     #undef _IRR_COMPILE_WITH_OBJ_WRITER_
    00763     //#undef _IRR_COMPILE_WITH_BMP_LOADER_
    00764     //#undef _IRR_COMPILE_WITH_JPG_LOADER_
    00765     #undef _IRR_COMPILE_WITH_PCX_LOADER_
    00766     //#undef _IRR_COMPILE_WITH_PNG_LOADER_
    00767     #undef _IRR_COMPILE_WITH_PPM_LOADER_
    00768     #undef _IRR_COMPILE_WITH_PSD_LOADER_
    00769     //#undef _IRR_COMPILE_WITH_TGA_LOADER_
    00770     #undef _IRR_COMPILE_WITH_WAL_LOADER_
    00771     #undef _IRR_COMPILE_WITH_BMP_WRITER_
    00772     #undef _IRR_COMPILE_WITH_JPG_WRITER_
    00773     #undef _IRR_COMPILE_WITH_PCX_WRITER_
    00774     #undef _IRR_COMPILE_WITH_PNG_WRITER_
    00775     #undef _IRR_COMPILE_WITH_PPM_WRITER_
    00776     #undef _IRR_COMPILE_WITH_PSD_WRITER_
    00777     #undef _IRR_COMPILE_WITH_TGA_WRITER_
    00778
    00779 #endif
    00780
    00781 #ifndef _IRR_WINDOWS_API_
    00782     #undef _IRR_WCHAR_FILESYSTEM
    00783 #endif
    00784
    00785 #if defined(__sparc__) || defined(__sun__)
    00786 #define __BIG_ENDIAN__
    00787 #endif
    00788
    00789 #if defined(_IRR_SOLARIS_PLATFORM_)
    00790     #undef _IRR_COMPILE_WITH_JOYSTICK_EVENTS_
    00791 #endif
    00792
    00794 #define __IRR_HAS_S64
    00795 #ifdef NO__IRR_HAS_S64
    00796 #undef __IRR_HAS_S64
    00797 #endif
    00798
    00799 #if defined(__BORLANDC__)
    00800     #include <tchar.h>
    00801
    00802     // Borland 5.5.1 does not have _strcmpi defined
    00803     #if __BORLANDC__ == 0x551
    00804     //    #define _strcmpi strcmpi
    00805         #undef _tfinddata_t
    00806         #undef _tfindfirst
    00807         #undef _tfindnext
    00808
    00809         #define _tfinddata_t __tfinddata_t
    00810         #define _tfindfirst  __tfindfirst
    00811         #define _tfindnext   __tfindnext
    00812         typedef long intptr_t;
    00813     #endif
    00814
    00815 #endif
    00816
    00817 #ifdef _DEBUG
    00818
    00819     // NOTE: Those attributes were used always until 1.8.0 and became a global define for 1.8.1
    00820     // which is only enabled in debug because it had a large (sometimes >5%) impact on speed.
    00821     // A better solution in the long run is to break the interface and remove _all_ attribute
    00822     // access in functions like CSceneManager::drawAll and instead put that information in some
    00823     // own struct/class or in CSceneManager.
    00824     // See http://irrlicht.sourceforge.net/forum/viewtopic.php?f=2&t=48211 for the discussion.
    00825     #define _IRR_SCENEMANAGER_DEBUG
    00826     #ifdef NO_IRR_SCENEMANAGER_DEBUG
    00827         #undef _IRR_SCENEMANAGER_DEBUG
    00828     #endif
    00829 #endif
    00830
    00831 #endif // __IRR_COMPILE_CONFIG_H_INCLUDED__
    00832