aboutsummaryrefslogtreecommitdiffstats
path: root/src/switches.inc
diff options
context:
space:
mode:
authork-m_schindler <k-m_schindler@b956fd51-792f-4845-bead-9b4dfca2ff2c>2008-08-27 13:28:57 +0000
committerk-m_schindler <k-m_schindler@b956fd51-792f-4845-bead-9b4dfca2ff2c>2008-08-27 13:28:57 +0000
commit1ba91d5a0e1df7419a561f6dcf16a0839509a5e7 (patch)
tree3f76e96fc5a3f5b738dabce28642ff2415748ccb /src/switches.inc
parente9fd8ce40b4cbf006695fd6e56f84071407843c9 (diff)
downloadusdx-1ba91d5a0e1df7419a561f6dcf16a0839509a5e7.tar.gz
usdx-1ba91d5a0e1df7419a561f6dcf16a0839509a5e7.tar.xz
usdx-1ba91d5a0e1df7419a561f6dcf16a0839509a5e7.zip
Reordering of the directories[1]: moving Game/Code to src
git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@1302 b956fd51-792f-4845-bead-9b4dfca2ff2c
Diffstat (limited to 'src/switches.inc')
-rw-r--r--src/switches.inc111
1 files changed, 111 insertions, 0 deletions
diff --git a/src/switches.inc b/src/switches.inc
new file mode 100644
index 00000000..eb67e72c
--- /dev/null
+++ b/src/switches.inc
@@ -0,0 +1,111 @@
+// compiler/IDE dependent config
+{$IFDEF FPC}
+ {$H+} // use AnsiString instead of ShortString as String-type (default in Delphi)
+
+ {$IFDEF DARWIN}
+ {$R-} // disable range-checks (eddie: please test if this is still necessary)
+ {$ENDIF}
+
+ // if -dDEBUG is specified on the command-line, FPC uses some default
+ // compiler-flags specified in fpc.cfg -> use -dDEBUG_MODE instead
+ {$IFDEF DEBUG_MODE}
+ {$DEFINE DEBUG}
+ {$ENDIF}
+
+ {$DEFINE HasInline}
+{$ELSE}
+ {$DEFINE Delphi}
+
+ // Delphi version numbers (ignore versions released before Delphi 6 as they miss the $IF directive):
+ // Delphi 6 (VER140), Delphi 7 (VER150), Delphi 8 (VER160)
+ // Delphi 9/2005 (VER170), Delphi 10/2006 (VER180)
+
+ // the inline-procedure directive was introduced with Delphi 2005
+ {$IF not (Defined(VER140) or Defined(VER150) or Defined(VER160))}
+ {$DEFINE HasInline}
+ {$IFEND}
+{$ENDIF}
+
+
+// platform dependent config
+{$IF Defined(MSWINDOWS)}
+ // include defines but no constants
+ {$I config-win.inc}
+
+ // enable debug-mode. For development only!
+ {.$DEFINE DEBUG}
+ {$IFDEF DEBUG}
+ // windows apps are either GUI- or console-apps. Console-apps will open
+ // an additional console-window for output. For development only!
+ {$DEFINE CONSOLE}
+ {$ENDIF}
+
+ {$DEFINE HaveBASS}
+ {$UNDEF UseSerialPort}
+ {$DEFINE UseMIDIPort}
+{$ELSEIF Defined(LINUX)}
+ // include defines but no constants
+ {$I config-linux.inc}
+
+ // use "configure --enable-debug", "make debug" or
+ // the command-line parameter "-debug" instead of defining DEBUG directly
+ {.$DEFINE DEBUG}
+ // linux apps are always console-apps so leave this defined.
+ {$DEFINE CONSOLE}
+{$ELSEIF Defined(DARWIN)}
+ // include defines but no constants
+ {$I config-darwin.inc}
+
+ // enable debug-mode. For development only!
+ {.$DEFINE DEBUG}
+ {$DEFINE CONSOLE}
+ {.$DEFINE HaveBASS}
+ {$DEFINE UTF8_FILENAMES}
+{$IFEND}
+
+// audio config
+{$IF Defined(HaveBASS)}
+ {$DEFINE UseBASSPlayback}
+ {$DEFINE UseBASSDecoder}
+ {$DEFINE UseBASSInput}
+{$ELSEIF Defined(HavePortaudio)}
+ {$DEFINE UseSDLPlayback}
+ {.$DEFINE UsePortaudioPlayback}
+ {$DEFINE UsePortaudioInput}
+ {$IFDEF HavePortmixer}
+ {$DEFINE UsePortmixer}
+ {$ENDIF}
+{$IFEND}
+
+// ffmpeg config
+{$IFDEF HaveFFmpeg}
+ {$DEFINE UseFFmpegDecoder}
+ {$DEFINE UseFFmpegResample}
+ {$DEFINE UseFFmpegVideo}
+ {$IFDEF HaveSWScale}
+ {$DEFINE UseSWScale}
+ {$ENDIF}
+{$ENDIF}
+
+{$IFDEF HaveLibsamplerate}
+ {$DEFINE UseSRCResample}
+{$ENDIF}
+
+// projectM config
+{$IF Defined(HaveProjectM)}
+ {$DEFINE UseProjectM}
+{$IFEND}
+
+// specify some useful defines
+
+{$IF Defined(UseFFmpegVideo) or Defined(UseFFmpegDecoder)}
+ {$DEFINE UseFFmpeg}
+{$IFEND}
+
+{$IF Defined(UseBASSInput) or Defined(UseBASSPlayback) or Defined(UseBASSDecoder)}
+ {$DEFINE UseBASS}
+{$IFEND}
+
+{$IF Defined(UsePortaudioInput) or Defined(UsePortaudioPlayback)}
+ {$DEFINE UsePortaudio}
+{$IFEND}