PrecompilingCommandLineCompiler (cpptasks 1.0b5 API)
Keywords: net.sf.antcontrib.cpptasks.compiler.PrecompilingCommandLineCompiler class

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## net.sf.antcontrib.cpptasks.compiler
Class PrecompilingCommandLineCompiler

    java.lang.Object
      net.sf.antcontrib.cpptasks.compiler.AbstractProcessor
          net.sf.antcontrib.cpptasks.compiler.AbstractCompiler
              net.sf.antcontrib.cpptasks.compiler.CommandLineCompiler
                  net.sf.antcontrib.cpptasks.compiler.PrecompilingCommandLineCompiler

All Implemented Interfaces:
  java.lang.Cloneable, Compiler, PrecompilingCompiler, Processor

Direct Known Subclasses:
  PrecompilingCommandLineCCompiler

    public abstract class PrecompilingCommandLineCompiler

extends CommandLineCompiler
implements PrecompilingCompiler

A command line C compiler that can utilize precompilation of header files

Author:
  Curt Arnold

Field Summary

Fields inherited from class net.sf.antcontrib.cpptasks.compiler.AbstractProcessor
`DEFAULT_DISCARD_BID, DEFAULT_PROCESS_BID`

Constructor Summary
`protected` | `PrecompilingCommandLineCompiler(java.lang.String command, java.lang.String identifierArg, java.lang.String[] sourceExtensions, java.lang.String[] headerExtensions, java.lang.String outputSuffix, boolean libtool, PrecompilingCommandLineCompiler libtoolCompiler, boolean newEnvironment, org.apache.tools.ant.types.Environment env)`

Method Summary
`CompilerConfiguration[]` | `createPrecompileConfigurations(CompilerConfiguration config, java.io.File prototype, java.lang.String[] exceptFiles)` This method may be used to get two distinct compiler configurations, one for compiling the specified file and producing a precompiled header file, and a second for compiling other files using the precompiled header file.
`protected abstract CompilerConfiguration` | `createPrecompileGeneratingConfig(CommandLineCompilerConfiguration baseConfig, java.io.File prototype, java.lang.String lastInclude)`
`protected abstract CompilerConfiguration` | `createPrecompileUsingConfig(CommandLineCompilerConfiguration baseConfig, java.io.File prototype, java.lang.String lastInclude, java.lang.String[] exceptFiles)`

Methods inherited from class net.sf.antcontrib.cpptasks.compiler.CommandLineCompiler
`addImpliedArgs, addIncludes, addWarningSwitch, buildDefineArguments, compile, createConfiguration, getArgumentCountPerInputFile, getCommand, getDefineSwitch, getEnvironmentIncludePath, getIdentifier, getIncludeDirSwitch, getInputFileArgument, getLibtool, getLibtoolCompiler, getMaximumCommandLength, getMaximumInputFilesPerCommand, getTotalArgumentLengthForInputFile, getUndefineSwitch, runCommand, setCommand`

Methods inherited from class net.sf.antcontrib.cpptasks.compiler.AbstractCompiler
`canParse, createConfiguration, createParser, getBaseOutputName, getOutputFileNames, parseIncludes, resolveInclude`

Methods inherited from class net.sf.antcontrib.cpptasks.compiler.AbstractProcessor
`bid, changeEnvironment, clone, getHeaderExtensions, getIdentifier, getOSArch, getOSName, getSourceExtensions, isDarwin, toString`

Methods inherited from class java.lang.Object
`equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Methods inherited from interface net.sf.antcontrib.cpptasks.compiler.Processor
`bid, changeEnvironment, getLinker`

Constructor Detail

### PrecompilingCommandLineCompiler

    protected PrecompilingCommandLineCompiler(java.lang.String command,
                                              java.lang.String identifierArg,
                                              java.lang.String[] sourceExtensions,
                                              java.lang.String[] headerExtensions,
                                              java.lang.String outputSuffix,
                                              boolean libtool,
                                              PrecompilingCommandLineCompiler libtoolCompiler,
                                              boolean newEnvironment,
                                              org.apache.tools.ant.types.Environment env)

Method Detail

### createPrecompileConfigurations

    public CompilerConfiguration[] createPrecompileConfigurations(CompilerConfiguration config,
                                                                  java.io.File prototype,
                                                                  java.lang.String[] exceptFiles)

  This method may be used to get two distinct compiler configurations, one for compiling the specified file and producing a precompiled header file, and a second for compiling other files using the precompiled header file. The last (preferrably only) include directive in the prototype file will be used to mark the boundary between pre-compiled and normally compiled headers.

  Specified by:
    `createPrecompileConfigurations` in interface `PrecompilingCompiler`
  Parameters:
    `config` - base configuration
    `prototype` - A source file (for example, stdafx.cpp) that is used to build the precompiled header file. @returns null if precompiled headers are not supported or a two element array containing the precompiled header generation configuration and the consuming configuration

### createPrecompileGeneratingConfig

    protected abstract CompilerConfiguration createPrecompileGeneratingConfig(CommandLineCompilerConfiguration baseConfig,
                                                                              java.io.File prototype,
                                                                              java.lang.String lastInclude)

### createPrecompileUsingConfig

    protected abstract CompilerConfiguration createPrecompileUsingConfig(CommandLineCompilerConfiguration baseConfig,
                                                                         java.io.File prototype,
                                                                         java.lang.String lastInclude,
                                                                         java.lang.String[] exceptFiles)

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2001-2008 Ant-Contrib Project. All Rights Reserved.