core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/sdk/core/model/SBVPlatform.java
author Ed Swartz <ed.swartz@nokia.com>
Tue, 27 Apr 2010 13:09:37 -0500
changeset 1303 a672cbed3014
parent 480 1c93b442d8bd
permissions -rw-r--r--
Fix NPEs caused by logging null exception
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
140
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
     1
/*
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
     2
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
     3
* All rights reserved.
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
     4
* This component and the accompanying materials are made available
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
     5
* under the terms of the License "Eclipse Public License v1.0"
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
     6
* which accompanies this distribution, and is available
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
     8
*
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
     9
* Initial Contributors:
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    11
*
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    12
*/
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    13
package com.nokia.carbide.cpp.internal.sdk.core.model;
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    14
142
bd4f938f2be5 more tests for binary variation .var file parsing. updated UI text per bug 8794
timkelly
parents: 140
diff changeset
    15
import java.io.File;
140
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    16
import java.text.MessageFormat;
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    17
import java.util.*;
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    18
142
bd4f938f2be5 more tests for binary variation .var file parsing. updated UI text per bug 8794
timkelly
parents: 140
diff changeset
    19
import org.eclipse.core.runtime.*;
140
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    20
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    21
import com.nokia.carbide.cpp.epoc.engine.EpocEnginePlugin;
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    22
import com.nokia.carbide.cpp.epoc.engine.ISBVViewRunnable;
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    23
import com.nokia.carbide.cpp.epoc.engine.model.sbv.ISBVView;
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    24
import com.nokia.carbide.cpp.internal.api.sdk.Messages;
143
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
    25
