Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDoug Schaefer2016-10-19 14:43:55 +0000
committerGerrit Code Review @ Eclipse.org2016-10-19 22:32:48 +0000
commit78ba80e1d50333b8021c01afa7edbd9815612ad8 (patch)
treea2db6229a7fdc5c4b0d1986e44921348693046e2 /build/org.eclipse.cdt.cmake.core
parentfbccef3ff12c3d394e30a8bd1f1198512cff3161 (diff)
downloadorg.eclipse.cdt-78ba80e1d50333b8021c01afa7edbd9815612ad8.tar.gz
org.eclipse.cdt-78ba80e1d50333b8021c01afa7edbd9815612ad8.tar.xz
org.eclipse.cdt-78ba80e1d50333b8021c01afa7edbd9815612ad8.zip
Add New Empty CMake project wizard.
Diffstat (limited to 'build/org.eclipse.cdt.cmake.core')
-rw-r--r--build/org.eclipse.cdt.cmake.core/src/org/eclipse/cdt/cmake/core/CMakeProjectGenerator.java33
1 files changed, 19 insertions, 14 deletions
diff --git a/build/org.eclipse.cdt.cmake.core/src/org/eclipse/cdt/cmake/core/CMakeProjectGenerator.java b/build/org.eclipse.cdt.cmake.core/src/org/eclipse/cdt/cmake/core/CMakeProjectGenerator.java
index 82cc0aea8de..de95869895d 100644
--- a/build/org.eclipse.cdt.cmake.core/src/org/eclipse/cdt/cmake/core/CMakeProjectGenerator.java
+++ b/build/org.eclipse.cdt.cmake.core/src/org/eclipse/cdt/cmake/core/CMakeProjectGenerator.java
@@ -27,6 +27,7 @@ import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.Path;
import org.eclipse.tools.templates.freemarker.FMProjectGenerator;
import org.eclipse.tools.templates.freemarker.SourceRoot;
+import org.eclipse.tools.templates.freemarker.TemplateManifest;
import org.osgi.framework.Bundle;
public class CMakeProjectGenerator extends FMProjectGenerator {
@@ -54,25 +55,29 @@ public class CMakeProjectGenerator extends FMProjectGenerator {
public void generate(Map<String, Object> model, IProgressMonitor monitor) throws CoreException {
super.generate(model, monitor);
- // Create the source folders
- IProject project = getProject();
List<IPathEntry> entries = new ArrayList<>();
- List<SourceRoot> srcRoots = getManifest().getSrcRoots();
- if (srcRoots != null && !srcRoots.isEmpty()) {
- for (SourceRoot srcRoot : srcRoots) {
- IFolder sourceFolder = project.getFolder(srcRoot.getDir());
- if (!sourceFolder.exists()) {
- sourceFolder.create(true, true, monitor);
+ IProject project = getProject();
+
+ // Create the source folders
+ TemplateManifest manifest = getManifest();
+ if (manifest != null) {
+ List<SourceRoot> srcRoots = getManifest().getSrcRoots();
+ if (srcRoots != null && !srcRoots.isEmpty()) {
+ for (SourceRoot srcRoot : srcRoots) {
+ IFolder sourceFolder = project.getFolder(srcRoot.getDir());
+ if (!sourceFolder.exists()) {
+ sourceFolder.create(true, true, monitor);
+ }
+
+ entries.add(CoreModel.newSourceEntry(sourceFolder.getFullPath()));
}
-
- entries.add(CoreModel.newSourceEntry(sourceFolder.getFullPath()));
+ } else {
+ entries.add(CoreModel.newSourceEntry(getProject().getFullPath()));
}
- } else {
- entries.add(CoreModel.newSourceEntry(getProject().getFullPath()));
}
- entries.add(CoreModel.newOutputEntry(getProject().getFolder("build").getFullPath(),
- new IPath[] { new Path("**/CMakeFiles/**") }));
+ entries.add(CoreModel.newOutputEntry(getProject().getFolder("build").getFullPath(), //$NON-NLS-1$
+ new IPath[] { new Path("**/CMakeFiles/**") })); //$NON-NLS-1$
CoreModel.getDefault().create(project).setRawPathEntries(entries.toArray(new IPathEntry[entries.size()]),
monitor);
}

Back to the top