builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideBuildConfiguration.java
changeset 854 a7d9320cd85e
parent 853 6c8527cdaa2e
child 1134 081b99cb271a
equal deleted inserted replaced
853:6c8527cdaa2e 854:a7d9320cd85e
    19 import java.util.ArrayList;
    19 import java.util.ArrayList;
    20 import java.util.List;
    20 import java.util.List;
    21 
    21 
    22 import org.eclipse.cdt.core.CCorePlugin;
    22 import org.eclipse.cdt.core.CCorePlugin;
    23 import org.eclipse.cdt.core.model.CoreModel;
    23 import org.eclipse.cdt.core.model.CoreModel;
       
    24 import org.eclipse.cdt.core.settings.model.CMacroEntry;
    24 import org.eclipse.cdt.core.settings.model.ICConfigurationDescription;
    25 import org.eclipse.cdt.core.settings.model.ICConfigurationDescription;
    25 import org.eclipse.cdt.core.settings.model.ICProjectDescription;
    26 import org.eclipse.cdt.core.settings.model.ICProjectDescription;
    26 import org.eclipse.cdt.core.settings.model.ICStorageElement;
    27 import org.eclipse.cdt.core.settings.model.ICStorageElement;
    27 import org.eclipse.cdt.core.settings.model.extension.CConfigurationData;
    28 import org.eclipse.cdt.core.settings.model.extension.CConfigurationData;
    28 import org.eclipse.core.resources.IMarker;
    29 import org.eclipse.core.resources.IMarker;
   318 			macros.add("_DEBUG"); //$NON-NLS-1$
   319 			macros.add("_DEBUG"); //$NON-NLS-1$
   319 		} else {
   320 		} else {
   320 			macros.add("NDEBUG"); //$NON-NLS-1$
   321 			macros.add("NDEBUG"); //$NON-NLS-1$
   321 		}
   322 		}
   322 		
   323 		
       
   324 		if (hasSTDCPPSupport()){
       
   325 			macros.add("__SYMBIAN_STDCPP_SUPPORT__");
       
   326 		}
       
   327 		
   323 		return macros;
   328 		return macros;
   324 	}
   329 	}
   325 
   330 
   326 	public CConfigurationData getBuildConfigurationData() {
   331 	public CConfigurationData getBuildConfigurationData() {
   327 		return buildConfigData;
   332 		return buildConfigData;
   376 	public IROMBuilderInfo getROMBuildInfo() {
   381 	public IROMBuilderInfo getROMBuildInfo() {
   377 		return romBuilderInfo;
   382 		return romBuilderInfo;
   378 	}
   383 	}
   379 
   384 
   380 
   385 
   381 	public boolean hasSTDCPPSupport() {
   386 	private boolean hasSTDCPPSupport() {
   382 		
   387 		
   383 		ICarbideProjectInfo cpi = getCarbideProject();
   388 		ICarbideProjectInfo cpi = getCarbideProject();
   384 		
   389 		
   385 		List<ISymbianBuildContext> buildConfig = new ArrayList<ISymbianBuildContext>();
   390 		List<ISymbianBuildContext> buildConfig = new ArrayList<ISymbianBuildContext>();
   386 		List<IPath> normalMakMakePaths = new ArrayList<IPath>();
   391 		List<IPath> normalMakMakePaths = new ArrayList<IPath>();
   387 		List<IPath> testMakMakePaths = new ArrayList<IPath>();
   392 		List<IPath> testMakMakePaths = new ArrayList<IPath>();
   388 		buildConfig.add(cpi.getDefaultConfiguration());
   393 		buildConfig.add(this);
   389 		EpocEngineHelper.getMakMakeFiles(cpi.getAbsoluteBldInfPath(), buildConfig, normalMakMakePaths, testMakMakePaths, new NullProgressMonitor());
   394 		EpocEngineHelper.getMakMakeFiles(cpi.getAbsoluteBldInfPath(), buildConfig, normalMakMakePaths, testMakMakePaths, new NullProgressMonitor());
   390 		
   395 		
   391 		for (IPath mmpPath : normalMakMakePaths){
   396 		for (IPath mmpPath : normalMakMakePaths){
   392 			if (EpocEngineHelper.hasSTDCPPSupport(cpi, mmpPath)){
   397 			if (EpocEngineHelper.hasSTDCPPSupport(cpi, mmpPath)){
   393 				return true;
   398 				return true;