    // Inspect the following #defines. Change them to taste. If you don't
    // need a particular option, change its value into an empty string

    // For more information about this file: 'man 7 icmconf'

// MAINTENANCE RELATED DEFINES THAT ARE OFTEN ADAPTED:
// ===================================================

    // Uncomment to clear the screen starting the compilation
//#define CLS

    // Uncomment to construct a library. Optionally use another name (don't
    // use lib or an extension like .a)
//#define LIBRARY           "modules"

    // The source containing main():
#define MAIN                "main.cc"

    // The pattern locating sources in a directory:
#define SOURCES             "*.cc"

    //  The extension of object modules:
#define OBJ_EXT             ".o"

    // Uncomment to construct a shared library 
//#define SHARED

    // If the constructed shared library requires additional libraries then
    // specify these here. E.g., if a library /usr/lib/special/libspecial.so
    // is required then specify  "-L/usr/lib/special -lspecial" 
    // Predefined paths (e.g., /lib, /usr/lib) do not have to be specified
#define SHAREDREQ           ""

    // Directory to contain temporary results
#define TMP_DIR             "tmp"

    // Uncomment to use the ALL facility and a class dependency setup in the
    // CLASSES file. When a directory contains a file ALL (optionally rename
    // this filename by providing an alternative name) then all its sources
    // and all sources of all classes depending on it are also compiled.  
    // Class dependencies are indicated by the class name (as the first
    // word on a line) optionally followed by additional class names, which
    // are the classes directly depending on the line's first class name.
//#define USE_ALL             "a"

    // should commands be echoed (ON) or not (OFF) ?
#define USE_ECHO              ON

    //  Use the VERSION file
#define USE_VERSION

    // When DEFCOM "program" is specified './icmbuild' is shorthand for 
    // './icmbuild program'
    // When DEFCOM "library" is specified './icmbuild' is shorthand for 
    // './icmbuild library'
    // The icmstart script may add a DEFCOM specification to this file.
//#define DEFCOM "program"
//#define DEFCOM "library"

// COMPILATION AND LINKING RELATED DEFINES
// =======================================

    // The compiler to use. Define CC instead if a C compiler should be used.
#define CXX            "g++"
//#define CC            "gcc"

    // The compiler options to use. Define CFLAGS instead if a C compiler is
    // used. 
    // To suppress colored error messages add option -fdiagnostics-color=never
    // To add debug-code to object files add option  -g
#define CXXFLAGS        " --std=c++14 -Wall -O2"
//#define CFLAGS        " -Wall -g -O2"

    // The extension of internal header files. See PRECOMP below
#define IH              ".ih"

    // Uncomment to generate precompiled headers. When activated internal
    // header files are precompiled when they are more recent than their 
    // precompiled versions. PRECOMP requires IH
//#define PRECOMP "-x c++-header"

    // Uncomment to relink the binary, even when no sources were changed 
//#define REFRESH


    // Options passed to the linker:
#define LDFLAGS         ""


// LIBRARIES REQUIRED BY THE CONSTRUCTED PROGRAM OR LIBRARY:
// =========================================================

    // any additional libraries the program may need:
#define ADD_LIBRARIES       ""

    // additional paths (other than the standard paths) to locate additional
    // libraries:
#define ADD_LIBRARY_PATHS   ""


// DEFINES RELATED TO USING A PARSER GENERATOR
// ===========================================

    // The subdirectory containing the parser's specification file
    // If this directive is REMOVED, then all parser-related #defines
    // can also be removed from icmconf.
#define PARSER_DIR          ""

    // What is the program generating a parser?
#define PARSGEN             "bisonc++"

    // Flags to pass to PARSGEN:
#define PARSFLAGS           "-V"

    // What is the top-level (or only) grammar specification file?
#define PARSSPEC            "grammar"

    // Optionally use patterns to specify additional grammar specification 
    // files. These files are (in)directly included by PARSSPEC. Specify
    // patterns relative to PARSER_DIR
//#define PARSFILES           ""

    // The source file generated by the parser generator
#define PARSOUT             "parse.cc"


// DEFINES RELATED TO USING A SCANNER GENERATOR
// ============================================

    // The subdirectory containing the scanner's specification file
    // If this directive is REMOVED, then all scanner-related #defines
    // can also be removed from icmconf.
#define SCANNER_DIR         ""  

    // What is the program generating the lexical scanner?
#define SCANGEN             "flexc++"

    // Flags to provide SCANGEN with:
#define SCANFLAGS           ""

    // Name of the lexical scanner specification file
#define SCANSPEC            "lexer"
    
    // Optionally use patterns to specify additional scanner specification 
    // files. These files are (in)directly included by SCANSPEC. Specify
    // patterns relative to SCANNER_DIR
//#define SCANFILES            ""

    // The source file generated by the lexical scanner
#define SCANOUT             "lex.cc"