import com.nokia.carbide.cpp.sdk.core.*;
140
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    26
import com.nokia.cpp.internal.api.utils.core.*;
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    27
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    28
/**
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    29
 * This specifies a single SBV platform.  
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    30
 *
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    31
 */
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    32
public class SBVPlatform implements ISBVPlatform {
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    33
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    34
	/** The exact basename of the .var */
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    35
	private String name;
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    36
	private IPath path;
142
bd4f938f2be5 more tests for binary variation .var file parsing. updated UI text per bug 8794
timkelly
parents: 140
diff changeset
    37
	private ISBVPlatform extendedPlatform;
bd4f938f2be5 more tests for binary variation .var file parsing. updated UI text per bug 8794
timkelly
parents: 140
diff changeset
    38
	private String extendedPlatName;
147
2bb08686aa38 add support to add BUILD_INCLUDE system paths defined from build variants to project configurations.
timkelly
parents: 143
diff changeset
    39
	private Map<IPath, String> systemBuildIncludePaths = new HashMap<IPath, String>();
2bb08686aa38 add support to add BUILD_INCLUDE system paths defined from build variants to project configurations.
timkelly
parents: 143
diff changeset
    40
	private Map<IPath, String> romBuildIncludePaths = new HashMap<IPath, String>();
140
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    41
	private IPath sdkIncludePath;
142
bd4f938f2be5 more tests for binary variation .var file parsing. updated UI text per bug 8794
timkelly
parents: 140
diff changeset
    42
	private IPath bldVarintHRH;
140
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    43
	private ISBVCatalog catalog;
142
bd4f938f2be5 more tests for binary variation .var file parsing. updated UI text per bug 8794
timkelly
parents: 140
diff changeset
    44
	private boolean virtual;
bd4f938f2be5 more tests for binary variation .var file parsing. updated UI text per bug 8794
timkelly
parents: 140
diff changeset
    45
	
bd4f938f2be5 more tests for binary variation .var file parsing. updated UI text per bug 8794
timkelly
parents: 140
diff changeset
    46
	/** Create a Symbian Binary Variation platform from parse results of a .var file
140
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    47
	 * @param sdk
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    48
	 * @param sbvPath
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    49
	 * @param enableAbiV2Mode used to remap ARMV5, ARMV6, or ARMV6_ABIV1 to an appropriate canonical name  
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    50
 
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    51
	 */
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    52
	SBVPlatform(ISBVCatalog catalog, IPath sdkIncludePath, ISBVView view ) {
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    53
		this.catalog = catalog;
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    54
		this.sdkIncludePath = sdkIncludePath;
142
bd4f938f2be5 more tests for binary variation .var file parsing. updated UI text per bug 8794
timkelly
parents: 140
diff changeset
    55
		this.extendedPlatName = view.getExtends().toUpperCase();
140
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    56
		this.path = view.getModel().getPath();
142
bd4f938f2be5 more tests for binary variation .var file parsing. updated UI text per bug 8794
timkelly
parents: 140
diff changeset
    57
		this.virtual = view.getVirtualFlag();
143
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
    58
		this.name = view.getVariantName();
142
bd4f938f2be5 more tests for binary variation .var file parsing. updated UI text per bug 8794
timkelly
parents: 140
diff changeset
    59
		
bd4f938f2be5 more tests for binary variation .var file parsing. updated UI text per bug 8794
timkelly
parents: 140
diff changeset
    60
		String temp = view.getBuildVariantHRH();
143
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
    61
		String epocRoot = getEPOCRoot();
142
bd4f938f2be5 more tests for binary variation .var file parsing. updated UI text per bug 8794
timkelly
parents: 140
diff changeset
    62
		
143
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
    63
		bldVarintHRH = new Path(epocRoot + temp);
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
    64
		
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
    65
		setBuildIncludePaths(view.getBuildIncludes());
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
    66
		setROMBuildIncludePaths(view.getROMBuildIncludes());
142
bd4f938f2be5 more tests for binary variation .var file parsing. updated UI text per bug 8794
timkelly
parents: 140
diff changeset
    67
140
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    68
	}
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    69
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    70
	/* (non-Javadoc)
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    71
	 * @see java.lang.Object#toString()
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    72
	 */
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    73
	@Override
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    74
	public String toString() {
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    75
		return "SBV platform: " + name; //$NON-NLS-1$
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    76
	}
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    77
	
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    78
	/* (non-Javadoc)
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    79
	 * @see java.lang.Object#equals(java.lang.Object)
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    80
	 */
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    81
	@Override
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    82
	public boolean equals(Object obj) {
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    83
		return obj instanceof ISBVPlatform && ((ISBVPlatform) obj).getName().equalsIgnoreCase(name);
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    84
	}
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    85
	
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    86
	
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    87
	/**
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    88
	 * Set the customized platform.
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    89
	 * @param customized
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
    90
	 */
148
c7e636e6e9cd Fix message properties for new SBV parser stuff. Connect SBVPlatform hierarchy from the SBVCatalog.
timkelly
parents: 147
diff changeset
    91
	void setExtendedPlatform(ISBVPlatform customized) {
480
1c93b442d8bd fix bug 9769 (problem importing with SBV tries to extend itself)
timkelly
parents: 185
diff changeset
    92
		
1c93b442d8bd fix bug 9769 (problem importing with SBV tries to extend itself)
timkelly
parents: 185
diff changeset
    93
		if (customized == this) {
1c93b442d8bd fix bug 9769 (problem importing with SBV tries to extend itself)
timkelly
parents: 185
diff changeset
    94
			// If the platform is the same as the extension then just ignore, there is no customization.
1c93b442d8bd fix bug 9769 (problem importing with SBV tries to extend itself)
timkelly
parents: 185
diff changeset
    95
			// This can happen if a platform variant tries to extend itself (boog 9320)
1c93b442d8bd fix bug 9769 (problem importing with SBV tries to extend itself)
timkelly
parents: 185
diff changeset
    96
			String errMsg = "Platform " + this.getName() + " cannot customize itself. Ignoring extended platform for this binary variation."; //$NON-NLS-N$
1c93b442d8bd fix bug 9769 (problem importing with SBV tries to extend itself)
timkelly
parents: 185
diff changeset
    97
			SDKCorePlugin.getDefault().getLog().log(new Status(IStatus.ERROR, SDKCorePlugin.getPluginId(), errMsg, null));		
1c93b442d8bd fix bug 9769 (problem importing with SBV tries to extend itself)
timkelly
parents: 185
diff changeset
    98
			return;
1c93b442d8bd fix bug 9769 (problem importing with SBV tries to extend itself)
timkelly
parents: 185
diff changeset
    99
		}
1c93b442d8bd fix bug 9769 (problem importing with SBV tries to extend itself)
timkelly
parents: 185
diff changeset
   100
		
142
bd4f938f2be5 more tests for binary variation .var file parsing. updated UI text per bug 8794
timkelly
parents: 140
diff changeset
   101
		this.extendedPlatform = customized;
140
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   102
		if (customized != null) {
142
bd4f938f2be5 more tests for binary variation .var file parsing. updated UI text per bug 8794
timkelly
parents: 140
diff changeset
   103
			this.extendedPlatName = customized.getName();
140
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   104
		}
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   105
	}
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   106
	
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   107
	/* (non-Javadoc)
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   108
	 * @see com.nokia.carbide.cpp.sdk.core.ISBVPlatform#getCatalog()
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   109
	 */
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   110
	public ISBVCatalog getCatalog() {
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   111
		return catalog;
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   112
	}
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   113
	
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   114
	/* (non-Javadoc)
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   115
	 * @see com.nokia.carbide.cpp.sdk.core.ISBVPlatform#getSBVPath()
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   116
	 */
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   117
	public IPath getSBVPath() {
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   118
		return path;
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   119
	}
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   120
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   121
	/* (non-Javadoc)
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   122
	 * @see com.nokia.carbide.cpp.sdk.core.ISBVPlatform#getName()
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   123
	 */
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   124
	public String getName() {
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   125
		return name;
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   126
	}
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   127
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   128
	/* (non-Javadoc)
142
bd4f938f2be5 more tests for binary variation .var file parsing. updated UI text per bug 8794
timkelly
parents: 140
diff changeset
   129
	 * @see com.nokia.carbide.cpp.sdk.core.ISBVPlatform#getExtendedPlatformName()
140
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   130
	 */
142
bd4f938f2be5 more tests for binary variation .var file parsing. updated UI text per bug 8794
timkelly
parents: 140
diff changeset
   131
	public String getExtendedVariantName() {
bd4f938f2be5 more tests for binary variation .var file parsing. updated UI text per bug 8794
timkelly
parents: 140
diff changeset
   132
		return extendedPlatName;
140
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   133
	}
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   134
	
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   135
	/* (non-Javadoc)
142
bd4f938f2be5 more tests for binary variation .var file parsing. updated UI text per bug 8794
timkelly
parents: 140
diff changeset
   136
	 * @see com.nokia.carbide.cpp.sdk.core.ISBVPlatform#getExtendedVariant()()
140
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   137
	 */
142
bd4f938f2be5 more tests for binary variation .var file parsing. updated UI text per bug 8794
timkelly
parents: 140
diff changeset
   138
	public ISBVPlatform getExtendedVariant() {
148
c7e636e6e9cd Fix message properties for new SBV parser stuff. Connect SBVPlatform hierarchy from the SBVCatalog.
timkelly
parents: 147
diff changeset
   139
		return extendedPlatform;
140
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   140
	}
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   141
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   142
	/**
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   143
	 * Create one SBV platform, partially initialized in isolation from the
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   144
	 * content of one SBV file.
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   145
	 * @param catalog the owning catalog
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   146
	 * @param sbvPath full path to .sbv file
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   147
	 * @param messages array of messages to which to add any messages found while parsing
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   148
	 * @return new platform, or null on error
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   149
	 */
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   150
	public static SBVPlatform createPlatform(
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   151
			final ISBVCatalog catalog, 
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   152
			final IPath sbvPath, 
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   153
			final List<IMessage> messages, 
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   154
			final IPath sdkIncludePath) {
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   155
		
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   156
		ISBVViewRunnable runnable = new ISBVViewRunnable() {
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   157
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   158
			/* (non-Javadoc)
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   159
			 * @see com.nokia.carbide.cpp.epoc.engine.IViewRunnable#failedLoad(org.eclipse.core.runtime.CoreException)
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   160
			 */
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   161
			public Object failedLoad(CoreException exception) {
1303
a672cbed3014 Fix NPEs caused by logging null exception
Ed Swartz <ed.swartz@nokia.com>
parents: 480
diff changeset
   162
				if (exception != null)
a672cbed3014 Fix NPEs caused by logging null exception
Ed Swartz <ed.swartz@nokia.com>
parents: 480
diff changeset
   163
					EpocEnginePlugin.log(exception);
140
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   164
				messages.add(new Message(IMessage.ERROR,
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   165
						new MessageLocation(sbvPath),
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   166
						"SBVCatalog.SBVLoadError", //$NON-NLS-1$
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   167
						MessageFormat.format(
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   168
								Messages.getString("SBVCatalog.SBVLoadError"), //$NON-NLS-1$
1303
a672cbed3014 Fix NPEs caused by logging null exception
Ed Swartz <ed.swartz@nokia.com>
parents: 480
diff changeset
   169
								new Object[] { exception != null ? exception.getLocalizedMessage() : "file not found"  }) //$NON-NLS-1$
140
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   170
				));
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   171
				return null;
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   172
			}
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   173
			public Object run(ISBVView view) {
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   174
				IMessage[] viewMessages = view.getMessages();
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   175
				for (IMessage message : viewMessages) {
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   176
					messages.add(message);
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   177
				}
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   178
				return new SBVPlatform(catalog, sdkIncludePath, view);
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   179
			}
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   180
		};
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   181
		
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   182
		return (SBVPlatform) EpocEnginePlugin.runWithSBVView(sbvPath, runnable);
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   183
	}
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   184
142
bd4f938f2be5 more tests for binary variation .var file parsing. updated UI text per bug 8794
timkelly
parents: 140
diff changeset
   185
	public boolean isVirtual() {
bd4f938f2be5 more tests for binary variation .var file parsing. updated UI text per bug 8794
timkelly
parents: 140
diff changeset
   186
		return virtual;
bd4f938f2be5 more tests for binary variation .var file parsing. updated UI text per bug 8794
timkelly
parents: 140
diff changeset
   187
	}
bd4f938f2be5 more tests for binary variation .var file parsing. updated UI text per bug 8794
timkelly
parents: 140
diff changeset
   188
bd4f938f2be5 more tests for binary variation .var file parsing. updated UI text per bug 8794
timkelly
parents: 140
diff changeset
   189
	public IPath getBuildVariantHRHFile() {
156
66bb501740a4 updates for SBV support to build and compile with proper platform name and makefile. Updates to refactor support to get MD5 from build target mmp.
timkelly
parents: 148
diff changeset
   190
		// TODO: If the bldvariant is not defined we are supposed to use the <variant name>.hrh
66bb501740a4 updates for SBV support to build and compile with proper platform name and makefile. Updates to refactor support to get MD5 from build target mmp.
timkelly
parents: 148
diff changeset
   191
		// as the preinclude. But currently we aren't sure how to look that up or where the default
66bb501740a4 updates for SBV support to build and compile with proper platform name and makefile. Updates to refactor support to get MD5 from build target mmp.
timkelly
parents: 148
diff changeset
   192
		// location should be
142
bd4f938f2be5 more tests for binary variation .var file parsing. updated UI text per bug 8794
timkelly
parents: 140
diff changeset
   193
		return bldVarintHRH;
bd4f938f2be5 more tests for binary variation .var file parsing. updated UI text per bug 8794
timkelly
parents: 140
diff changeset
   194
	}
143
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   195
	
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   196
	protected void setBuildIncludePaths(Map<String, String> incPaths){
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   197
		synchronized (this)
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   198
		{
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   199
			Set<String> set = incPaths.keySet();
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   200
			for (String currPath : set) {
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   201
				IPath path = new Path(getEPOCRoot() + currPath);
147
2bb08686aa38 add support to add BUILD_INCLUDE system paths defined from build variants to project configurations.
timkelly
parents: 143
diff changeset
   202
				String pathProperty = incPaths.get(currPath);
2bb08686aa38 add support to add BUILD_INCLUDE system paths defined from build variants to project configurations.
timkelly
parents: 143
diff changeset
   203
				systemBuildIncludePaths.put(path, pathProperty);
143
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   204
			}
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   205
		}
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   206
		
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   207
	}
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   208
	
185
a0a675250e30 Use LinkedHashMap instead of Map to preserve build include order.
timkelly
parents: 156
diff changeset
   209
	protected LinkedHashMap<IPath, String> getBuildIncludePathsFromParents(){
143
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   210
		
185
a0a675250e30 Use LinkedHashMap instead of Map to preserve build include order.
timkelly
parents: 156
diff changeset
   211
		LinkedHashMap<IPath, String> parentBuildIncludes = new LinkedHashMap<IPath, String>();
143
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   212
		
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   213
		ISBVPlatform platform = getExtendedVariant();
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   214
		ISBVPlatform prevPlat;
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   215
		while (platform != null) {
147
2bb08686aa38 add support to add BUILD_INCLUDE system paths defined from build variants to project configurations.
timkelly
parents: 143
diff changeset
   216
			parentBuildIncludes.putAll(platform.getBuildIncludePaths());
143
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   217
			prevPlat = platform;
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   218
			platform = getExtendedVariant();
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   219
			if (prevPlat.getName().equalsIgnoreCase(platform.getName())){
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   220
				break;
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   221
			}
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   222
		}
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   223
		
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   224
		return parentBuildIncludes;
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   225
	}
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   226
	
147
2bb08686aa38 add support to add BUILD_INCLUDE system paths defined from build variants to project configurations.
timkelly
parents: 143
diff changeset
   227
	protected void setROMBuildIncludePaths(Map<String, String> romPaths){
143
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   228
		synchronized (this)
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   229
		{
147
2bb08686aa38 add support to add BUILD_INCLUDE system paths defined from build variants to project configurations.
timkelly
parents: 143
diff changeset
   230
			Set<String> set = romPaths.keySet();
2bb08686aa38 add support to add BUILD_INCLUDE system paths defined from build variants to project configurations.
timkelly
parents: 143
diff changeset
   231
			for (String currPath : set) {
143
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   232
				IPath path = new Path(getEPOCRoot() + currPath);
147
2bb08686aa38 add support to add BUILD_INCLUDE system paths defined from build variants to project configurations.
timkelly
parents: 143
diff changeset
   233
				String pathProperty = romPaths.get(currPath);
2bb08686aa38 add support to add BUILD_INCLUDE system paths defined from build variants to project configurations.
timkelly
parents: 143
diff changeset
   234
				romBuildIncludePaths.put(path, pathProperty);
143
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   235
			}
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   236
		}
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   237
	}
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   238
	
147
2bb08686aa38 add support to add BUILD_INCLUDE system paths defined from build variants to project configurations.
timkelly
parents: 143
diff changeset
   239
	protected Map<IPath, String> getROMBuildIncludePathsFromParents(){
143
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   240
		
147
2bb08686aa38 add support to add BUILD_INCLUDE system paths defined from build variants to project configurations.
timkelly
parents: 143
diff changeset
   241
		Map<IPath, String> parentROMBuildIncludes = new HashMap<IPath, String>();
143
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   242
		
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   243
		ISBVPlatform platform = getExtendedVariant();
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   244
		ISBVPlatform prevPlat;
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   245
		while (platform != null) {
147
2bb08686aa38 add support to add BUILD_INCLUDE system paths defined from build variants to project configurations.
timkelly
parents: 143
diff changeset
   246
			parentROMBuildIncludes.putAll(platform.getROMBuildIncludePaths());
143
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   247
			prevPlat = platform;
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   248
			platform = getExtendedVariant();
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   249
			if (prevPlat.getName().equalsIgnoreCase(platform.getName())){
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   250
				break;
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   251
			}
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   252
		}
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   253
		
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   254
		return parentROMBuildIncludes;
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   255
	}
142
bd4f938f2be5 more tests for binary variation .var file parsing. updated UI text per bug 8794
timkelly
parents: 140
diff changeset
   256
143
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   257
	protected String getEPOCRoot(){
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   258
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   259
		String EPOC32_INCLUDE = "epoc32" + File.separator + "include";
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   260
		if (sdkIncludePath.toOSString().contains(EPOC32_INCLUDE)){
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   261
			return sdkIncludePath.toOSString().substring(0, sdkIncludePath.toOSString().indexOf(EPOC32_INCLUDE));
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   262
		} 
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   263
		
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   264
		return sdkIncludePath.toOSString();
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   265
	}
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   266
	
185
a0a675250e30 Use LinkedHashMap instead of Map to preserve build include order.
timkelly
parents: 156
diff changeset
   267
	public LinkedHashMap<IPath, String> getBuildIncludePaths(){
147
2bb08686aa38 add support to add BUILD_INCLUDE system paths defined from build variants to project configurations.
timkelly
parents: 143
diff changeset
   268
		
185
a0a675250e30 Use LinkedHashMap instead of Map to preserve build include order.
timkelly
parents: 156
diff changeset
   269
		LinkedHashMap<IPath, String> fullPathMap = new LinkedHashMap<IPath, String>();
143
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   270
		
147
2bb08686aa38 add support to add BUILD_INCLUDE system paths defined from build variants to project configurations.
timkelly
parents: 143
diff changeset
   271
		fullPathMap.putAll(systemBuildIncludePaths);
2bb08686aa38 add support to add BUILD_INCLUDE system paths defined from build variants to project configurations.
timkelly
parents: 143
diff changeset
   272
		fullPathMap.putAll(getBuildIncludePathsFromParents());
143
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   273
		
147
2bb08686aa38 add support to add BUILD_INCLUDE system paths defined from build variants to project configurations.
timkelly
parents: 143
diff changeset
   274
		return fullPathMap;
143
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   275
	}
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   276
	
185
a0a675250e30 Use LinkedHashMap instead of Map to preserve build include order.
timkelly
parents: 156
diff changeset
   277
	public LinkedHashMap<IPath, String> getROMBuildIncludePaths(){
a0a675250e30 Use LinkedHashMap instead of Map to preserve build include order.
timkelly
parents: 156
diff changeset
   278
		LinkedHashMap<IPath, String> fullPathMap = new LinkedHashMap<IPath, String>();
143
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   279
		
147
2bb08686aa38 add support to add BUILD_INCLUDE system paths defined from build variants to project configurations.
timkelly
parents: 143
diff changeset
   280
		fullPathMap.putAll(romBuildIncludePaths);
2bb08686aa38 add support to add BUILD_INCLUDE system paths defined from build variants to project configurations.
timkelly
parents: 143
diff changeset
   281
		fullPathMap.putAll(getROMBuildIncludePathsFromParents());
143
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   282
		
147
2bb08686aa38 add support to add BUILD_INCLUDE system paths defined from build variants to project configurations.
timkelly
parents: 143
diff changeset
   283
		return fullPathMap;
143
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   284
	}
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   285
	
1997ee87d0d4 more parsing and unit test support for binary variant parsing. all keywords now supported.
timkelly
parents: 142
diff changeset
   286
	
140
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   287
}
697b7727d088 Add preliminary parser support for Symbian Binary Variation support (ported from BSF support). See bug 8796
timkelly
parents:
diff changeset
   288