X-Git-Url: http://deadsoftware.ru/gitweb?a=blobdiff_plain;f=src%2Fshared%2Fa_modes.inc;h=6789e6ee7ac17a5d783d10518add164132f5a4b3;hb=9c48cca3ecf72ee2f326460c7fe895245544bdcf;hp=733abb82e82d58ff9d11777541efe0924870758b;hpb=87c3a28dda4534eec3fde4ef06dc5f324b2c4b3b;p=d2df-sdl.git diff --git a/src/shared/a_modes.inc b/src/shared/a_modes.inc index 733abb8..6789e6e 100644 --- a/src/shared/a_modes.inc +++ b/src/shared/a_modes.inc @@ -26,6 +26,9 @@ {$MODESWITCH TYPEHELPERS+} // Allow the use of type helpers. {$MODESWITCH UNICODESTRINGS-} +{$IFDEF DARWIN} + {$MODESWITCH OBJECTIVEC1} +{$ENDIF} {$ASSERTIONS ON} {$BITPACKING OFF} @@ -92,6 +95,112 @@ {$UNDEF USE_SDL} {$UNDEF USE_SDL2} {$ENDIF} + {$DEFINE USE_GLSTUB} + {$IF DEFINED(USE_GLES1) OR DEFINED(USE_OPENGL)} + {$WARNING Render drivers not needed in headless mode. Force stub driver...} + {$UNDEF USE_GLES1} + {$UNDEF USE_OPENGL} + {$ENDIF} + {$IFDEF ENABLE_HOLMES} + {$WARNING Holmes in headless mode has no sense. Disabled.} + {$UNDEF ENABLE_HOLMES} + {$ENDIF} + {$IFDEF ENABLE_MENU} + {$WARNING Menu in headless mode has no sense. Disabled.} + {$UNDEF ENABLE_MENU} + {$DEFINE DISABLE_MENU} + {$ENDIF} + {$IFDEF ENABLE_TOUCH} + {$WARNING Touch screen in headless mode has no sense. Disabled.} + {$UNDEF ENABLE_TOUCH} + {$DEFINE DISABLE_TOUCH} + {$ENDIF} + {$IFDEF ENABLE_GFX} + {$WARNING GFX in headless mode has no sense. Disabled.} + {$UNDEF ENABLE_GFX} + {$DEFINE DISABLE_GFX} + {$ENDIF} + {$IFDEF ENABLE_GIBS} + {$WARNING Gibs in headless mode has no sense. Disabled.} + {$UNDEF ENABLE_GIBS} + {$DEFINE DISABLE_GIBS} + {$ENDIF} + {$IFDEF ENABLE_SHELLS} + {$WARNING Shells in headless mode has no sense. Disabled.} + {$UNDEF ENABLE_SHELLS} + {$DEFINE DISABLE_SHELLS} + {$ENDIF} + {$IFDEF ENABLE_CORPSES} + {$WARNING Corpses in headless mode has no sense. Disabled.} + {$UNDEF ENABLE_CORPSES} + {$DEFINE DISABLE_CORPSES} + {$ENDIF} +{$ENDIF} + +{$IF DEFINED(ENABLE_MENU) AND DEFINED(DISABLE_MENU)} + {$ERROR Select ENABLE_MENU or DISABLE_MENU} +{$ELSEIF NOT DEFINED(ENABLE_MENU) AND NOT DEFINED(DISABLE_MENU)} + // defaut ENABLE/DISABLE menu + {$IFDEF HEADLESS} + {$DEFINE DISABLE_MENU} + {$ELSE} + {$DEFINE ENABLE_MENU} + {$ENDIF} +{$ENDIF} + +{$IF DEFINED(ENABLE_TOUCH) AND DEFINED(DISABLE_TOUCH)} + {$ERROR Select ENABLE_TOUCH or DISABLE_TOUCH} +{$ELSEIF NOT DEFINED(ENABLE_TOUCH) AND NOT DEFINED(DISABLE_TOUCH)} + // defaut ENABLE/DISABLE touch + {$IFDEF HEADLESS} + {$DEFINE DISABLE_TOUCH} + {$ELSE} + {$DEFINE ENABLE_TOUCH} + {$ENDIF} +{$ENDIF} + +{$IF DEFINED(ENABLE_GFX) AND DEFINED(DISABLE_GFX)} + {$ERROR Select ENABLE_GFX or DISABLE_GFX} +{$ELSEIF NOT DEFINED(ENABLE_GFX) AND NOT DEFINED(DISABLE_GFX)} + // default ENABLE/DISABLE gfx + {$IFDEF HEADLESS} + {$DEFINE DISABLE_GFX} + {$ELSE} + {$DEFINE ENABLE_GFX} + {$ENDIF} +{$ENDIF} + +{$IF DEFINED(ENABLE_GIBS) AND DEFINED(DISABLE_GIBS)} + {$ERROR Select ENABLE_GIBS or DISABLE_GIBS} +{$ELSEIF NOT DEFINED(ENABLE_GIBS) AND NOT DEFINED(DISABLE_GIBS)} + // default ENABLE/DISABLE gibs + {$IFDEF HEADLESS} + {$DEFINE DISABLE_GIBS} + {$ELSE} + {$DEFINE ENABLE_GIBS} + {$ENDIF} +{$ENDIF} + +{$IF DEFINED(ENABLE_SHELLS) AND DEFINED(DISABLE_SHELLS)} + {$ERROR Select ENABLE_SHELLS or DISABLE_SHELLS} +{$ELSEIF NOT DEFINED(ENABLE_SHELLS) AND NOT DEFINED(DISABLE_SHELLS)} + // default ENABLE/DISABLE gibs + {$IFDEF HEADLESS} + {$DEFINE DISABLE_SHELLS} + {$ELSE} + {$DEFINE ENABLE_SHELLS} + {$ENDIF} +{$ENDIF} + +{$IF DEFINED(ENABLE_CORPSES) AND DEFINED(DISABLE_CORPSES)} + {$ERROR Select ENABLE_CORPSES or DISABLE_CORPSES} +{$ELSEIF NOT DEFINED(ENABLE_CORPSES) AND NOT DEFINED(DISABLE_CORPSES)} + // default ENABLE/DISABLE corpses + {$IFDEF HEADLESS} + {$DEFINE DISABLE_CORPSES} + {$ELSE} + {$DEFINE ENABLE_CORPSES} + {$ENDIF} {$ENDIF} {$IF DEFINED(USE_SYSSTUB)} @@ -102,6 +211,9 @@ {$IF DEFINED(USE_SYSSTUB) OR DEFINED(USE_SDL2)} {$ERROR Only one system driver must be selected!} {$ENDIF} + {$IFDEF USE_SDLMIXER} + {$ERROR SDL_mixer not supported with SDL 1.2.x} + {$ENDIF} {$ELSEIF DEFINED(USE_SDL2)} {$IF DEFINED(USE_SYSSTUB) OR DEFINED(USE_SDL)} {$ERROR Only one system driver must be selected!} @@ -128,17 +240,35 @@ {$ERROR Only one sound driver must be selected!} {$ENDIF} {$ELSE} - {$ERROR Sound driver not selected. Use -dUSE_SOUNDSTUB or -dUSE_SDLMIXER or -dUSE_FMOD or -dUSE_OPENAL} + {$IFDEF IN_TOOLS} + {$DEFINE USE_SOUNDSTUB} + {$ELSE} + {$ERROR Sound driver not selected. Use -dUSE_SOUNDSTUB or -dUSE_SDLMIXER or -dUSE_FMOD or -dUSE_OPENAL} + {$ENDIF} {$ENDIF} -{$IFDEF ENABLE_HOLMES} - {$IFDEF HEADLESS} - {$ERROR Holmes in HEADLESS mode has no sense} +{$IF DEFINED(USE_GLSTUB)} + {$IF DEFINED(USE_GLES1) OR DEFINED(USE_OPENGL)} + {$ERROR Only one render driver must be selected!} + {$ENDIF} +{$ELSEIF DEFINED(USE_GLES1)} + {$IF DEFINED(USE_GLSTUB) OR DEFINED(USE_OPENGL)} + {$ERROR Only one render driver must be selected!} {$ENDIF} +{$ELSEIF DEFINED(USE_OPENGL)} + {$IF DEFINED(USE_GLSTUB) OR DEFINED(USE_GLES1)} + {$ERROR Only one render driver must be selected!} + {$ENDIF} +{$ELSE} + {$DEFINE USE_OPENGL} + {.$ERROR Render driver not selected. Use -dUSE_GLSTUB or -dUSE_GLES1 or -dUSE_OPENGL} +{$ENDIF} + +{$IFDEF ENABLE_HOLMES} {$IFNDEF USE_SDL2} {$ERROR Holmes supported only with SDL2} {$ENDIF} - {$IFDEF USE_GLES1} - {$ERROR Holmes not supported with GLES} + {$IFNDEF USE_OPENGL} + {$ERROR Holmes supported only with desktop OpenGL} {$ENDIF} {$ENDIF}