Class CompilerDef

  • All Implemented Interfaces:
    java.lang.Cloneable

    public final class CompilerDef
    extends ProcessorDef
    A compiler definition. compiler elements may be placed either as children of a cc element or the project element. A compiler element with an id attribute may be referenced from compiler elements with refid or extends attributes.
    Author:
    Adam Murdoch
    • Constructor Detail

      • CompilerDef

        public CompilerDef()
    • Method Detail

      • addConfiguredCompilerArg

        public void addConfiguredCompilerArg​(CompilerArgument arg)
        Adds a compiler command-line arg.
      • addConfiguredCompilerParam

        public void addConfiguredCompilerParam​(CompilerParam param)
        Adds a compiler command-line arg.
      • addConfiguredDefineset

        public void addConfiguredDefineset​(DefineSet defs)
        Adds a defineset.
      • createIncludePath

        public IncludePath createIncludePath()
        Creates an include path.
      • createPrecompile

        public PrecompileDef createPrecompile()
                                       throws org.apache.tools.ant.BuildException
        Specifies precompilation prototype file and exclusions.
        Throws:
        org.apache.tools.ant.BuildException
      • createSysIncludePath

        public SystemIncludePath createSysIncludePath()
        Creates a system include path. Locations and timestamps of files located using the system include paths are not used in dependency analysis. Standard include locations should not be specified. The compiler adapters should recognized the settings from the appropriate environment variables or configuration files.
      • execute

        public void execute()
                     throws org.apache.tools.ant.BuildException
        Throws:
        org.apache.tools.ant.BuildException
      • getActiveIncludePaths

        public java.lang.String[] getActiveIncludePaths()
        Returns the compiler-specific include path.
      • getActiveSysIncludePaths

        public java.lang.String[] getActiveSysIncludePaths()
      • getExceptions

        public final boolean getExceptions​(CompilerDef[] defaultProviders,
                                           int index)
      • getRtti

        public final java.lang.Boolean getRtti​(CompilerDef[] defaultProviders,
                                               int index)
      • getMultithreaded

        public boolean getMultithreaded​(CompilerDef[] defaultProviders,
                                        int index)
      • getWarnings

        public int getWarnings​(CompilerDef[] defaultProviders,
                               int index)
      • setClassname

        public void setClassname​(java.lang.String classname)
                          throws org.apache.tools.ant.BuildException
        Sets the default compiler adapter. Use the "name" attribute when the compiler is a supported compiler.
        Overrides:
        setClassname in class ProcessorDef
        Parameters:
        classname - fully qualified classname which implements CompilerAdapter
        Throws:
        org.apache.tools.ant.BuildException
      • setExceptions

        public void setExceptions​(boolean exceptions)
        Enables or disables exception support.
        Parameters:
        exceptions - if true, exceptions are supported.
      • setRtti

        public void setRtti​(boolean rtti)
        Enables or disables run-time type information.
        Parameters:
        rtti - if true, run-time type information is supported.
      • setMultithreaded

        public void setMultithreaded​(boolean multithreaded)
        Enables or disables generation of multithreaded code. Unless specified, multithreaded code generation is enabled.
        Parameters:
        multithreaded - If true, generated code may be multithreaded.
      • setName

        public void setName​(CompilerEnum name)
                     throws org.apache.tools.ant.BuildException
        Sets compiler type. Supported compilers
        gcc (default) GCC C++ compiler
        g++ GCC C++ compiler
        c++ GCC C++ compiler
        g77 GNU Fortran compiler
        msvc Microsoft Visual C++
        bcc Borland C++ Compiler
        msrc Microsoft Resource Compiler
        brc Borland Resource Compiler
        df Compaq Visual Fortran Compiler
        midl Microsoft MIDL Compiler
        icl Intel C++ compiler for Windows (IA-32)
        ecl Intel C++ compiler for Windows (IA-64)
        icc Intel C++ compiler for Linux (IA-32)
        ecc Intel C++ compiler for Linux (IA-64)
        CC Sun ONE C++ compiler
        aCC HP aC++ C++ Compiler
        os390 OS390 C Compiler
        os400 Icc Compiler
        sunc89 Sun C89 C Compiler
        xlC VisualAge C Compiler
        uic Qt user interface compiler
        moc Qt meta-object compiler
        wcl OpenWatcom C/C++ compiler
        wfl OpenWatcom FORTRAN compiler
        Throws:
        org.apache.tools.ant.BuildException
      • setProcessor

        protected void setProcessor​(Processor proc)
                             throws org.apache.tools.ant.BuildException
        Description copied from class: ProcessorDef
        Sets the processor
        Overrides:
        setProcessor in class ProcessorDef
        Parameters:
        proc - processor, may not be null.
        Throws:
        org.apache.tools.ant.BuildException - if ProcessorDef is a reference
      • setWarnings

        public void setWarnings​(WarningLevelEnum level)
        Enumerated attribute with the values "none", "severe", "default", "production", "diagnostic", and "aserror".
      • setOptimize

        public void setOptimize​(OptimizationEnum value)
        Sets optimization level.
        Parameters:
        value - optimization level