buildconfig.h

Go to the documentation of this file.
00001 /***************************************************************************
00002  *   Copyright (C) 2004-2007 by Reality Rift Studios                       *
00003  *   http://www.realityrift.com  -  mattias@realityrift.com                *
00004  *                                                                         *
00005  *   This program is free software; you can redistribute it and/or modify  *
00006  *   it under the terms of the GNU General Public License as published by  *
00007  *   the Free Software Foundation; either version 2 of the License, or     *
00008  *   (at your option) any later version.                                   *
00009  *                                                                         *
00010  *   This program is distributed in the hope that it will be useful,       *
00011  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
00012  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
00013  *   GNU General Public License for more details.                          *
00014  *                                                                         *
00015  *   You should have received a copy of the GNU General Public License     *
00016  *   along with this program; if not, write to the                         *
00017  *   Free Software Foundation, Inc.,                                       *
00018  *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
00019  ***************************************************************************/
00020 
00021 #ifndef neo_core_buildconfig_h
00022 #define neo_core_buildconfig_h
00023 
00027 #include "platform.h"
00028 #include "arch.h"
00029 
00030 /***  Only use C-style syntax (comments) in this file, as it gets included in C files in the engine (jpeg, png, vorbis, theora) ***/
00031 
00032 
00033 /***********************************************
00034 ******** GENERIC FUNCTIONALITY CONTROLS ********
00035 ***********************************************/
00036 
00042 #define NEO_ENABLE_THREAD_SAFE  0
00043 
00046 #define NEO_ENABLE_INTERNAL_LOG 1
00047 
00055 #if NEO_BUILD_DEBUG
00056 #  define NEO_ENABLE_REFCOUNT_DEBUGGER 1
00057 #else
00058 #  define NEO_ENABLE_REFCOUNT_DEBUGGER 0
00059 #endif
00060 
00068 #if NEO_BUILD_DEBUG
00069 #  define NEO_ENABLE_RESOURCE_DEBUGGER 1
00070 #else
00071 #  define NEO_ENABLE_RESOURCE_DEBUGGER 0
00072 #endif
00073 
00084 #if NEO_BUILD_DEBUG
00085 #  define NEO_ENABLE_SMARTPTR_DEBUGGER 0
00086 #else
00087 #  define NEO_ENABLE_SMARTPTR_DEBUGGER 0
00088 #endif
00089 #define NEO_ENABLE_SMARTPTR_DEBUGGER_STACKTRACE_DEPTH 15
00090 
00093 #define NEO_ENABLE_PROFILING 1
00094 
00097 #define NEO_ENABLE_STATISTICS 1
00098 
00099 
00100 /***********************************
00101 ******** SUBSYSTEM CONTROLS ********
00102 ***********************************/
00103 
00106 #define NEO_ENABLE_LOG 1
00107 
00110 #define NEO_ENABLE_FILE_ZIP 1
00111 
00114 #define NEO_ENABLE_IMAGE 1
00115 
00118 #define NEO_ENABLE_IMAGE_PNG 1
00119 
00122 #define NEO_ENABLE_IMAGE_TGA 1
00123 
00126 #define NEO_ENABLE_IMAGE_JPEG 1
00127 
00130 #define NEO_ENABLE_IMAGE_DDS 1
00131 
00134 #define NEO_ENABLE_RENDER 1
00135 
00138 #define NEO_ENABLE_RENDER_EFFECT 1
00139 
00142 #define NEO_ENABLE_RENDER_DYNAMICLIB 0
00143 
00146 #define NEO_ENABLE_RENDER_NULL 1
00147 
00150 #define NEO_ENABLE_RENDER_OPENGL 1
00151 
00154 #if defined NEO_DISABLE_RENDER_OPENGL && NEO_DISABLE_RENDER_OPENGL
00155 #  undef NEO_ENABLE_RENDER_OPENGL
00156 #  define NEO_ENABLE_RENDER_OPENGL 0
00157 #endif
00158 
00161 #define NEO_ENABLE_RENDER_D3D8 1
00162 
00165 #if defined NEO_DISABLE_RENDER_D3D8 && NEO_DISABLE_RENDER_D3D8
00166 #  undef NEO_ENABLE_RENDER_D3D8
00167 #  define NEO_ENABLE_RENDER_D3D8 0
00168 #endif
00169 
00172 #define NEO_ENABLE_RENDER_D3D9 1
00173 
00176 #if defined NEO_DISABLE_RENDER_D3D9 && NEO_DISABLE_RENDER_D3D9
00177 #  undef NEO_ENABLE_RENDER_D3D9
00178 #  define NEO_ENABLE_RENDER_D3D9 0
00179 #endif
00180 
00183 #define NEO_ENABLE_ANIMATION 1
00184 
00187 #define NEO_ENABLE_COLLISION 1
00188 
00191 #define NEO_ENABLE_SCENE 1
00192 
00195 #define NEO_ENABLE_SCENE_ABT 1
00196 
00199 #define NEO_ENABLE_SCENE_BSP 1
00200 
00203 #define NEO_ENABLE_SCENE_SINGLEPASS 1
00204 
00207 #define NEO_ENABLE_SCENE_PPDYNLIGHT 1
00208 
00211 #define NEO_ENABLE_SCENE_WIREFRAME 1
00212 
00215 #define NEO_ENABLE_PHYSICS 1
00216 
00219 #define NEO_ENABLE_PHYSICS_SOFTWARE 1
00220 
00223 #define NEO_ENABLE_PHYSICS_PHYSX 0
00224 
00227 #define NEO_ENABLE_SOUND 1
00228 
00231 #define NEO_ENABLE_SOUND_WAV 1
00232 
00235 #define NEO_ENABLE_SOUND_VORBIS 1
00236 
00239 #define NEO_ENABLE_AUDIO 1
00240 
00243 #define NEO_ENABLE_AUDIO_NULL 1
00244 
00247 #define NEO_ENABLE_AUDIO_OPENAL 1
00248 
00251 #define NEO_ENABLE_VIDEO 1
00252 
00255 #define NEO_ENABLE_VIDEO_THEORA 1
00256 
00259 #define NEO_ENABLE_GUI_FONT 1
00260 
00263 #define NEO_ENABLE_GUI 1
00264 
00267 #define NEO_ENABLE_SCRIPT 1
00268 
00271 #define NEO_ENABLE_SCRIPT_LUA 1
00272 
00276 #define NEO_ENABLE_CHUNKIO 1
00277 
00280 #define NEO_ENABLE_CHUNKIO_ASCII 1
00281 
00284 #define NEO_ENABLE_CHUNKIO_OUTPUT 1
00285 
00289 #define NEO_ENABLE_RESOURCE 1
00290 
00293 #define NEO_ENABLE_RESOURCE_OUTPUT 1
00294 
00297 #define NEO_ENABLE_SCRIPTING 1
00298 
00301 #define NEO_ENABLE_SCRIPT_DEBUG_LOG 0
00302 
00305 #define NEO_ENABLE_SCRIPT_TYPE_CHECK 1
00306 
00309 #define NEO_ENABLE_SCRIPT_ERROR_CHECK 1
00310 
00311 
00314 #define NEO_ENABLE_LOCALIZATION 1
00315 
00318 #define NEO_ENABLE_WINDOWS_UNICODE 1
00319 
00320 
00323 #define NEO_ENABLE_WEBDRIVER 1
00324 
00327 #define NEO_ENABLE_WEBDRIVER_APPLET 1
00328 
00331 #define NEO_ENABLE_WEBDRIVER_APPLET_THREADING 1
00332 
00335 #define NEO_ENABLE_WEBDRIVER_APPLET_FORKING 1
00336 
00337 
00338 
00339 /******** INTERNAL FLAGS ********/
00340 
00341 #if NEO_COMPILER_MSVC && !NEO_ENABLE_RENDER_D3D9 && !NEO_ENABLE_RENDER_D3D8
00342 typedef unsigned char boolean;
00343 #endif
00344 
00345 #if NEO_ENABLE_WINDOWS_UNICODE
00346 #  ifndef UNICODE
00347 #    define UNICODE 1
00348 #  endif
00349 #elif  NEO_PLATFORM_WINDOWS
00350 #  undef UNICODE
00351 #  undef _UNICODE
00352 #endif
00353 
00354 #if NEO_ENABLE_LOCALIZATION
00355 #  define NEO_LOCALIZE_STRING(x) L ## x
00356 #else
00357 #  define NEO_LOCALIZE_STRING(x) x
00358 #endif
00359 
00360 #if !defined NEO_INTERNALS
00361 #  define NEO_INTERNALS 0
00362 #endif
00363 
00364 #if !defined NEO_PYTHON_GENERATOR
00365 #  define NEO_PYTHON_GENERATOR 0
00366 #endif
00367 
00368 
00369 /****** REQUIREMENTS CHECKS *******/
00370 
00371 #if !NEO_PLATFORM_WINDOWS
00372 #  undef  NEO_ENABLE_RENDER_D3D8
00373 #  undef  NEO_ENABLE_RENDER_D3D9
00374 #  undef  NEO_ENABLE_PHYSICS_PHYSX
00375 #  define NEO_ENABLE_RENDER_D3D8 0
00376 #  define NEO_ENABLE_RENDER_D3D9 0
00377 #  define NEO_ENABLE_PHYSICS_PHYSX 0
00378 #endif
00379 
00380 #if NEO_PLATFORM_MACOSX
00381 #  undef  NEO_ENABLE_WEBDRIVER_APPLET_THREADING
00382 #  define NEO_ENABLE_WEBDRIVER_APPLET_THREADING 0
00383 #endif
00384 
00385 #if !NEO_ENABLE_LOG
00386 #  undef  NEO_ENABLE_INTERNAL_LOG
00387 #  define NEO_ENABLE_INTERNAL_LOG 0
00388 #endif
00389 
00390 #if !NEO_ENABLE_IMAGE
00391 #  undef  NEO_ENABLE_RENDER
00392 #  undef  NEO_ENABLE_IMAGE_PNG
00393 #  undef  NEO_ENABLE_IMAGE_JPEG
00394 #  undef  NEO_ENABLE_IMAGE_TGA
00395 #  undef  NEO_ENABLE_IMAGE_DDS
00396 #  define NEO_ENABLE_RENDER 0
00397 #  define NEO_ENABLE_IMAGE_PNG 0
00398 #  define NEO_ENABLE_IMAGE_JPEG 0
00399 #  define NEO_ENABLE_IMAGE_TGA 0
00400 #  define NEO_ENABLE_IMAGE_DDS 0
00401 #endif
00402 
00403 #if !NEO_ENABLE_RENDER
00404 #  undef  NEO_ENABLE_RENDER_NULL
00405 #  undef  NEO_ENABLE_RENDER_OPENGL
00406 #  undef  NEO_ENABLE_RENDER_D3D8
00407 #  undef  NEO_ENABLE_RENDER_D3D9
00408 #  undef  NEO_ENABLE_RENDER_EFFECT
00409 #  undef  NEO_ENABLE_SCENE
00410 #  undef  NEO_ENABLE_GUI_FONT
00411 #  undef  NEO_ENABLE_GUI
00412 #  define NEO_ENABLE_RENDER_NULL 0
00413 #  define NEO_ENABLE_RENDER_OPENGL 0
00414 #  define NEO_ENABLE_RENDER_D3D8 0
00415 #  define NEO_ENABLE_RENDER_D3D9 0
00416 #  define NEO_ENABLE_RENDER_EFFECT 0
00417 #  define NEO_ENABLE_SCENE 0
00418 #  define NEO_ENABLE_GUI_FONT 0
00419 #  define NEO_ENABLE_GUI 0
00420 #endif
00421 
00422 #if NEO_ENABLE_GUI && !NEO_ENABLE_GUI_FONT
00423 #  undef  NEO_ENABLE_GUI_FONT
00424 #  define NEO_ENABLE_GUI_FONT 1
00425 #endif
00426 
00427 #if !NEO_ENABLE_SOUND
00428 #  undef  NEO_ENABLE_SOUND_WAV
00429 #  undef  NEO_ENABLE_SOUND_VORBIS
00430 #  undef  NEO_ENABLE_VIDEO
00431 #  undef  NEO_ENABLE_AUDIO
00432 #  define NEO_ENABLE_SOUND_WAV 0
00433 #  define NEO_ENABLE_SOUND_VORBIS 0
00434 #  define NEO_ENABLE_VIDEO 0
00435 #  define NEO_ENABLE_AUDIO 0
00436 #endif
00437 
00438 #if !NEO_ENABLE_AUDIO
00439 #  undef  NEO_ENABLE_AUDIO_NULL
00440 #  undef  NEO_ENABLE_AUDIO_OPENAL
00441 #  undef  NEO_ENABLE_VIDEO
00442 #  define NEO_ENABLE_AUDIO_NULL 0
00443 #  define NEO_ENABLE_AUDIO_OPENAL 0
00444 #  define NEO_ENABLE_VIDEO 0
00445 #endif
00446 
00447 #if !NEO_ENABLE_VIDEO
00448 #  undef  NEO_ENABLE_VIDEO_THEORA
00449 #  define NEO_ENABLE_VIDEO_THEORA 0
00450 #endif
00451 
00452 #if !NEO_ENABLE_COLLISION
00453 #  undef  NEO_ENABLE_SCENE
00454 #  define NEO_ENABLE_SCENE 0
00455 #endif
00456 
00457 #if !NEO_ENABLE_SCENE
00458 #  undef  NEO_ENABLE_SCENE_ABT
00459 #  undef  NEO_ENABLE_SCENE_BSP
00460 #  undef  NEO_ENABLE_SCENE_SINGLEPASS
00461 #  undef  NEO_ENABLE_SCENE_PPDYNLIGHT
00462 #  undef  NEO_ENABLE_PHYSICS
00463 #  define NEO_ENABLE_SCENE_ABT 0
00464 #  define NEO_ENABLE_SCENE_BSP 0
00465 #  define NEO_ENABLE_SCENE_SINGLEPASS 0
00466 #  define NEO_ENABLE_SCENE_PPDYNLIGHT 0
00467 #  define NEO_ENABLE_PHYSICS 0
00468 #endif
00469 
00470 #if !NEO_ENABLE_PHYSICS
00471 #  undef  NEO_ENABLE_PHYSICS_SOFTWARE
00472 #  undef  NEO_ENABLE_PHYSICS_PHYSX
00473 #  define NEO_ENABLE_PHYSICS_SOFTWARE 0
00474 #  define NEO_ENABLE_PHYSICS_PHYSX 0
00475 #endif
00476 
00477 #if !NEO_ENABLE_SCRIPT
00478 #  undef  NEO_ENABLE_SCRIPT_LUA
00479 #  undef  NEO_ENABLE_SCRIPTING
00480 #  define NEO_ENABLE_SCRIPT_LUA 0
00481 #  define NEO_ENABLE_SCRIPTING 0
00482 #endif
00483 
00484 #if !NEO_ENABLE_CHUNKIO
00485 #  undef  NEO_ENABLE_RESOURCE
00486 #  define NEO_ENABLE_RESOURCE 0
00487 #endif
00488 
00489 #if NEO_ENABLE_RENDER_D3D9 && !NEO_ENABLE_RENDER_DYNAMICLIB
00490 #  undef NEO_ENABLE_RENDER_D3D8
00491 #  define NEO_ENABLE_RENDER_D3D8 0
00492 #endif
00493 
00494 #if ( NEO_ENABLE_RENDER_D3D9 || NEO_ENABLE_RENDER_D3D8 ) && NEO_BUILD_DEBUG
00495 #  define D3D_DEBUG_INFO 1
00496 #endif
00497 
00498 #if NEO_ENABLE_RENDER_DYNAMICLIB
00499 #  if NEO_INTERNALS
00500 /* Don't build the devices into the engine */
00501 #    undef NEO_ENABLE_RENDER_OPENGL
00502 #    undef NEO_ENABLE_RENDER_D3D8
00503 #    undef NEO_ENABLE_RENDER_D3D9
00504 #    undef NEO_ENABLE_RENDER_NULL
00505 #    define NEO_ENABLE_RENDER_OPENGL 0
00506 #    define NEO_ENABLE_RENDER_D3D8 0
00507 #    define NEO_ENABLE_RENDER_D3D9 0
00508 #    define NEO_ENABLE_RENDER_NULL 0
00509 #  endif
00510 #endif
00511 
00512 #include "version.h"
00513 
00514 
00515 #endif

Generated on Sat Feb 17 20:50:47 2007 for NeoEngine 2 - Evolution by  doxygen 1.5.1