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
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

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)
           
 
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, getMaximumInputFilesPerCommand, getTotalArgumentLengthForInputFile, getUndefineSwitch, runCommand
 
Methods inherited from class net.sf.antcontrib.cpptasks.compiler.AbstractCompiler
canParse, createConfiguration, createParser, getBaseOutputName, getOutputFileName, parseIncludes, resolveInclude
 
Methods inherited from class net.sf.antcontrib.cpptasks.compiler.AbstractProcessor
bid, getIdentifier, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

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)
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.

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)


Copyright © 2001-2002 Ant-Contrib project. All Rights Reserved.