core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/api/sdk/ISBSv1BuildContext.java
author timkelly
Fri, 13 Aug 2010 17:35:50 -0500
branchC3_BUILDER_WORK
changeset 1830 5f8982384793
parent 1802 7e50573a0115
permissions -rw-r--r--
add extension point for access 'abld build' arguments. Used to keep analyze tool extension happy while we start to deprecate abld support.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1740
ca1f574a1ecc refactored from public API package.
timkelly
parents:
diff changeset
     1
package com.nokia.carbide.cpp.internal.api.sdk;
ca1f574a1ecc refactored from public API package.
timkelly
parents:
diff changeset
     2
1801
1d73a4591cf8 refactoring usage for getting variant.hrh and compiler preinclude macros. Now should use ISymbianContext both for preprocessed results and getting the IPath to the file.
timkelly
parents: 1755
diff changeset
     3
import java.util.List;
1d73a4591cf8 refactoring usage for getting variant.hrh and compiler preinclude macros. Now should use ISymbianContext both for preprocessed results and getting the IPath to the file.
timkelly
parents: 1755
diff changeset
     4
1740
ca1f574a1ecc refactored from public API package.
timkelly
parents:
diff changeset
     5
import com.nokia.carbide.cpp.sdk.core.ISymbianBuildContext;
ca1f574a1ecc refactored from public API package.
timkelly
parents:
diff changeset
     6
ca1f574a1ecc refactored from public API package.
timkelly
parents:
diff changeset
     7
/**
ca1f574a1ecc refactored from public API package.
timkelly
parents:
diff changeset
     8
 * Build Context specific information for the SBS/Raptor Symbian Builder.
ca1f574a1ecc refactored from public API package.
timkelly
parents:
diff changeset
     9
 * @see ICarbideBuildConfigation
ca1f574a1ecc refactored from public API package.
timkelly
parents:
diff changeset
    10
 * @since 3.0
1799
ee7381872847 mark abld-specific methods as deprecated
timkelly
parents: 1755
diff changeset
    11
 * @deprecated - Temporary support exists for abld on Symbian^2 but will be removed, vFuture
1740
ca1f574a1ecc refactored from public API package.
timkelly
parents:
diff changeset
    12
 *
ca1f574a1ecc refactored from public API package.
timkelly
parents:
diff changeset
    13
 */
ca1f574a1ecc refactored from public API package.
timkelly
parents:
diff changeset
    14
