diff options
Diffstat (limited to 'src/switches.inc')
-rw-r--r-- | src/switches.inc | 129 |
1 files changed, 129 insertions, 0 deletions
diff --git a/src/switches.inc b/src/switches.inc new file mode 100644 index 00000000..64ebb5c2 --- /dev/null +++ b/src/switches.inc @@ -0,0 +1,129 @@ +// prevent pasdoc from parsing this file +{$IFNDEF PASDOC} + +// compiler/IDE dependent config +{$IFDEF FPC} + {$H+} // use AnsiString instead of ShortString as String-type (default in Delphi) + + // 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 Delphi < 7 and Delphi 8 (VER160)) + + {$IF Defined(VER180)} // Delphi 2006 (=10) + {$DEFINE DELPHI_10} + {$DEFINE DELPHI_7_UP} + {$DEFINE DELPHI_9_UP} + {$DEFINE DELPHI_10_UP} + {$ELSEIF Defined(VER170)} // Delphi 2005 (=9) + {$DEFINE DELPHI_9} + {$DEFINE DELPHI_7_UP} + {$DEFINE DELPHI_9_UP} + {$ELSEIF Defined(VER150)} + {$DEFINE DELPHI_7} + {$DEFINE DELPHI_7_UP} + {$ELSE} // unsupported + {$WARN ERROR 'Unsupported compiler version'} + {$IFEND} + + // inline directive introduced with Delphi 2005 + {$IFDEF DELPHI_9_UP} + {$DEFINE HasInline} + {$ENDIF} +{$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} + {$DEFINE UseMIDIPort} +{$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} +{$ELSEIF Defined(UNIX)} + // include defines but no constants + {$IF Defined(FREEBSD)} + {$I config-freebsd.inc} + {$ELSEIF Defined(Linux)} + {$I config-linux.inc} + {$IFEND} + + // 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} +{$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} + +{$ENDIF PASDOC}
\ No newline at end of file |