|
Carbide.c++ | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.nokia.carbide.cdt.builder.EpocEngineHelper
public class EpocEngineHelper
Constructor Summary | |
---|---|
EpocEngineHelper()
|
Method Summary | |
---|---|
static void |
addIncludedFilesFromBldInf(ICarbideProjectInfo projectInfo,
ICarbideBuildConfiguration buildConfig,
IPath bldinfPath,
java.util.Collection<IPath> pathList)
Get all the #include files, plus self, referenced by a given bld.inf file in either a specific build configuration or all build configurations. |
static void |
addIncludedFilesFromBldInf(IPath projectPath,
IPath bldinfPath,
java.util.Collection<IPath> pathList)
Get all the #include files, plus self, referenced by a given bld.inf file in any configuration. |
static void |
addIncludedFilesFromMMP(ICarbideProjectInfo projectInfo,
ICarbideBuildConfiguration buildConfig,
IPath mmpPath,
java.util.Collection<IPath> pathList)
Get all the #include files, plus self, referenced by a given MMP file in either a specific build configuration or all build configurations. |
static void |
addIncludedFilesFromMMP(IPath projectPath,
IPath mmpPath,
java.util.Collection<IPath> pathList)
Get all the #include files, plus self, referenced by a given MMP file in any configuration. |
static void |
addIncludePathToProject(IProject project,
IPath projectRelativeIncDirPath)
Adds the given include path as a user include path to all mmps in the project for all build configurations |
static void |
getAllMakMakeFiles(IProject project,
java.util.List<IPath> makMakeRefs,
java.util.List<IPath> testMakMakeReferences)
Get full filesystem paths to all MMPs and makefiles (including test targets) accessible from the given project's bld.inf. |
static java.util.List<IPath> |
getComponentsBuiltByConifguration(ICarbideBuildConfiguration buildConfig)
Gets the list of mmp and makefiles being built by the given build configuration. |
static IPath |
getEpocRootForProject(IProject project)
Returns the absolute file system path to the EPOCROOT directory of the SDK for the active build configuration of the project |
static void |
getExtensions(IPath bldInfFilePath,
java.util.List<ISymbianBuildContext> buildConfigs,
java.util.List<IPath> normalExtensionPaths,
java.util.List<IPath> testExtensionPaths,
IProgressMonitor monitor)
Return list of file system paths to all project extensions referenced by the given bld.inf full path. |
static java.util.List<IPath> |
getFilesInPKG(IPath pkgPath,
ICarbideBuildConfiguration buildConfig,
ISISBuilderInfo sisInfo)
Returns a list of absolute host paths for any files in the given pkg file. |
static java.util.HashMap<java.lang.String,java.lang.String> |
getHostAndTargetImages(ICarbideBuildConfiguration buildConfig)
Get a map of the generated images from image makefiles for the project. |
static java.util.HashMap<java.lang.String,java.lang.String> |
getHostAndTargetResources(ICarbideBuildConfiguration buildConfig,
IPath workspaceRelativeMMPPath)
Get a map of the generated resources for the project. |
static java.util.HashMap<java.lang.String,java.lang.String> |
getHostAndTargetResources(ICarbideProjectInfo info)
Deprecated. In 1.3, there is no longer a debug mmp, hence no "main" executable. When launching, if there is more than one mmp, the user will be asked which executable to target. Use getHostAndTargetResources(ICarbideBuildConfiguration, IPath) instead.
This method will only work now if there is one and only one mmp. Otherwise it will return
an empty map. |
static IPath |
getHostPathForExecutable(ICarbideBuildConfiguration buildConfig,
IPath workspaceRelativeMMPPath)
Find the full host file system path to the executable built by the given mmp for the given build configuration. |
static IPath[] |
getLibDirectoriesForBuildContext(ISymbianBuildContext buildContext)
Return the set of directories containing SDK libraries for a build context, taking into account the SDK, platform and target. |
static void |
getMakMakeFiles(IPath bldInfFilePath,
java.util.List<ISymbianBuildContext> buildConfigs,
java.util.List<IPath> normalMakMakePaths,
java.util.List<IPath> testMakMakePaths,
IProgressMonitor monitor)
Return list of filesystem paths to all MMPs and makefiles referenced by the given bld.inf full path. |
static java.util.List<IPath> |
getMMPFilesForBuildConfiguration(ICarbideBuildConfiguration buildConfig)
Get the list of all mmp file paths that are applicable to the given build configuration. |
static java.util.List<IPath> |
getMMPFilesForProject(ICarbideProjectInfo projectInfo)
Get the list of all mmp file paths for any and all build configurations of a project. |
static void |
getMMPIncludePaths(IProject project,
IPath mmp,
ICarbideBuildConfiguration buildConfiguration,
java.util.List<java.io.File> userPaths,
java.util.List<java.io.File> systemPaths)
Get the resolved user and system include paths from the given MMP and build context. |
static java.util.List<java.lang.String> |
getMMPMacrosForBuildConfiguration(IPath workspaceRelativeMMPPath,
ICarbideBuildConfiguration buildConfig)
Get the list of all macros defined in the specified mmp file supported by specified build configuration. |
static java.util.List<IPath> |
getMMPsForSource(IProject project,
IPath sourcePath)
Get the MMP file that is the parent to a given source file for a given project. |
static void |
getPathToAllExecutables(ICarbideBuildConfiguration buildConfig,
java.util.List<IPath> allExePaths,
java.util.List<IPath> currBuiltExePaths,
java.util.List<IPath> allMMPPaths,
java.util.List<IPath> currBuiltMMPPaths)
Returns host paths to all the executables built by the project for the given build configuration. |
static void |
getPathToAllExecutables(ICarbideProjectInfo info,
java.util.List<IPath> allExePaths,
java.util.List<IPath> currBuiltExePaths)
Returns host paths to all the executables built by the project for the default build configuration. |
static java.lang.String |
getPathToMainExecutable(ICarbideBuildConfiguration buildConfig)
Deprecated. In 1.3, there is no longer a debug mmp, hence no "main" executable. When launching, if there is more than one mmp, the user will be asked which executable to target. Use getHostPathForExecutable(ICarbideBuildConfiguration, IPath) instead.
This method will only work now if there is one and only one mmp. Otherwise it will return
an empty string. |
static java.lang.String |
getPathToMainExecutable(ICarbideProjectInfo info)
Deprecated. In 1.3, there is no longer a debug mmp, hence no "main" executable. When launching, if there is more than one mmp, the user will be asked which executable to target. Use getHostPathForExecutable(ICarbideBuildConfiguration, IPath) instead.
This method will only work now if there is one and only one mmp. Otherwise it will return
an empty string. |
static void |
getProjectIncludePaths(ICarbideProjectInfo projectInfo,
ICarbideBuildConfiguration buildConfiguration,
java.util.List<java.io.File> userPaths,
java.util.List<java.io.File> systemPaths)
Get the user and system include paths referenced by MMPs in the given project and configuration. |
static java.util.List<IPath> |
getProjectRoots(IPath bldInfFilePath,
java.util.List<ISymbianBuildContext> contexts,
IProgressMonitor monitor)
Returns two paths in a list - the first is the suggested root directory for the project. |
static java.util.Set<java.lang.String> |
getSDKLibrariesForBuildContext(ISymbianBuildContext buildContext)
Return the unique libraries appropriate to the given build configuration, taking into account the SDK, platform and target. |
static java.util.List<IPath> |
getSourceFilesForConfiguration(ICarbideBuildConfiguration buildConfig,
IPath inMMPPath)
Gets the list of source files for one MMP file. |
static java.util.List<IPath> |
getSourceRootsForProject(ICarbideProjectInfo info)
Gets the list of source roots for a project. |
static IPath |
getTargetPathForExecutable(ICarbideBuildConfiguration buildConfig,
IPath workspaceRelativeMMPPath)
Find the full target file system path to the executable built by the mmp for the given build configuration. |
static IPath |
getTargetPathForMainExecutable(ICarbideProjectInfo info)
Deprecated. In 1.3, there is no longer a debug mmp, hence no "main" executable. When launching, if there is more than one mmp, the user will be asked which executable to target. Use getTargetPathForExecutable(ICarbideBuildConfiguration, IPath) instead.
This method will only work now if there is one and only one mmp. Otherwise it will return
an empty string. |
static java.util.List<java.lang.String> |
getTargetTypesForBuildConfiguration(ICarbideBuildConfiguration buildConfig)
Gets a list of upper case target type strings for the given build configuration. |
static java.lang.String |
getUID2(ICarbideBuildConfiguration buildConfiguration,
IPath projectRelativeMMPPath)
Returns the UID2 string value for the given mmp file and build config context. |
static IPath |
getVariantMMPTarget(ICarbideBuildConfiguration buildConfiguration,
IPath projectRelativeMMPPath)
If the given MMP builds variant executables, return its current target. |
static IPath[] |
getVariantMMPTargets(ICarbideProjectInfo projectInfo,
IPath projectRelativeMMPPath)
If the given MMP builds variant executables, return all the variant targets it builds. |
static boolean |
isVariantBldInf(IPath bldInfFullPath)
Tell if the given bld.inf builds against variant platforms. |
static boolean |
isVariantMMP(ICarbideProjectInfo projectInfo,
IPath projectRelativeMMPPath)
Tell if given MMP builds variant executables under any configuration. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public EpocEngineHelper()
Method Detail |
---|
public static void getMakMakeFiles(IPath bldInfFilePath, java.util.List<ISymbianBuildContext> buildConfigs, java.util.List<IPath> normalMakMakePaths, java.util.List<IPath> testMakMakePaths, IProgressMonitor monitor)
getExtensions(IPath, List, List, List, IProgressMonitor)
.
bldInfFilePath
- - The IPath to the bld.inf file that is to be preprocessed.buildConfigs
- - List of build configuration to parse for.normalMakMakePaths
- - The list of PRJ_MMPFILES IPath objects for the bld.inftestMakMakePaths
- - The list of PRJ_TESTMMPFILES IPath objects for the bld.inf. Those
with the "ignore" attribute are not returned.monitor
- public static void getExtensions(IPath bldInfFilePath, java.util.List<ISymbianBuildContext> buildConfigs, java.util.List<IPath> normalExtensionPaths, java.util.List<IPath> testExtensionPaths, IProgressMonitor monitor)
bldInfFilePath
- - The IPath to the bld.inf file that is to be preprocessed.buildConfigs
- - List of build configuration to parse for.normalExtensionPaths
- - The list of PRJ_EXTENSIONS IPath objects for the bld.inftestExtensionPaths
- - The list of PRJ_TESTEXTENSIONS IPath objects for the bld.infmonitor
- public static java.util.List<IPath> getProjectRoots(IPath bldInfFilePath, java.util.List<ISymbianBuildContext> contexts, IProgressMonitor monitor)
The second path is the "minimum" root directory for the project. This is the shortest common source path containing the bld.inf, mmp and make files.
The third path is the "desired" root directory for the project. This is the shortest common source path containing the bld.inf, mmp and make files, and the sources and resources. (added as of 1.3)
bldInfFilePath
- full path to bld.infcontexts
- the list of selected SDKsmonitor
- the progress monitor for this operation
public static void getAllMakMakeFiles(IProject project, java.util.List<IPath> makMakeRefs, java.util.List<IPath> testMakMakeReferences)
getExtensions(IPath, List, List, List, IProgressMonitor)
.
project
- - The IProject for the project in questionmakMakeRefs
- - The list of IPath entries for all the mmp and makefiles (PRJ_MMPFILES contents). List will be added to.testMakMakeReferences
- - The list of IPath entries for all the test mmp and makefiles(PRJ_TESTMMPFILES contents). List will be added to.public static java.lang.String getPathToMainExecutable(ICarbideBuildConfiguration buildConfig)
getHostPathForExecutable(ICarbideBuildConfiguration, IPath)
instead.
This method will only work now if there is one and only one mmp. Otherwise it will return
an empty string.
public static java.lang.String getPathToMainExecutable(ICarbideProjectInfo info)
getHostPathForExecutable(ICarbideBuildConfiguration, IPath)
instead.
This method will only work now if there is one and only one mmp. Otherwise it will return
an empty string.
public static IPath getTargetPathForMainExecutable(ICarbideProjectInfo info)
getTargetPathForExecutable(ICarbideBuildConfiguration, IPath)
instead.
This method will only work now if there is one and only one mmp. Otherwise it will return
an empty string.
public static IPath getHostPathForExecutable(ICarbideBuildConfiguration buildConfig, IPath workspaceRelativeMMPPath)
buildConfig
- workspaceRelativeMMPPath
-
public static IPath getTargetPathForExecutable(ICarbideBuildConfiguration buildConfig, IPath workspaceRelativeMMPPath)
buildConfig
- workspaceRelativeMMPPath
-
public static java.util.HashMap<java.lang.String,java.lang.String> getHostAndTargetResources(ICarbideProjectInfo info)
getHostAndTargetResources(ICarbideBuildConfiguration, IPath)
instead.
This method will only work now if there is one and only one mmp. Otherwise it will return
an empty map.
info
- project info
public static java.util.HashMap<java.lang.String,java.lang.String> getHostAndTargetResources(ICarbideBuildConfiguration buildConfig, IPath workspaceRelativeMMPPath)
buildConfig
- the build configurationworkspaceRelativeMMPPath
- the workspace relative path to the mmp file to get the resources for
public static java.util.HashMap<java.lang.String,java.lang.String> getHostAndTargetImages(ICarbideBuildConfiguration buildConfig)
buildConfig
- the build configuration
public static void getProjectIncludePaths(ICarbideProjectInfo projectInfo, ICarbideBuildConfiguration buildConfiguration, java.util.List<java.io.File> userPaths, java.util.List<java.io.File> systemPaths)
projectInfo
- the project infobuildConfiguration
- the build configuration to check, or null for alluserPaths
- list to which paths are addedsystemPaths
- list to which paths are addedpublic static java.util.List<IPath> getSourceFilesForConfiguration(ICarbideBuildConfiguration buildConfig, IPath inMMPPath)
info
- the project info of the project to get the source roots formmpFile
- - The full path to the MMP file whose SOURCE files are to be retrieved
public static java.util.List<IPath> getSourceRootsForProject(ICarbideProjectInfo info)
info
- the project info of the project to get the source roots for
public static java.util.List<IPath> getMMPFilesForProject(ICarbideProjectInfo projectInfo)
projectInfo
-
public static java.util.List<IPath> getMMPFilesForBuildConfiguration(ICarbideBuildConfiguration buildConfig)
buildConfig
-
public static java.util.List<java.lang.String> getMMPMacrosForBuildConfiguration(IPath workspaceRelativeMMPPath, ICarbideBuildConfiguration buildConfig)
mmpPath
- The workspace relative path of the mmp file to get the macros for.buildConfig
- The build config context.
public static void getMMPIncludePaths(IProject project, IPath mmp, ICarbideBuildConfiguration buildConfiguration, java.util.List<java.io.File> userPaths, java.util.List<java.io.File> systemPaths)
project
- the project, must not be nullmmp
- the project-relative MMP path, may not be nullbuildContext
- the build context, may not be nulluserPaths
- list of user paths to append to, may not be nullsystemPaths
- list of system paths to append to, may not be nullpublic static IPath[] getLibDirectoriesForBuildContext(ISymbianBuildContext buildContext)
public static java.util.Set<java.lang.String> getSDKLibrariesForBuildContext(ISymbianBuildContext buildContext)
public static java.util.List<IPath> getMMPsForSource(IProject project, IPath sourcePath)
project
- - The IProject with the sourcePath belongssourcePath
- - The absolute file system path of the source file that is part of the IProject
public static void getPathToAllExecutables(ICarbideProjectInfo info, java.util.List<IPath> allExePaths, java.util.List<IPath> currBuiltExePaths)
info
- project infoallExePaths
- all the executable paths from all the mmps in the inf file for the
default build configurationcurrBuiltExePaths
- all the executables that are actually being built for the default
build configurationpublic static void getPathToAllExecutables(ICarbideBuildConfiguration buildConfig, java.util.List<IPath> allExePaths, java.util.List<IPath> currBuiltExePaths, java.util.List<IPath> allMMPPaths, java.util.List<IPath> currBuiltMMPPaths)
buildConfig
- - current build configurationallExePaths
- - all the executable paths from all the mmp's that could be built for the given build configurationcurrBuiltExePaths
- - all the executable paths that are built for the given build configurationallMMPPaths
- - all the mmp paths from all the mmp's that could be built for the given build configurationcurrBuiltMMPPaths
- - all the mmp paths that are built for the given build configurationpublic static java.util.List<java.lang.String> getTargetTypesForBuildConfiguration(ICarbideBuildConfiguration buildConfig)
buildConfig
- the build configuration to use as a filter when parsing the bld.inf/mmp files
public static boolean isVariantBldInf(IPath bldInfFullPath)
public static boolean isVariantMMP(ICarbideProjectInfo projectInfo, IPath projectRelativeMMPPath)
Note: the variant is only built if the bld.inf is variant as well. That is not checked here.
projectInfo
- the project to checkprojectRelativeMMPPath
- the MMP location in the project
isVariantBldInf(IPath)
public static IPath getVariantMMPTarget(ICarbideBuildConfiguration buildConfiguration, IPath projectRelativeMMPPath)
Note: the variant is only built if the bld.inf is variant as well. That is not checked here.
buildConfiguration
- the build configuration under which to parse the MMPprojectRelativeMMPPath
- the MMP location in the project
isVariantBldInf(IPath)
public static IPath[] getVariantMMPTargets(ICarbideProjectInfo projectInfo, IPath projectRelativeMMPPath)
Note: the variant is only built if the bld.inf is variant as well. That is not checked here.
buildConfiguration
- the build configuration under which to parse the MMPprojectRelativeMMPPath
- the MMP location in the project
isVariantBldInf(IPath)
public static void addIncludedFilesFromMMP(ICarbideProjectInfo projectInfo, ICarbideBuildConfiguration buildConfig, IPath mmpPath, java.util.Collection<IPath> pathList)
projectInfo
- info for the project being consideredbuildConfig
- build configuration, or null
for all configurationsmmpPath
- the full filesystem path to the MMPpathList
- collection of full filesystem paths, updated with resultspublic static void addIncludedFilesFromMMP(IPath projectPath, IPath mmpPath, java.util.Collection<IPath> pathList)
projectPath
- full path of the projectmmpPath
- the full filesystem path to the MMPpathList
- collection of full filesystem paths, updated with resultspublic static void addIncludedFilesFromBldInf(ICarbideProjectInfo projectInfo, ICarbideBuildConfiguration buildConfig, IPath bldinfPath, java.util.Collection<IPath> pathList)
projectInfo
- info for the project being consideredbuildConfig
- the build configuration, or null
for all configurationsbldinfPath
- the full filesystem path to the bld.infpathList
- collection of full filesystem paths, updated with resultspublic static void addIncludedFilesFromBldInf(IPath projectPath, IPath bldinfPath, java.util.Collection<IPath> pathList)
projectPath
- the full filesystem path to the projectbldinfPath
- the full filesystem path to the bld.infpathList
- collection of full filesystem paths, updated with resultspublic static java.util.List<IPath> getFilesInPKG(IPath pkgPath, ICarbideBuildConfiguration buildConfig, ISISBuilderInfo sisInfo)
pkgPath
- absolute path to the pkg filebuildConfig
- build configuration contextsisInfo
- optional sisFinfo. content search location is used from this to find relative paths and
filenames. when null, the first sis info for the build configuration that matches the pkg file will be
used.
public static java.lang.String getUID2(ICarbideBuildConfiguration buildConfiguration, IPath projectRelativeMMPPath)
buildConfiguration
- the build configuration under which to parse the MMPprojectRelativeMMPPath
- the MMP location in the project
public static IPath getEpocRootForProject(IProject project)
project
- the project
public static void addIncludePathToProject(IProject project, IPath projectRelativeIncDirPath)
project
- the projectprojectRelativeIncDirPath
- project relative path to the include directorypublic static java.util.List<IPath> getComponentsBuiltByConifguration(ICarbideBuildConfiguration buildConfig)
buildConfig
- the build configuration
|
Carbide.c++ | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |