diff options
author | Xavier Ducrohet <xav@android.com> | 2011-02-10 16:04:32 -0800 |
---|---|---|
committer | Android Code Review <code-review@android.com> | 2011-02-10 16:04:32 -0800 |
commit | cd11fab9d48875b13947f52b5bcb366a85bcf18d (patch) | |
tree | 320e5ebd06e72a196acf62047e69416f1fbd8e24 | |
parent | d21b4bdc739fb6fc258cf2b9a6efd234a6c26349 (diff) | |
parent | 05fa8db44942d85e2d8d7167832302e437e37d9b (diff) | |
download | platform_sdk-cd11fab9d48875b13947f52b5bcb366a85bcf18d.tar.gz platform_sdk-cd11fab9d48875b13947f52b5bcb366a85bcf18d.tar.bz2 platform_sdk-cd11fab9d48875b13947f52b5bcb366a85bcf18d.zip |
Merge "Integrate 3f18a506 into tools_r10" into tools_r10
2 files changed, 30 insertions, 13 deletions
diff --git a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/build/builders/BaseBuilder.java b/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/build/builders/BaseBuilder.java index 451b5aac5..af4d0ab49 100644 --- a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/build/builders/BaseBuilder.java +++ b/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/build/builders/BaseBuilder.java @@ -309,17 +309,29 @@ public abstract class BaseBuilder extends IncrementalProjectBuilder { } // abort if there are TARGET or ADT type markers - stopOnMarker(iProject, AndroidConstants.MARKER_TARGET, IResource.DEPTH_ZERO); - stopOnMarker(iProject, AndroidConstants.MARKER_ADT, IResource.DEPTH_ZERO); + stopOnMarker(iProject, AndroidConstants.MARKER_TARGET, IResource.DEPTH_ZERO, + false /*checkSeverity*/); + stopOnMarker(iProject, AndroidConstants.MARKER_ADT, IResource.DEPTH_ZERO, + false /*checkSeverity*/); } - protected void stopOnMarker(IProject project, String markerType, int depth) + protected void stopOnMarker(IProject project, String markerType, int depth, + boolean checkSeverity) throws AbortBuildException { try { IMarker[] markers = project.findMarkers(markerType, false /*includeSubtypes*/, depth); if (markers.length > 0) { - throw new AbortBuildException(); + if (checkSeverity == false) { + throw new AbortBuildException(); + } else { + for (IMarker marker : markers) { + int severity = marker.getAttribute(IMarker.SEVERITY, -1 /*defaultValue*/); + if (severity == IMarker.SEVERITY_ERROR) { + throw new AbortBuildException(); + } + } + } } } catch (CoreException e) { // don't stop, something's really screwed up and the build will break later with diff --git a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/build/builders/PostCompilerBuilder.java b/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/build/builders/PostCompilerBuilder.java index 1e818d59d..1d3d13b9c 100644 --- a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/build/builders/PostCompilerBuilder.java +++ b/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/build/builders/PostCompilerBuilder.java @@ -641,16 +641,21 @@ public class PostCompilerBuilder extends BaseBuilder { IProject iProject = getProject(); - // do a (hopefully quick) search for Precompiler type markers. - stopOnMarker(iProject, AndroidConstants.MARKER_AAPT_COMPILE, IResource.DEPTH_INFINITE); - stopOnMarker(iProject, AndroidConstants.MARKER_AIDL, IResource.DEPTH_INFINITE); - stopOnMarker(iProject, AndroidConstants.MARKER_RENDERSCRIPT, IResource.DEPTH_INFINITE); - stopOnMarker(iProject, AndroidConstants.MARKER_ANDROID, IResource.DEPTH_ZERO); - - // do a search for JDT markers. + // do a (hopefully quick) search for Precompiler type markers. Those are always only + // errors. + stopOnMarker(iProject, AndroidConstants.MARKER_AAPT_COMPILE, IResource.DEPTH_INFINITE, + false /*checkSeverity*/); + stopOnMarker(iProject, AndroidConstants.MARKER_AIDL, IResource.DEPTH_INFINITE, + false /*checkSeverity*/); + stopOnMarker(iProject, AndroidConstants.MARKER_RENDERSCRIPT, IResource.DEPTH_INFINITE, + false /*checkSeverity*/); + stopOnMarker(iProject, AndroidConstants.MARKER_ANDROID, IResource.DEPTH_ZERO, + false /*checkSeverity*/); + + // do a search for JDT markers. Those can be errors or warnings stopOnMarker(iProject, IJavaModelMarker.JAVA_MODEL_PROBLEM_MARKER, - IResource.DEPTH_INFINITE); + IResource.DEPTH_INFINITE, true /*checkSeverity*/); stopOnMarker(iProject, IJavaModelMarker.BUILDPATH_PROBLEM_MARKER, - IResource.DEPTH_INFINITE); + IResource.DEPTH_INFINITE, true /*checkSeverity*/); } } |