diff --git a/src/shared/a_modes.inc b/src/shared/a_modes.inc
index 5fc22fa018c259b594338a0df0fa089adce3572b..9f7caa47b27a923ccabf38375e260aae619c1254 100644 (file)
--- a/src/shared/a_modes.inc
+++ b/src/shared/a_modes.inc
{$MODESWITCH TYPEHELPERS+} // Allow the use of type helpers.
{$MODESWITCH UNICODESTRINGS-}
{$MODESWITCH TYPEHELPERS+} // Allow the use of type helpers.
{$MODESWITCH UNICODESTRINGS-}
+{$IFDEF DARWIN}
+ {$MODESWITCH OBJECTIVEC1}
+{$ENDIF}
{$ASSERTIONS ON}
{$BITPACKING OFF}
{$ASSERTIONS ON}
{$BITPACKING OFF}
{$DEFINE D2F_MORE_OPTIM}
{$ENDIF}
{$WARNINGS ON}
{$DEFINE D2F_MORE_OPTIM}
{$ENDIF}
{$WARNINGS ON}
-{$NOTES ON}
+{.$NOTES ON}
{$IF DEFINED(D2F_DEBUG_OPTIM) or DEFINED(D2F_MORE_OPTIM)}
{$OPTIMIZATION DEADVALUES}
{$IF DEFINED(D2F_DEBUG_OPTIM) or DEFINED(D2F_MORE_OPTIM)}
{$OPTIMIZATION DEADVALUES}
{$WARNING Holmes in headless mode has no sense. Disabled.}
{$UNDEF ENABLE_HOLMES}
{$ENDIF}
{$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}
+ {$IFDEF ENABLE_RENDER}
+ {$WARNING Render in headless mode has no sense. Disabled.}
+ {$UNDEF ENABLE_RENDER}
+ {$DEFINE DISABLE_RENDER}
+ {$ENDIF}
+ {$IFDEF ENABLE_SYSTEM}
+ {$WARNING System in headless mode has no sense. Disabled.}
+ {$UNDEF ENABLE_SYSTEM}
+ {$DEFINE DISABLE_SYSTEM}
+ {$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(ENABLE_RENDER) AND DEFINED(DISABLE_RENDER)}
+ {$ERROR Select ENABLE_RENDER or DISABLE_RENDER}
+{$ELSEIF NOT DEFINED(ENABLE_RENDER) AND NOT DEFINED(DISABLE_RENDER)}
+ // default ENABLE/DISABLE render
+ {$IFDEF HEADLESS}
+ {$DEFINE DISABLE_RENDER}
+ {$ELSE}
+ {$DEFINE ENABLE_RENDER}
+ {$ENDIF}
+{$ENDIF}
+
+{$IF DEFINED(ENABLE_SYSTEM) AND DEFINED(DISABLE_SYSTEM)}
+ {$ERROR Select ENABLE_SYSTEM or DISABLE_SYSTEM}
+{$ELSEIF NOT DEFINED(ENABLE_SYSTEM) AND NOT DEFINED(DISABLE_SYSTEM)}
+ // default ENABLE/DISABLE system driver
+ {$IFDEF HEADLESS}
+ {$DEFINE DISABLE_SYSTEM}
+ {$ELSE}
+ {$DEFINE ENABLE_SYSTEM}
+ {$ENDIF}
{$ENDIF}
{$IF DEFINED(USE_SYSSTUB)}
{$ENDIF}
{$IF DEFINED(USE_SYSSTUB)}
{$ENDIF}
{$IF DEFINED(USE_GLSTUB)}
{$ENDIF}
{$IF DEFINED(USE_GLSTUB)}
- {$IF DEFINED(USE_GLES1) OR DEFINED(USE_OPENGL)}
+ {$IF DEFINED(USE_GLES1) OR DEFINED(USE_OPENGL) OR DEFINED(USE_STUBRENDER) OR DEFINED(USE_NEWGL)}
{$ERROR Only one render driver must be selected!}
{$ENDIF}
{$ELSEIF DEFINED(USE_GLES1)}
{$ERROR Only one render driver must be selected!}
{$ENDIF}
{$ELSEIF DEFINED(USE_GLES1)}
- {$IF DEFINED(USE_GLSTUB) OR DEFINED(USE_OPENGL)}
+ {$IF DEFINED(USE_GLSTUB) OR DEFINED(USE_OPENGL) OR DEFINED(USE_STUBRENDER) OR DEFINED(USE_NEWGL)}
{$ERROR Only one render driver must be selected!}
{$ENDIF}
{$ELSEIF DEFINED(USE_OPENGL)}
{$ERROR Only one render driver must be selected!}
{$ENDIF}
{$ELSEIF DEFINED(USE_OPENGL)}
- {$IF DEFINED(USE_GLSTUB) OR DEFINED(USE_GLES1)}
+ {$IF DEFINED(USE_GLSTUB) OR DEFINED(USE_GLES1) OR DEFINED(USE_STUBRENDER) OR DEFINED(USE_NEWGL)}
{$ERROR Only one render driver must be selected!}
{$ENDIF}
{$ERROR Only one render driver must be selected!}
{$ENDIF}
-{$ELSE}
+{$ELSEIF DEFINED(USE_STUBRENDER)}
+ {$IF DEFINED(USE_GLSTUB) OR DEFINED(USE_OPENGL) OR DEFINED(USE_GLES1) OR DEFINED(USE_NEWGL)}
+ {$ERROR Only one render driver must be selected!}
+ {$ENDIF}
+{$ELSEIF DEFINED(USE_NEWGL)}
+ {$IF DEFINED(USE_GLSTUB) OR DEFINED(USE_OPENGL) OR DEFINED(USE_GLES1) OR DEFINED(USE_STUBRENDER)}
+ {$ERROR Only one render driver must be selected!}
+ {$ENDIF}
+{$ELSEIF DEFINED(ENABLE_RENDER)}
{$DEFINE USE_OPENGL}
{$DEFINE USE_OPENGL}
- {.$ERROR Render driver not selected. Use -dUSE_GLSTUB or -dUSE_GLES1 or -dUSE_OPENGL}
+ {.$ERROR Render driver not selected. Use -dUSE_OPENGL or -dUSE_GLES1}
+{$ENDIF}
+
+{$IFDEF DISABLE_RENDER}
+ {$UNDEF USE_GLSTUB}
+ {$UNDEF USE_GLES1}
+ {$UNDEF USE_OPENGL}
+ {$UNDEF USE_STUBRENDER}
{$ENDIF}
{$IFDEF ENABLE_HOLMES}
{$ENDIF}
{$IFDEF ENABLE_HOLMES}
+ {$IFDEF DISABLE_SYSTEM}
+ {$FATAL System driver required for current Holmes implementation}
+ {$ENDIF}
+ {$IFDEF DISABLE_RENDER}
+ {$FATAL Render driver required for current Holmes implementation}
+ {$ENDIF}
{$IFNDEF USE_SDL2}
{$IFNDEF USE_SDL2}
- {$ERROR Holmes supported only with SDL2}
+ {$FATAL SDL2 required for current Holmes implementation}
{$ENDIF}
{$IFNDEF USE_OPENGL}
{$ENDIF}
{$IFNDEF USE_OPENGL}
- {$ERROR Holmes supported only with desktop OpenGL}
+ {$FATAL Desktop OpenGL required for current Holmes implementation}
+ {$ENDIF}
+{$ENDIF}
+
+{$IFDEF ENABLE_TOUCH}
+ {$IFDEF DISABLE_SYSTEM}
+ {$FATAL System driver required for current touch implementation}
{$ENDIF}
{$ENDIF}
{$ENDIF}
{$ENDIF}