(* mcOptions.def handles the options for mc. Copyright (C) 2015-2024 Free Software Foundation, Inc. Contributed by Gaius Mulley . This file is part of GNU Modula-2. GNU Modula-2 is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3, or (at your option) any later version. GNU Modula-2 is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Modula-2; see the file COPYING3. If not see . *) DEFINITION MODULE mcOptions ; FROM DynamicStrings IMPORT String ; FROM FIO IMPORT File ; (* handleOptions - iterates over all options setting appropriate values and returns the single source file if found at the end of the arguments. *) PROCEDURE handleOptions () : String ; (* getQuiet - return the value of quiet. *) PROCEDURE getQuiet () : BOOLEAN ; (* getVerbose - return the value of verbose. *) PROCEDURE getVerbose () : BOOLEAN ; (* getInternalDebugging - return the value of internalDebugging. *) PROCEDURE getInternalDebugging () : BOOLEAN ; (* CppCommandLine - returns the Cpp command line and all arguments. *) PROCEDURE getCppCommandLine () : String ; (* getOutputFile - sets the output filename to output. *) PROCEDURE getOutputFile () : String ; (* getExtendedOpaque - return the extendedOpaque value. *) PROCEDURE getExtendedOpaque () : BOOLEAN ; (* setDebugTopological - sets the flag debugTopological to value. *) PROCEDURE setDebugTopological (value: BOOLEAN) ; (* getDebugTopological - returns the flag value of the command line option --debug-top. *) PROCEDURE getDebugTopological () : BOOLEAN ; (* getHPrefix - saves the H file prefix. *) PROCEDURE getHPrefix () : String ; (* getIgnoreFQ - returns the ignorefq flag. *) PROCEDURE getIgnoreFQ () : BOOLEAN ; (* getGccConfigSystem - return the value of the gccConfigSystem flag. *) PROCEDURE getGccConfigSystem () : BOOLEAN ; (* getScaffoldDynamic - return true if the --scaffold-dynamic option was present. *) PROCEDURE getScaffoldDynamic () : BOOLEAN ; (* getScaffoldMain - return true if the --scaffold-main option was present. *) PROCEDURE getScaffoldMain () : BOOLEAN ; (* writeGPLheader - writes out the GPL or the GLPL as a comment. *) PROCEDURE writeGPLheader (f: File) ; (* setSuppressNoReturn - set suppressNoReturn to value. *) PROCEDURE setSuppressNoReturn (value: BOOLEAN) ; (* getSuppressNoReturn - return the suppressNoReturn value. *) PROCEDURE getSuppressNoReturn () : BOOLEAN ; (* useBool - should mc use the bool type instead of int. *) PROCEDURE useBool () : BOOLEAN ; (* getCRealType - returns the string representing the REAL type used by C. By default this is "double". *) PROCEDURE getCRealType () : String ; (* getCLongRealType - returns the string representing the REAL type used by C. By default this is "long double". *) PROCEDURE getCLongRealType () : String ; (* getCShortRealType - returns the string representing the REAL type used by C. By default this is "float". *) PROCEDURE getCShortRealType () : String ; END mcOptions.