/* Watcom Fortran compiler variables */ /* flag variables defined here */ FC_FLAGS = ; /* default compiler flags */ FC_OFLAGS = ; /* default compiler optimization flags */ FC_DFLAGS = ; /* default compiler debug flags */ FC_INCL_IFLAGS = ; /* system include paths here (if required) */ FC_IFLAGS = ; /* system include paths here (if required) */ LD_FLAGS = ; /* default linker flags */ LD_DFLAGS = ; /* default linker debug flags */ AR_FLAGS = ; /* default suffixes (and prefixes) for file names */ FC = wfc386; /* Watcom 77 compiler (cross-compile capable) */ LD = wlink; /* linker */ AR = wlib; /* library archiver */ FC_INCL = c_incl; /* program to determine include dependencies */ /* set default extensions and prefixes */ F = .for; /* FORTRAN src files */ O = .o; /* "object" files */ D = .dep; /* include "dependency" files */ E = .exe; /* executable files */ A = .lib; /* library "archive" files */ LIB_PREFIX = ; /* default library prefix */ /* Note differences in syntax between c_incl program and Watcom compiler */ FC_INCL_IFLAGS += "-I"[INC]; /* project include paths here (if required) */ FC_IFLAGS += "-INCP="[INC]; /* project include paths here (if required) */ MODEL = F; /* 32-bit flat memory model */ MDL = [downcase MODEL]; /* put library model symbol in lowercase */ FC_FLAGS += "-M"[MODEL]; /* set compiler memory model flag */ FC_FLAGS += -Q; /* operate quietly */ FC_FLAGS += -NOER; /* no error file created */ /* Is this desireable? Coders should probably be doing this explicitly. */ FC_FLAGS += -SA; /* SAVE all local variables */ /* default error checking stuff */ FC_FLAGS += -WA; /* issue warnings */ FC_FLAGS += -BO; /* subscript bounds checking (disable for speed) */ FC_FLAGS += -EXP; /* declare type of all symbols */ FC_FLAGS += -ST; /* generate stack checking code */ FC_FLAGS += -R; /* issue unreferenced warnings */ FC_FLAGS += -TR; /* generate traceback if error */ /* "optimization" flags (use if [OPT] is set) */ FC_OFLAGS += -OX; /* sets several optimization options */ /* default debugging stuff (use if [DEBUG] set) */ FC_DFLAGS += -HW; /* Watcom debugging information */ FC_DFLAGS += -D2; /* full debug info */ FC_DFLAGS += -OD; /* disable optimizations (helpful for debugging) */ FC_DFLAGS += -DEB; /* runtime debug checking */ /* (includes subscript bounds checking) */ LD_FLAGS += option caseexact,quiet; /* default debugging stuff (use if [DEBUG] set) */ LD_DFLAGS += DEBUG WATCOM all; AR_FLAGS += -c; /* perform case sensitive comparison */ AR_FLAGS += -n; /* always create a new library */ AR_FLAGS += -q; /* operate quietly */ if [DEBUG] then /* include debug flags if DEBUG is set */ { FC_FLAGS += [FC_DFLAGS]; LD_FLAGS += [LD_DFLAGS]; } else if [OPT] then /* include optimization flags if OPT is set */ { FC_FLAGS += [FC_OFLAGS]; }