# HG changeset patch # User timkelly # Date 1239652438 18000 # Node ID c606acbe8b76bd9ebabcdec512c37a8ed65bb54b # Parent 61ef8f7de1aaf1174d4bd86f3ffad63a4282d79a fix bug 8478 (again, now for symbian foundation structure) diff -r 61ef8f7de1aa -r c606acbe8b76 core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/sdk/core/processes/CheckS60CustKitSupport.java --- a/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/sdk/core/processes/CheckS60CustKitSupport.java Thu Apr 09 14:14:03 2009 -0500 +++ b/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/sdk/core/processes/CheckS60CustKitSupport.java Mon Apr 13 14:53:58 2009 -0500 @@ -32,8 +32,16 @@ private static final String SELECTED_BUILD_CONFIGS_VALUE_KEY = "selectedBuildConfigs"; //$NON-NLS-1$ private static final String S60_50_BUILD_MACROS = "S60_50_CustomBuildIncludes"; + private static final String S60_INC_MACROS = "#include \n#include \nMW_LAYER_SYSTEMINCLUDE"; private static final String S60_MIDDWARE_INC = "epoc32/include/middleware"; + + private static final String S60_MIDDWARE_INC2 = "epoc32/include/mw"; + private static final String S60_INC_MACROS2 = "#include \nAPP_LAYER_SYSTEMINCLUDE"; + + private static final String S60_SF_FOLDER = "sf"; + private static final String S60_INC_MACROS_SF = "#include \n#include \nAPP_LAYER_SYSTEMINCLUDE"; + protected IProject project; @Override @@ -66,15 +74,36 @@ Check.checkContract(obj instanceof ISymbianBuildContext); ISymbianBuildContext symbianBuildContext = (ISymbianBuildContext)obj; ISymbianSDK sdk = symbianBuildContext.getSDK(); - if (sdk != null){ + if (sdk != null) { File middleWareInclude = new File(sdk.getEPOCROOT() + S60_MIDDWARE_INC); - // NOTE: Here we need to check the SDK major version becuase the 3.2 CustKit - // has the middleware folder but doesn't use the new build macros for include paths - if (sdk.getSDKVersion().getMajor() >= 5 && middleWareInclude.exists()){ + + // NOTE: Here we need to check the SDK major version becuase + // the 3.2 CustKit + // has the middleware folder but doesn't use the new build + // macros for include paths + if (sdk.getSDKVersion().getMajor() >= 5 && middleWareInclude.exists()) { // add symbol as at least one build config is a CustKit S60_50_Macros_String = S60_INC_MACROS; break; } + + middleWareInclude = new File(sdk.getEPOCROOT() + S60_MIDDWARE_INC2); + File sfoPath = new File(sdk.getEPOCROOT() + S60_SF_FOLDER); + // check for middleware paths and /sf path (if SFO kit) + if (sdk.getSDKVersion().getMajor() >= 5 && middleWareInclude.exists() && sfoPath.exists()) { + // add symbol as at least one build config is a CustKit + S60_50_Macros_String = S60_INC_MACROS_SF; + break; + } + + // try newer middleware paths moved to app layer includes + + if (sdk.getSDKVersion().getMajor() >= 5 && middleWareInclude.exists()) { + // add symbol as at least one build config is a CustKit + S60_50_Macros_String = S60_INC_MACROS2; + break; + } + } } }