org.eclipse.cdt.managedbuilder.internal.core
Class GeneratedMakefileBuilder

java.lang.Object
  extended by org.eclipse.core.internal.events.InternalBuilder
      extended by org.eclipse.core.resources.IncrementalProjectBuilder
          extended by org.eclipse.cdt.core.resources.ACBuilder
              extended by org.eclipse.cdt.managedbuilder.internal.core.GeneratedMakefileBuilder
All Implemented Interfaces:
IMarkerGenerator, org.eclipse.core.runtime.IExecutableExtension

public class GeneratedMakefileBuilder
extends ACBuilder

This is the incremental builder associated with a managed build project. It dynamically decides the makefile generator it wants to use for a specific target.

Since:
1.2

Nested Class Summary
 class GeneratedMakefileBuilder.ResourceDeltaVisitor
           
 
Field Summary
static boolean VERBOSE
           
 
Fields inherited from class org.eclipse.core.resources.IncrementalProjectBuilder
AUTO_BUILD, CLEAN_BUILD, FULL_BUILD, INCREMENTAL_BUILD
 
Fields inherited from interface org.eclipse.cdt.core.IMarkerGenerator
SEVERITY_ERROR_BUILD, SEVERITY_ERROR_RESOURCE, SEVERITY_INFO, SEVERITY_WARNING
 
Constructor Summary
GeneratedMakefileBuilder()
          Zero-argument constructor needed to fulfill the contract of an incremental builder.
 
Method Summary
 void checkCancel(org.eclipse.core.runtime.IProgressMonitor monitor)
          Check whether the build has been canceled.
 void cleanFile(org.eclipse.core.resources.IFile file, org.eclipse.core.runtime.IProgressMonitor monitor)
           
 org.eclipse.core.runtime.IPath getWorkingDirectory()
           
 void invokeInternalBuilder(org.eclipse.core.resources.IResource[] resourcesToBuild, IConfiguration cfg, boolean buildIncrementaly, boolean resumeOnErr, boolean initNewConsole, boolean printFinishedMessage, org.eclipse.core.runtime.IProgressMonitor monitor)
          Called to invoke the MBS Internal Builder for building the given resources in the given configuration This method is considered experimental.
static void outputError(java.lang.String resourceName, java.lang.String message)
           
static void outputTrace(java.lang.String resourceName, java.lang.String message)
           
 
Methods inherited from class org.eclipse.cdt.core.resources.ACBuilder
addMarker, addMarker
 
Methods inherited from class org.eclipse.core.resources.IncrementalProjectBuilder
forgetLastBuiltState, getCommand, getDelta, getProject, hasBeenBuilt, isInterrupted, needRebuild, setInitializationData
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

VERBOSE

public static boolean VERBOSE
Constructor Detail

GeneratedMakefileBuilder

public GeneratedMakefileBuilder()
Zero-argument constructor needed to fulfill the contract of an incremental builder.

Method Detail

outputTrace

public static void outputTrace(java.lang.String resourceName,
                               java.lang.String message)

outputError

public static void outputError(java.lang.String resourceName,
                               java.lang.String message)

checkCancel

public void checkCancel(org.eclipse.core.runtime.IProgressMonitor monitor)
Check whether the build has been canceled. Cancellation requests propagated to the caller by throwing OperationCanceledException.

See Also:
OperationCanceledException.OperationCanceledException()

getWorkingDirectory

public org.eclipse.core.runtime.IPath getWorkingDirectory()

invokeInternalBuilder

public void invokeInternalBuilder(org.eclipse.core.resources.IResource[] resourcesToBuild,
                                  IConfiguration cfg,
                                  boolean buildIncrementaly,
                                  boolean resumeOnErr,
                                  boolean initNewConsole,
                                  boolean printFinishedMessage,
                                  org.eclipse.core.runtime.IProgressMonitor monitor)
Called to invoke the MBS Internal Builder for building the given resources in the given configuration This method is considered experimental. Clients implementing this API should expect possible changes in the API.

Parameters:
cfg - configuration to be built
buildIncrementaly - if true, incremental build will be performed, only files that need rebuild will be built. If false, full rebuild will be performed
resumeOnErr - if true, build will continue in case of error while building. If false the build will stop on the first error
monitor - Progress monitor. For every resource built this monitor will consume one unit of work.

cleanFile

public void cleanFile(org.eclipse.core.resources.IFile file,
                      org.eclipse.core.runtime.IProgressMonitor monitor)