diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/Builder.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/Builder.java index 3f6b3818677..55f4995f5c3 100644 --- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/Builder.java +++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/Builder.java @@ -2522,7 +2522,13 @@ public class Builder extends HoldsOptions implements IBuilder, IMatchKeyProvider * The function never returns number smaller than 1. */ public int getOptimalParallelJobNum() { - return Runtime.getRuntime().availableProcessors(); + // Bug 398426: On my Mac running parallel builds at full tilt hangs the desktop. + // Need to pull it back one. + int j = Runtime.getRuntime().availableProcessors(); + if (j > 1 && Platform.getOS().equals(Platform.OS_MACOSX)) + return j - 1; + else + return j; } /** diff --git a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/internal/ui/Messages.properties b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/internal/ui/Messages.properties index 59bc380dca0..ac4acf5dce1 100644 --- a/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/internal/ui/Messages.properties +++ b/build/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/internal/ui/Messages.properties @@ -32,7 +32,7 @@ BuilderSettingsTab_8=&Expand Env. Variable Refs in Makefiles BuilderSettingsTab_9=Build settings BuilderSettingsTab_10=Stop on first build error BuilderSettingsTab_EnableParallelBuild=Enable parallel build -BuilderSettingsTab_UseOptimalJobs=Use number of processors ({0}) +BuilderSettingsTab_UseOptimalJobs=Use optimal jobs ({0}) BuilderSettingsTab_UseParallelJobs=Use parallel jobs: BuilderSettingsTab_UseUnlimitedJobs=Use unlimited jobs BuilderSettingsTab_14=Workbench Build Behavior