|
7 | 7 | import java.io.File; |
8 | 8 |
|
9 | 9 | import org.eclipse.cdt.debug.internal.core.InternalDebugCoreMessages; |
| 10 | +import org.eclipse.core.resources.IFile; |
10 | 11 | import org.eclipse.core.resources.IProject; |
| 12 | +import org.eclipse.core.resources.IResource; |
11 | 13 | import org.eclipse.core.resources.ResourcesPlugin; |
12 | 14 | import org.eclipse.core.runtime.CoreException; |
13 | 15 | import org.eclipse.core.runtime.IProgressMonitor; |
@@ -110,6 +112,7 @@ public boolean performFinish() |
110 | 112 | String projectName = projectCreationWizardPage.getProjectName(); |
111 | 113 | IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject(projectName); |
112 | 114 | selProvider.setSelection(new StructuredSelection(project)); |
| 115 | + createClangdFile(project); |
113 | 116 | } |
114 | 117 | } |
115 | 118 |
|
@@ -138,6 +141,24 @@ public void widgetDisposed(DisposeEvent event) |
138 | 141 | return performFinish; |
139 | 142 | } |
140 | 143 |
|
| 144 | + private void createClangdFile(IProject project) |
| 145 | + { |
| 146 | + String fileContent = "CompileFlags:\n" //$NON-NLS-1$ |
| 147 | + + " Remove: [-fno-tree-switch-conversion, -fstrict-volatile-bitfields]\n" //$NON-NLS-1$ |
| 148 | + + ""; //$NON-NLS-1$ |
| 149 | + |
| 150 | + try { |
| 151 | + IFile file = project.getFile(".clangd"); //$NON-NLS-1$ |
| 152 | + file.create( |
| 153 | + new java.io.ByteArrayInputStream(fileContent.getBytes()), |
| 154 | + IResource.FORCE | IResource.KEEP_HISTORY, |
| 155 | + null |
| 156 | + ); |
| 157 | + } catch (Exception e) { |
| 158 | + Logger.log(e); |
| 159 | + } |
| 160 | + } |
| 161 | + |
141 | 162 | private void createDefaultDebugConfig() |
142 | 163 | { |
143 | 164 | Shell activeShell = Display.getDefault().getActiveShell(); |
|
0 commit comments