diff --git a/build/org.eclipse.cdt.autotools.tests/pom.xml b/build/org.eclipse.cdt.autotools.tests/pom.xml
index c172302b86d..e2059c0e562 100644
--- a/build/org.eclipse.cdt.autotools.tests/pom.xml
+++ b/build/org.eclipse.cdt.autotools.tests/pom.xml
@@ -32,6 +32,7 @@
${tycho-version}
true
+ ${base.ui.test.vmargs}
**/AllAutotoolsTests.*
diff --git a/build/org.eclipse.cdt.make.ui.tests/pom.xml b/build/org.eclipse.cdt.make.ui.tests/pom.xml
index e47bc4101f6..ee9dfafec6b 100644
--- a/build/org.eclipse.cdt.make.ui.tests/pom.xml
+++ b/build/org.eclipse.cdt.make.ui.tests/pom.xml
@@ -23,7 +23,7 @@
${tycho-version}
true
- -ea -Xms256m -Xmx512m -XX:MaxPermSize=256M
+ ${base.ui.test.vmargs} -ea -Xms256m -Xmx512m -XX:MaxPermSize=256M
**/AllMakeUITests.*
diff --git a/build/org.eclipse.cdt.managedbuilder.core.tests/pom.xml b/build/org.eclipse.cdt.managedbuilder.core.tests/pom.xml
index 200ae4229f4..05ad66720ef 100644
--- a/build/org.eclipse.cdt.managedbuilder.core.tests/pom.xml
+++ b/build/org.eclipse.cdt.managedbuilder.core.tests/pom.xml
@@ -33,7 +33,7 @@
true
- -Xms256m -Xmx512m -XX:MaxPermSize=256M
+ ${base.ui.test.vmargs} -Xms256m -Xmx512m -XX:MaxPermSize=256M
**/AllManagedBuildTests.*
diff --git a/build/org.eclipse.cdt.managedbuilder.ui.tests/pom.xml b/build/org.eclipse.cdt.managedbuilder.ui.tests/pom.xml
index a48f87236df..e08f567f959 100644
--- a/build/org.eclipse.cdt.managedbuilder.ui.tests/pom.xml
+++ b/build/org.eclipse.cdt.managedbuilder.ui.tests/pom.xml
@@ -23,7 +23,7 @@
${tycho-version}
true
- -Xms256m -Xmx512m -XX:MaxPermSize=256M
+ ${base.ui.test.vmargs} -Xms256m -Xmx512m -XX:MaxPermSize=256M
**/AllManagedBuildUITests.*
diff --git a/codan/org.eclipse.cdt.codan.core.test/pom.xml b/codan/org.eclipse.cdt.codan.core.test/pom.xml
index 1f00466e914..95fb0f7f914 100644
--- a/codan/org.eclipse.cdt.codan.core.test/pom.xml
+++ b/codan/org.eclipse.cdt.codan.core.test/pom.xml
@@ -24,7 +24,7 @@
true
- -ea -Xms256m -Xmx512m -XX:MaxPermSize=256M
+ ${base.ui.test.vmargs} -ea -Xms256m -Xmx512m -XX:MaxPermSize=256M
**/AutomatedIntegrationSuite.*
diff --git a/core/org.eclipse.cdt.core.tests/pom.xml b/core/org.eclipse.cdt.core.tests/pom.xml
index 7f57c786ad6..bb5241aceb5 100644
--- a/core/org.eclipse.cdt.core.tests/pom.xml
+++ b/core/org.eclipse.cdt.core.tests/pom.xml
@@ -32,7 +32,8 @@
${tycho-version}
false
- -ea -Xms256m -Xmx512m -XX:MaxPermSize=256M
+
+ ${base.ui.test.vmargs} -ea -Xms256m -Xmx512m -XX:MaxPermSize=256M
**/AutomatedIntegrationSuite.*
diff --git a/core/org.eclipse.cdt.ui.tests/pom.xml b/core/org.eclipse.cdt.ui.tests/pom.xml
index e6222b56a22..518aa931a7c 100644
--- a/core/org.eclipse.cdt.ui.tests/pom.xml
+++ b/core/org.eclipse.cdt.ui.tests/pom.xml
@@ -23,7 +23,6 @@
p2
-->
-
@@ -32,7 +31,7 @@
${tycho-version}
true
- -ea -Xms256m -Xmx512m -XX:MaxPermSize=256M
+ ${base.ui.test.vmargs} -ea -Xms256m -Xmx512m -XX:MaxPermSize=256M
**/AutomatedSuite.*
diff --git a/dsf-gdb/org.eclipse.cdt.tests.dsf.gdb/pom.xml b/dsf-gdb/org.eclipse.cdt.tests.dsf.gdb/pom.xml
index cc8b7769a67..1de0450a3c6 100644
--- a/dsf-gdb/org.eclipse.cdt.tests.dsf.gdb/pom.xml
+++ b/dsf-gdb/org.eclipse.cdt.tests.dsf.gdb/pom.xml
@@ -65,7 +65,7 @@
${tycho-version}
true
- -ea -Xms256m -Xmx512m -XX:MaxPermSize=256M ${gdbPathOption}
+ ${base.ui.test.vmargs} -ea -Xms256m -Xmx512m -XX:MaxPermSize=256M ${gdbPathOption}
**/AutomatedSuite.*
diff --git a/pom.xml b/pom.xml
index 47766ee6ede..ca86f0c43cd 100644
--- a/pom.xml
+++ b/pom.xml
@@ -221,6 +221,31 @@
+
+
+ macosx
+
+
+ mac
+
+
+
+ -XstartOnFirstThread
+
+
+
+ other-os
+
+
+ !mac
+
+
+
+
+
+
+
+
diff --git a/testsrunner/org.eclipse.cdt.testsrunner.test/pom.xml b/testsrunner/org.eclipse.cdt.testsrunner.test/pom.xml
index 4a188b94064..136cec3c289 100644
--- a/testsrunner/org.eclipse.cdt.testsrunner.test/pom.xml
+++ b/testsrunner/org.eclipse.cdt.testsrunner.test/pom.xml
@@ -32,6 +32,7 @@
${tycho-version}
true
+ ${base.ui.test.vmargs}
**/TestsRunnerSuite.*