DEADSOFTWARE

game: less references to HEADLESS
[d2df-sdl.git] / src / shared / a_modes.inc
index ae6ded6acfc7eb1d00c1924427fd920fa5c1a64f..4ba00072e19a70c49acf7c929bce56f33712aa66 100644 (file)
     {$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)}
   {$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)}
   {$IF DEFINED(USE_SDL) OR DEFINED(USE_SDL2)}
     {$ERROR Only one system driver must be selected!}
   {$IF DEFINED(USE_GLSTUB) OR DEFINED(USE_GLES1)}
     {$ERROR Only one render driver must be selected!}
   {$ENDIF}
-{$ELSE}
+{$ELSEIF DEFINED(ENABLE_RENDER)}
   {$DEFINE USE_OPENGL}
   {.$ERROR Render driver not selected. Use -dUSE_GLSTUB or -dUSE_GLES1 or -dUSE_OPENGL}
 {$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}
-    {$ERROR Holmes supported only with SDL2}
+    {$FATAL SDL2 required for current Holmes implementation}
   {$ENDIF}
   {$IFNDEF USE_OPENGL}
-    {$ERROR Holmes supported only with desktop OpenGL}
+    {$FATAL Desktop OpenGL required for current Holmes implementation}
+  {$ENDIF}
+{$ENDIF}
+
+{$IFDEF ENABLE_MENU}
+  {$IFDEF DISABLE_RENDER}
+    {$FATAL Render driver required for current menu implementation}
+  {$ENDIF}
+{$ENDIF}
+
+{$IFDEF ENABLE_TOUCH}
+  {$IFDEF DISABLE_SYSTEM}
+    {$FATAL System driver required for current touch implementation}
   {$ENDIF}
 {$ENDIF}