Switches
Updated: Oct 5, 2007

Switches for hot.exe compiler which can also be used in hb.bat:

  -C list source code

  -Dtext where text is defined as occurs with the $DEFINE text directive.

  -E turns $ESCAPECHARS ON.

  -Ipath with trailing \ used as second search path for $INCLUDE files
     and .lib or .obj files referenced in DECLARE ... LIB statements.

  -O use HotOptimize (hotoptim.exe in your HotBasic directory) to remove
     (1) DECLARE ... LIB statements for unused API calls and
     (2) unused SUB and FUNCTION code blocks and their DECLARE statements.
     Requires the HotOptimize download in your HotBasic directory.
     Same as $Optimize directive.
 
  -P turns $EQUALPREC ON where (*, /, \) and (+, -) are evaluated with
     equal operator precedence.  Default is OFF.
     Please see Directives and Operators.

  -Rpath with trailing \ used as second search path for $RESOURCE.

  -S generates Symbol Table listing; same as $SYMBOLTABLE ON.

  -T turns $TYPECHECK ON (recommended).

  -U forces user symbols to uppercase; same as $UPPERCASE ON.

  -X compile GUI application in X11-mode (Linux only); default is GTK-mode.
     Same as $X11 directive.

The -C switch can be used to observe how $MACRO and $DEFINE statements alter
  source code before parsing.  Further, if $IFDEF/$IFNDEF directives are used,
  only code to be compiled is listed.

The -D switch may be repeated as necessary for conditional compiling.

The -E switch slows all string operations.
  Suggestion: turn $ESCAPECHARS ON and OFF as needed in source code.

The -I and -R switches are completely optional.

  c:\hot\hot myprog -s -ic:\hot\inc\ -dW98 -dPRINTER

The above command compiles myprog, listing the Symbol Table, searching
c:\hot\inc\ for $INCLUDE files, with W98 and PRINTER defined to control what
code is compiled (please see Compiler > Directives).

E.g., in source code,

  $IFDEF W98  'defined in command-line
    'code for W98 only
  $ELSE
    'code for other platforms
  $ENDIF


Copyright 2003-2007 James J Keene PhD
Original Publication: Oct 9, 2003
