diff --git a/build/org.eclipse.cdt.build.gcc.core/.project b/build/org.eclipse.cdt.build.gcc.core/.project
index 46346d9b6c1..64c0a4ab47c 100644
--- a/build/org.eclipse.cdt.build.gcc.core/.project
+++ b/build/org.eclipse.cdt.build.gcc.core/.project
@@ -20,9 +20,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/build/org.eclipse.cdt.build.gcc.ui/.project b/build/org.eclipse.cdt.build.gcc.ui/.project
index 4142880ab75..85f34a22b81 100644
--- a/build/org.eclipse.cdt.build.gcc.ui/.project
+++ b/build/org.eclipse.cdt.build.gcc.ui/.project
@@ -20,9 +20,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/build/org.eclipse.cdt.cmake.core/.project b/build/org.eclipse.cdt.cmake.core/.project
index f5c8e485e7b..da03bf59cb7 100644
--- a/build/org.eclipse.cdt.cmake.core/.project
+++ b/build/org.eclipse.cdt.cmake.core/.project
@@ -20,9 +20,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/build/org.eclipse.cdt.cmake.ui/.project b/build/org.eclipse.cdt.cmake.ui/.project
index c65bf192fcd..0c8bc14b239 100644
--- a/build/org.eclipse.cdt.cmake.ui/.project
+++ b/build/org.eclipse.cdt.cmake.ui/.project
@@ -20,9 +20,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/build/org.eclipse.cdt.core.autotools.core/.project b/build/org.eclipse.cdt.core.autotools.core/.project
index 5d2806ec0ed..1cc63f9a9c2 100644
--- a/build/org.eclipse.cdt.core.autotools.core/.project
+++ b/build/org.eclipse.cdt.core.autotools.core/.project
@@ -20,9 +20,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/build/org.eclipse.cdt.core.autotools.core/.settings/.api_filters b/build/org.eclipse.cdt.core.autotools.core/.settings/.api_filters
new file mode 100644
index 00000000000..3e0d6286d7d
--- /dev/null
+++ b/build/org.eclipse.cdt.core.autotools.core/.settings/.api_filters
@@ -0,0 +1,35 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build/org.eclipse.cdt.core.autotools.ui/.project b/build/org.eclipse.cdt.core.autotools.ui/.project
index 8522cebb305..a6904cfd665 100644
--- a/build/org.eclipse.cdt.core.autotools.ui/.project
+++ b/build/org.eclipse.cdt.core.autotools.ui/.project
@@ -20,9 +20,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/build/org.eclipse.cdt.meson.core/.project b/build/org.eclipse.cdt.meson.core/.project
index 88c2a4d72fe..bc31fea93ce 100644
--- a/build/org.eclipse.cdt.meson.core/.project
+++ b/build/org.eclipse.cdt.meson.core/.project
@@ -25,9 +25,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/build/org.eclipse.cdt.meson.ui.editor/.project b/build/org.eclipse.cdt.meson.ui.editor/.project
index da493162cda..0ee660f0e86 100644
--- a/build/org.eclipse.cdt.meson.ui.editor/.project
+++ b/build/org.eclipse.cdt.meson.ui.editor/.project
@@ -20,9 +20,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/build/org.eclipse.cdt.meson.ui/.project b/build/org.eclipse.cdt.meson.ui/.project
index e70361cee48..09581b90499 100644
--- a/build/org.eclipse.cdt.meson.ui/.project
+++ b/build/org.eclipse.cdt.meson.ui/.project
@@ -20,9 +20,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/cmake/org.eclipse.cdt.cmake.is.arm/.project b/cmake/org.eclipse.cdt.cmake.is.arm/.project
index 5ce1456cab9..548d282454f 100644
--- a/cmake/org.eclipse.cdt.cmake.is.arm/.project
+++ b/cmake/org.eclipse.cdt.cmake.is.arm/.project
@@ -20,10 +20,16 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.m2e.core.maven2Nature
org.eclipse.jdt.core.javanature
org.eclipse.pde.PluginNature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/cmake/org.eclipse.cdt.cmake.is.core.ui/.project b/cmake/org.eclipse.cdt.cmake.is.core.ui/.project
index aacf42f5bb4..4180da83eba 100644
--- a/cmake/org.eclipse.cdt.cmake.is.core.ui/.project
+++ b/cmake/org.eclipse.cdt.cmake.is.core.ui/.project
@@ -25,10 +25,16 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
org.eclipse.m2e.core.maven2Nature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/cmake/org.eclipse.cdt.cmake.is.core/.project b/cmake/org.eclipse.cdt.cmake.is.core/.project
index a7dc02110c5..7db3a3a74bd 100644
--- a/cmake/org.eclipse.cdt.cmake.is.core/.project
+++ b/cmake/org.eclipse.cdt.cmake.is.core/.project
@@ -30,10 +30,16 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.m2e.core.maven2Nature
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/cmake/org.eclipse.cdt.cmake.is.hpenonstop/.project b/cmake/org.eclipse.cdt.cmake.is.hpenonstop/.project
index da1b9c64cc5..96789c9bd69 100644
--- a/cmake/org.eclipse.cdt.cmake.is.hpenonstop/.project
+++ b/cmake/org.eclipse.cdt.cmake.is.hpenonstop/.project
@@ -20,10 +20,16 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.m2e.core.maven2Nature
org.eclipse.jdt.core.javanature
org.eclipse.pde.PluginNature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/cmake/org.eclipse.cdt.cmake.is.intel/.project b/cmake/org.eclipse.cdt.cmake.is.intel/.project
index 23427917f2b..b7dc9b901a1 100644
--- a/cmake/org.eclipse.cdt.cmake.is.intel/.project
+++ b/cmake/org.eclipse.cdt.cmake.is.intel/.project
@@ -20,10 +20,16 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.m2e.core.maven2Nature
org.eclipse.jdt.core.javanature
org.eclipse.pde.PluginNature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/cmake/org.eclipse.cdt.cmake.is.microsoft/.project b/cmake/org.eclipse.cdt.cmake.is.microsoft/.project
index 2482c846d45..a372dc0b1cb 100644
--- a/cmake/org.eclipse.cdt.cmake.is.microsoft/.project
+++ b/cmake/org.eclipse.cdt.cmake.is.microsoft/.project
@@ -20,10 +20,16 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.m2e.core.maven2Nature
org.eclipse.jdt.core.javanature
org.eclipse.pde.PluginNature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/cmake/org.eclipse.cdt.cmake.is.nvidia/.project b/cmake/org.eclipse.cdt.cmake.is.nvidia/.project
index 736f358ce6a..0cf6461ccc5 100644
--- a/cmake/org.eclipse.cdt.cmake.is.nvidia/.project
+++ b/cmake/org.eclipse.cdt.cmake.is.nvidia/.project
@@ -20,10 +20,16 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.m2e.core.maven2Nature
org.eclipse.jdt.core.javanature
org.eclipse.pde.PluginNature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/codan/org.eclipse.cdt.codan.core.cxx/.project b/codan/org.eclipse.cdt.codan.core.cxx/.project
index e7f17756d70..0ddb3f303ea 100644
--- a/codan/org.eclipse.cdt.codan.core.cxx/.project
+++ b/codan/org.eclipse.cdt.codan.core.cxx/.project
@@ -20,9 +20,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/core/org.eclipse.cdt.core.linux/.project b/core/org.eclipse.cdt.core.linux/.project
index 8e8b3560544..eeec452f97b 100644
--- a/core/org.eclipse.cdt.core.linux/.project
+++ b/core/org.eclipse.cdt.core.linux/.project
@@ -20,9 +20,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.jdt.core.javanature
org.eclipse.pde.PluginNature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/core/org.eclipse.cdt.core.macosx/.project b/core/org.eclipse.cdt.core.macosx/.project
index d56d04e05eb..da4e1b0ada8 100644
--- a/core/org.eclipse.cdt.core.macosx/.project
+++ b/core/org.eclipse.cdt.core.macosx/.project
@@ -20,9 +20,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.jdt.core.javanature
org.eclipse.pde.PluginNature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/core/org.eclipse.cdt.core.tests/.project b/core/org.eclipse.cdt.core.tests/.project
index 466f1c10b80..06a4ddffc04 100644
--- a/core/org.eclipse.cdt.core.tests/.project
+++ b/core/org.eclipse.cdt.core.tests/.project
@@ -20,11 +20,17 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.jdt.core.javanature
org.eclipse.pde.PluginNature
org.eclipse.cdt.core.cnature
org.eclipse.cdt.core.ccnature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/core/org.eclipse.cdt.core.win32/.project b/core/org.eclipse.cdt.core.win32/.project
index 09821b72158..427e0771d5c 100644
--- a/core/org.eclipse.cdt.core.win32/.project
+++ b/core/org.eclipse.cdt.core.win32/.project
@@ -20,9 +20,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.jdt.core.javanature
org.eclipse.pde.PluginNature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/cross/org.eclipse.cdt.launch.serial.core/.project b/cross/org.eclipse.cdt.launch.serial.core/.project
index 26dde19dd6d..77a4aedb4bd 100644
--- a/cross/org.eclipse.cdt.launch.serial.core/.project
+++ b/cross/org.eclipse.cdt.launch.serial.core/.project
@@ -20,9 +20,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/cross/org.eclipse.cdt.launch.serial.ui/.project b/cross/org.eclipse.cdt.launch.serial.ui/.project
index 9da42b751e3..642db5b43a3 100644
--- a/cross/org.eclipse.cdt.launch.serial.ui/.project
+++ b/cross/org.eclipse.cdt.launch.serial.ui/.project
@@ -20,9 +20,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/debug/org.eclipse.cdt.debug.application/.project b/debug/org.eclipse.cdt.debug.application/.project
index 768ee968f41..c0a2979ee66 100644
--- a/debug/org.eclipse.cdt.debug.application/.project
+++ b/debug/org.eclipse.cdt.debug.application/.project
@@ -20,9 +20,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/debug/org.eclipse.cdt.debug.dap/.project b/debug/org.eclipse.cdt.debug.dap/.project
index 208e02ab113..1c817bd4c47 100644
--- a/debug/org.eclipse.cdt.debug.dap/.project
+++ b/debug/org.eclipse.cdt.debug.dap/.project
@@ -34,9 +34,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/dsf-gdb/org.eclipse.cdt.examples.dsf.gdb/.project b/dsf-gdb/org.eclipse.cdt.examples.dsf.gdb/.project
index 9bcd88e7af4..151743cea52 100644
--- a/dsf-gdb/org.eclipse.cdt.examples.dsf.gdb/.project
+++ b/dsf-gdb/org.eclipse.cdt.examples.dsf.gdb/.project
@@ -20,9 +20,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/dsf-gdb/org.eclipse.cdt.tests.dsf.gdb/.project b/dsf-gdb/org.eclipse.cdt.tests.dsf.gdb/.project
index abafad66df8..aa2bbf65013 100644
--- a/dsf-gdb/org.eclipse.cdt.tests.dsf.gdb/.project
+++ b/dsf-gdb/org.eclipse.cdt.tests.dsf.gdb/.project
@@ -30,9 +30,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/jtag/org.eclipse.cdt.debug.dap.gdbjtag/.project b/jtag/org.eclipse.cdt.debug.dap.gdbjtag/.project
index bbeb9c0c7a3..a2133a3b7c9 100644
--- a/jtag/org.eclipse.cdt.debug.dap.gdbjtag/.project
+++ b/jtag/org.eclipse.cdt.debug.dap.gdbjtag/.project
@@ -20,9 +20,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/launch/org.eclipse.cdt.docker.launcher/.project b/launch/org.eclipse.cdt.docker.launcher/.project
index 709ce94ecce..10f2488449b 100644
--- a/launch/org.eclipse.cdt.docker.launcher/.project
+++ b/launch/org.eclipse.cdt.docker.launcher/.project
@@ -20,9 +20,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/launchbar/org.eclipse.launchbar.core/.project b/launchbar/org.eclipse.launchbar.core/.project
index 6c8a7469162..48a27f43ebe 100644
--- a/launchbar/org.eclipse.launchbar.core/.project
+++ b/launchbar/org.eclipse.launchbar.core/.project
@@ -20,9 +20,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/launchbar/org.eclipse.launchbar.core/.settings/.api_filters b/launchbar/org.eclipse.launchbar.core/.settings/.api_filters
new file mode 100644
index 00000000000..39186c5a62b
--- /dev/null
+++ b/launchbar/org.eclipse.launchbar.core/.settings/.api_filters
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/launchbar/org.eclipse.launchbar.remote.core/.project b/launchbar/org.eclipse.launchbar.remote.core/.project
index 74f0f93e954..1196bb65c5f 100644
--- a/launchbar/org.eclipse.launchbar.remote.core/.project
+++ b/launchbar/org.eclipse.launchbar.remote.core/.project
@@ -20,9 +20,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/launchbar/org.eclipse.launchbar.remote.ui/.project b/launchbar/org.eclipse.launchbar.remote.ui/.project
index ec6ff73a3ae..adb9b38ff34 100644
--- a/launchbar/org.eclipse.launchbar.remote.ui/.project
+++ b/launchbar/org.eclipse.launchbar.remote.ui/.project
@@ -20,9 +20,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/launchbar/org.eclipse.launchbar.ui.controls/.project b/launchbar/org.eclipse.launchbar.ui.controls/.project
index 16aad7cf740..8939237ebc6 100644
--- a/launchbar/org.eclipse.launchbar.ui.controls/.project
+++ b/launchbar/org.eclipse.launchbar.ui.controls/.project
@@ -20,9 +20,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/launchbar/org.eclipse.launchbar.ui/.project b/launchbar/org.eclipse.launchbar.ui/.project
index 2fc4d3a8356..73d17ab8a8b 100644
--- a/launchbar/org.eclipse.launchbar.ui/.project
+++ b/launchbar/org.eclipse.launchbar.ui/.project
@@ -20,9 +20,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/lsp/org.eclipse.cdt.lsp.clangd/.project b/lsp/org.eclipse.cdt.lsp.clangd/.project
index 3e1df7ce1ce..bc3087db53c 100644
--- a/lsp/org.eclipse.cdt.lsp.clangd/.project
+++ b/lsp/org.eclipse.cdt.lsp.clangd/.project
@@ -25,9 +25,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/lsp/org.eclipse.cdt.lsp.core/.project b/lsp/org.eclipse.cdt.lsp.core/.project
index 55e732955e9..697ff10a1b9 100644
--- a/lsp/org.eclipse.cdt.lsp.core/.project
+++ b/lsp/org.eclipse.cdt.lsp.core/.project
@@ -25,9 +25,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/lsp/org.eclipse.cdt.lsp.cquery/.project b/lsp/org.eclipse.cdt.lsp.cquery/.project
index c758d33fb1f..a7ec13890e7 100644
--- a/lsp/org.eclipse.cdt.lsp.cquery/.project
+++ b/lsp/org.eclipse.cdt.lsp.cquery/.project
@@ -25,9 +25,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/lsp/org.eclipse.cdt.lsp.ui/.project b/lsp/org.eclipse.cdt.lsp.ui/.project
index 382b8b22e95..6d4bd487334 100644
--- a/lsp/org.eclipse.cdt.lsp.ui/.project
+++ b/lsp/org.eclipse.cdt.lsp.ui/.project
@@ -20,9 +20,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/memory/org.eclipse.cdt.debug.core.memory/.project b/memory/org.eclipse.cdt.debug.core.memory/.project
index 2ee5a190a65..5a85d2dea5d 100644
--- a/memory/org.eclipse.cdt.debug.core.memory/.project
+++ b/memory/org.eclipse.cdt.debug.core.memory/.project
@@ -20,9 +20,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/memory/org.eclipse.cdt.debug.ui.memory.search/.project b/memory/org.eclipse.cdt.debug.ui.memory.search/.project
index 97c14b41d1c..f0c07debbc1 100644
--- a/memory/org.eclipse.cdt.debug.ui.memory.search/.project
+++ b/memory/org.eclipse.cdt.debug.ui.memory.search/.project
@@ -20,9 +20,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.jdt.core.javanature
org.eclipse.pde.PluginNature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/qt/org.eclipse.cdt.qt.core/.project b/qt/org.eclipse.cdt.qt.core/.project
index a679b3bf3a9..8aaa1e708b1 100644
--- a/qt/org.eclipse.cdt.qt.core/.project
+++ b/qt/org.eclipse.cdt.qt.core/.project
@@ -20,9 +20,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/qt/org.eclipse.cdt.qt.ui/.project b/qt/org.eclipse.cdt.qt.ui/.project
index 83277e4b223..6a41956f43e 100644
--- a/qt/org.eclipse.cdt.qt.ui/.project
+++ b/qt/org.eclipse.cdt.qt.ui/.project
@@ -20,9 +20,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/releng/scripts/check_code_cleanliness.sh b/releng/scripts/check_code_cleanliness.sh
index 0d23a82f3e7..82fb7f921ed 100755
--- a/releng/scripts/check_code_cleanliness.sh
+++ b/releng/scripts/check_code_cleanliness.sh
@@ -102,6 +102,23 @@ git ls-files -- \*\*/.project ":!$COREPROJECT/.project" | while read i ; do
fi
done
+##
+# Verify API Tooling is enabled for all non-test/example bundles
+##
+git ls-files -- \*\*/.project | while read i ; do
+ d=`dirname $i`;
+ natures=$(xmllint --xpath 'string(//projectDescription/natures)' $i)
+ if [[ $natures == *"org.eclipse.pde.PluginNature"* ]] && [[ $natures == *"org.eclipse.jdt.core.javanature"* ]]; then
+ if [[ $natures != *"org.eclipse.pde.api.tools.apiAnalysisNature"* ]]; then
+ if ! echo $i | grep -E '\.tests?[/\.]' > /dev/null && ! echo $i | grep -E '\.examples?[/\.]' > /dev/null; then
+ echo "$d is missing API Tools Nature - Turn it on in Eclipse by 1) Right-click project 2) Plug-in tools -> API Tools Setup"
+ exit 1
+ fi
+ fi
+ fi
+done
+
+
##
# Make sure that natives are up to date
##
diff --git a/tools.templates/org.eclipse.tools.templates.core/.project b/tools.templates/org.eclipse.tools.templates.core/.project
index 2fe6c3c8f09..a54f42b5667 100644
--- a/tools.templates/org.eclipse.tools.templates.core/.project
+++ b/tools.templates/org.eclipse.tools.templates.core/.project
@@ -20,9 +20,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/tools.templates/org.eclipse.tools.templates.freemarker/.project b/tools.templates/org.eclipse.tools.templates.freemarker/.project
index 3d79db07786..07a834aacfd 100644
--- a/tools.templates/org.eclipse.tools.templates.freemarker/.project
+++ b/tools.templates/org.eclipse.tools.templates.freemarker/.project
@@ -20,9 +20,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/tools.templates/org.eclipse.tools.templates.ui/.project b/tools.templates/org.eclipse.tools.templates.ui/.project
index f4f52f49bf6..2d2d4be1930 100644
--- a/tools.templates/org.eclipse.tools.templates.ui/.project
+++ b/tools.templates/org.eclipse.tools.templates.ui/.project
@@ -20,9 +20,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/tools.templates/org.eclipse.tools.templates.ui/.settings/.api_filters b/tools.templates/org.eclipse.tools.templates.ui/.settings/.api_filters
new file mode 100644
index 00000000000..03efb065520
--- /dev/null
+++ b/tools.templates/org.eclipse.tools.templates.ui/.settings/.api_filters
@@ -0,0 +1,47 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/util/org.eclipse.cdt.util/.project b/util/org.eclipse.cdt.util/.project
index e22b701caed..2567edce933 100644
--- a/util/org.eclipse.cdt.util/.project
+++ b/util/org.eclipse.cdt.util/.project
@@ -20,9 +20,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/windows/org.eclipse.cdt.msw.build/.project b/windows/org.eclipse.cdt.msw.build/.project
index e97910dcff7..e159b8c2d70 100644
--- a/windows/org.eclipse.cdt.msw.build/.project
+++ b/windows/org.eclipse.cdt.msw.build/.project
@@ -20,9 +20,15 @@
+
+ org.eclipse.pde.api.tools.apiAnalysisBuilder
+
+
+
org.eclipse.pde.PluginNature
org.eclipse.jdt.core.javanature
+ org.eclipse.pde.api.tools.apiAnalysisNature
diff --git a/windows/org.eclipse.cdt.msw.build/.settings/.api_filters b/windows/org.eclipse.cdt.msw.build/.settings/.api_filters
new file mode 100644
index 00000000000..5503f90917e
--- /dev/null
+++ b/windows/org.eclipse.cdt.msw.build/.settings/.api_filters
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
+
+