Skip to content

Commit 75737d2

Browse files
author
jantje
committed
#1283 support for multiple configs
Before this fix only release worked properly
1 parent 71b2669 commit 75737d2

File tree

1 file changed

+8
-7
lines changed

1 file changed

+8
-7
lines changed

io.sloeber.core/src/io/sloeber/core/api/SloeberProject.java

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -166,18 +166,19 @@ public void run(IProgressMonitor internalMonitor) throws CoreException {
166166

167167
CCorePlugin cCorePlugin = CCorePlugin.getDefault();
168168
ICProjectDescription prjCDesc = cCorePlugin.getProjectDescription(project);
169+
ICConfigurationDescription activeConfig = prjCDesc.getActiveConfiguration();
169170

170-
for (ICConfigurationDescription curConfigDesc : prjCDesc.getConfigurations()) {
171-
172-
sloeberProject.myCompileDescriptions.put(getConfigKey(curConfigDesc), compileDescriptor);
173-
sloeberProject.myBoardDescriptions.put(getConfigKey(curConfigDesc), boardDescriptor);
174-
sloeberProject.myOtherDescriptions.put(getConfigKey(curConfigDesc), otherDesc);
175-
171+
for (String curConfigName : sloeberProject.myBoardDescriptions.keySet()) {
172+
ICConfigurationDescription curConfigDesc = prjCDesc.getConfigurationByName(curConfigName);
173+
if (curConfigDesc == null) {
174+
String id = CDataUtil.genId(null);
175+
curConfigDesc = prjCDesc.createConfiguration(id, curConfigName, activeConfig);
176+
}
176177
Helpers.addIncludeFolder(curConfigDesc, addToIncludePath, true);
177178

178179
String curConfigKey = getConfigKey(curConfigDesc);
179180
sloeberProject.setEnvVars(curConfigKey, sloeberProject.getEnvVars(curConfigKey));
180-
configs2.put(curConfigDesc.getName(), curConfigDesc.getId());
181+
configs2.put(curConfigName, curConfigDesc.getId());
181182

182183
}
183184

0 commit comments

Comments
 (0)