public interface ISBSv1BuildContext extends ISymbianBuildContext {
ca1f574a1ecc refactored from public API package.
timkelly
parents:
diff changeset
    15
ca1f574a1ecc refactored from public API package.
timkelly
parents:
diff changeset
    16
	/**
ca1f574a1ecc refactored from public API package.
timkelly
parents:
diff changeset
    17
	 * Platform constants
ca1f574a1ecc refactored from public API package.
timkelly
parents:
diff changeset
    18
	 */
ca1f574a1ecc refactored from public API package.
timkelly
parents:
diff changeset
    19
	public static final String EMULATOR_PLATFORM = "WINSCW";
ca1f574a1ecc refactored from public API package.
timkelly
parents:
diff changeset
    20
	public static final String GCCE_PLATFORM = "GCCE";
ca1f574a1ecc refactored from public API package.
timkelly
parents:
diff changeset
    21
	public static final String ARMV5_PLATFORM = "ARMV5";
ca1f574a1ecc refactored from public API package.
timkelly
parents:
diff changeset
    22
	public static final String ARMV6_PLATFORM = "ARMV6";
ca1f574a1ecc refactored from public API package.
timkelly
parents:
diff changeset
    23
	public static final String ARMV5_ABIV2_PLATFORM = "ARMV5_ABIV2";
ca1f574a1ecc refactored from public API package.
timkelly
parents:
diff changeset
    24
	public static final String ARMV6_ABIV2_PLATFORM = "ARMV6_ABIV2";
ca1f574a1ecc refactored from public API package.
timkelly
parents:
diff changeset
    25
	
ca1f574a1ecc refactored from public API package.
timkelly
parents:
diff changeset
    26
	/**
ca1f574a1ecc refactored from public API package.
timkelly
parents:
diff changeset
    27
	 * For Symbian Bianry Variation, platforms will be names <plat>.<variation>
ca1f574a1ecc refactored from public API package.
timkelly
parents:
diff changeset
    28
	 * So in some cases you need to know only the platforms that the variant is based on.
ca1f574a1ecc refactored from public API package.
timkelly
parents:
diff changeset
    29
	 * For example, a build platform name of "armv5.myvariant" will return "armv5".
ca1f574a1ecc refactored from public API package.
timkelly
parents:
diff changeset
    30
	 * @return The base platform string.
ca1f574a1ecc refactored from public API package.
timkelly
parents:
diff changeset
    31
	 * @see isSymbianBinaryVariation()
ca1f574a1ecc refactored from public API package.
timkelly
parents:
diff changeset
    32
	 * @since 2.0
1799
ee7381872847 mark abld-specific methods as deprecated
timkelly
parents: 1755
diff changeset
    33
	 * @deprecated
1740
ca1f574a1ecc refactored from public API package.
timkelly
parents:
diff changeset
    34
	 */
ca1f574a1ecc refactored from public API package.
timkelly
parents:
diff changeset
    35
	public String getBasePlatformForVariation();
ca1f574a1ecc refactored from public API package.
timkelly
parents:
diff changeset
    36
	
1755
e65ffeef96f7 refactor abld arguments tab settings under ISBSV1BuildContext API. WIP to push builder specific settings under their respective ISymbianBuildContext implementation.
timkelly
parents: 1740
diff changeset
    37
	/**
e65ffeef96f7 refactor abld arguments tab settings under ISBSV1BuildContext API. WIP to push builder specific settings under their respective ISymbianBuildContext implementation.
timkelly
parents: 1740
diff changeset
    38
	 * Get the (abld)build arguments info.  Contains pref settings from the Arguments tab.
e65ffeef96f7 refactor abld arguments tab settings under ISBSV1BuildContext API. WIP to push builder specific settings under their respective ISymbianBuildContext implementation.
timkelly
parents: 1740
diff changeset
    39
	 * This only applies when building with SBSv1 (bldmake, abld)
e65ffeef96f7 refactor abld arguments tab settings under ISBSV1BuildContext API. WIP to push builder specific settings under their respective ISymbianBuildContext implementation.
timkelly
parents: 1740
diff changeset
    40
	 * @return IBuildArgumentsInfo instance, never null
1799
ee7381872847 mark abld-specific methods as deprecated
timkelly
parents: 1755
diff changeset
    41
	 * @deprecated 
1755
e65ffeef96f7 refactor abld arguments tab settings under ISBSV1BuildContext API. WIP to push builder specific settings under their respective ISymbianBuildContext implementation.
timkelly
parents: 1740
diff changeset
    42
	 */
e65ffeef96f7 refactor abld arguments tab settings under ISBSV1BuildContext API. WIP to push builder specific settings under their respective ISymbianBuildContext implementation.
timkelly
parents: 1740
diff changeset
    43
	IBuildArgumentsInfo getBuildArgumentsInfo();
e65ffeef96f7 refactor abld arguments tab settings under ISBSV1BuildContext API. WIP to push builder specific settings under their respective ISymbianBuildContext implementation.
timkelly
parents: 1740
diff changeset
    44
	
e65ffeef96f7 refactor abld arguments tab settings under ISBSV1BuildContext API. WIP to push builder specific settings under their respective ISymbianBuildContext implementation.
timkelly
parents: 1740
diff changeset
    45
	/**
e65ffeef96f7 refactor abld arguments tab settings under ISBSV1BuildContext API. WIP to push builder specific settings under their respective ISymbianBuildContext implementation.
timkelly
parents: 1740
diff changeset
    46
	 * Get the (abld)build arguments info.  Contains pref settings from the Arguments tab.
e65ffeef96f7 refactor abld arguments tab settings under ISBSV1BuildContext API. WIP to push builder specific settings under their respective ISymbianBuildContext implementation.
timkelly
parents: 1740
diff changeset
    47
	 * This only applies when building with SBSv1 (bldmake, abld)
e65ffeef96f7 refactor abld arguments tab settings under ISBSV1BuildContext API. WIP to push builder specific settings under their respective ISymbianBuildContext implementation.
timkelly
parents: 1740
diff changeset
    48
	 * @return A copy of BuildArgumentsInfo instance, never null
1799
ee7381872847 mark abld-specific methods as deprecated
timkelly
parents: 1755
diff changeset
    49
	 * @deprecated
1755
e65ffeef96f7 refactor abld arguments tab settings under ISBSV1BuildContext API. WIP to push builder specific settings under their respective ISymbianBuildContext implementation.
timkelly
parents: 1740
diff changeset
    50
	 */
e65ffeef96f7 refactor abld arguments tab settings under ISBSV1BuildContext API. WIP to push builder specific settings under their respective ISymbianBuildContext implementation.
timkelly
parents: 1740
diff changeset
    51
	BuildArgumentsInfo getBuildArgumentsInfoCopy();
e65ffeef96f7 refactor abld arguments tab settings under ISBSV1BuildContext API. WIP to push builder specific settings under their respective ISymbianBuildContext implementation.
timkelly
parents: 1740
diff changeset
    52
	
e65ffeef96f7 refactor abld arguments tab settings under ISBSV1BuildContext API. WIP to push builder specific settings under their respective ISymbianBuildContext implementation.
timkelly
parents: 1740
diff changeset
    53
	/**
e65ffeef96f7 refactor abld arguments tab settings under ISBSV1BuildContext API. WIP to push builder specific settings under their respective ISymbianBuildContext implementation.
timkelly
parents: 1740
diff changeset
    54
	 * Set the build arguments info for SBSv2 build arguments. This only sets values in memory, does
1830
5f8982384793 add extension point for access 'abld build' arguments. Used to keep analyze tool extension happy while we start to deprecate abld support.
timkelly
parents: 1802
diff changeset
    55
	 * not write settings to disk. 
1755
e65ffeef96f7 refactor abld arguments tab settings under ISBSV1BuildContext API. WIP to push builder specific settings under their respective ISymbianBuildContext implementation.
timkelly
parents: 1740
diff changeset
    56
	 * @return IBuildArgumentsInfo instance, never null
1799
ee7381872847 mark abld-specific methods as deprecated
timkelly
parents: 1755
diff changeset
    57
	 * @deprecated
1755
e65ffeef96f7 refactor abld arguments tab settings under ISBSV1BuildContext API. WIP to push builder specific settings under their respective ISymbianBuildContext implementation.
timkelly
parents: 1740
diff changeset
    58
	 */
e65ffeef96f7 refactor abld arguments tab settings under ISBSV1BuildContext API. WIP to push builder specific settings under their respective ISymbianBuildContext implementation.
timkelly
parents: 1740
diff changeset
    59
	void setBuildArgumentsInfo(BuildArgumentsInfo bldArgInfo);
e65ffeef96f7 refactor abld arguments tab settings under ISBSV1BuildContext API. WIP to push builder specific settings under their respective ISymbianBuildContext implementation.
timkelly
parents: 1740
diff changeset
    60
	
1801
1d73a4591cf8 refactoring usage for getting variant.hrh and compiler preinclude macros. Now should use ISymbianContext both for preprocessed results and getting the IPath to the file.
timkelly
parents: 1755
diff changeset
    61
	/**
1d73a4591cf8 refactoring usage for getting variant.hrh and compiler preinclude macros. Now should use ISymbianContext both for preprocessed results and getting the IPath to the file.
timkelly
parents: 1755
diff changeset
    62
	* Returns a list of the macros defined in the variant.cfg file. This is NOT the macros
1d73a4591cf8 refactoring usage for getting variant.hrh and compiler preinclude macros. Now should use ISymbianContext both for preprocessed results and getting the IPath to the file.
timkelly
parents: 1755
diff changeset
    63
	* in the HRH file, but the actual maros written to the variant.cfg file.
1d73a4591cf8 refactoring usage for getting variant.hrh and compiler preinclude macros. Now should use ISymbianContext both for preprocessed results and getting the IPath to the file.
timkelly
parents: 1755
diff changeset
    64
	* @return A String list of macros found as is, or an empty list if none.
1d73a4591cf8 refactoring usage for getting variant.hrh and compiler preinclude macros. Now should use ISymbianContext both for preprocessed results and getting the IPath to the file.
timkelly
parents: 1755
diff changeset
    65
	*/
1d73a4591cf8 refactoring usage for getting variant.hrh and compiler preinclude macros. Now should use ISymbianContext both for preprocessed results and getting the IPath to the file.
timkelly
parents: 1755
diff changeset
    66
	public List<String> getVariantCFGMacros();
1d73a4591cf8 refactoring usage for getting variant.hrh and compiler preinclude macros. Now should use ISymbianContext both for preprocessed results and getting the IPath to the file.
timkelly
parents: 1755
diff changeset
    67
	
1755
e65ffeef96f7 refactor abld arguments tab settings under ISBSV1BuildContext API. WIP to push builder specific settings under their respective ISymbianBuildContext implementation.
timkelly
parents: 1740
diff changeset
    68
	
1740
ca1f574a1ecc refactored from public API package.
timkelly
parents:
diff changeset
    69
}