sbsv1/abld/makmake/makmake.pl
author Mike Kinghan <mikek@symbian.org>
Thu, 25 Nov 2010 13:59:07 +0000
changeset 40 68f68128601f
permissions -rw-r--r--
1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package. 2) Enhance romnibus.pl so that it generate the symbol file for the built rom when invoked by Raptor 3) Make the maksym.pl tool portable for Linux as well as Windows. 4) Remove the of armasm2as.pl from the e32tools component in favour of the copy now exported from sbsv1/e32util.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
40
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
     1
# Copyright (c) 1997-2009 Nokia Corporation and/or its subsidiary(-ies).
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
     2
# All rights reserved.
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
     3
# This component and the accompanying materials are made available
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
     4
# under the terms of "Eclipse Public License v1.0"
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
     5
# which accompanies this distribution, and is available
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
     6
# at the URL "http://www.eclipse.org/legal/epl-v10.html".
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
     7
#
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
     8
# Initial Contributors:
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
     9
# Nokia Corporation - initial contribution.
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    10
#
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    11
# Contributors:
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    12
#
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    13
# Description:
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    14
# all variables called *Path* are set up to end with a backslash
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    15
# all variables called *Path or *File are stored as absolute (file)paths within makmake
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    16
# all variables called UpPath* are stored as relative paths within makmake
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    17
# 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    18
#
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    19
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    20
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    21
use FindBin;		# for FindBin::Bin
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    22
use Getopt::Long;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    23
use Cwd;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    24
# modified start: makefile improvement 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    25
use File::stat;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    26
use Time::localtime;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    27
# modified end: makefile improvement 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    28
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    29
my $PerlLibPath;    # fully qualified pathname of the directory containing our Perl modules
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    30
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    31
# Prototype to remove warning.
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    32
sub AddStringTables();
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    33
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    34
BEGIN {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    35
# check user has a version of perl that will cope
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    36
	require 5.005_03;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    37
# establish the path to the Perl libraries: currently the same directory as this script
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    38
	$PerlLibPath = $FindBin::Bin;	# X:/epoc32/tools
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    39
	$PerlLibPath =~ s/\//\\/g;	# X:\epoc32\tools
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    40
	$PerlLibPath .= "\\";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    41
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    42
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    43
use lib $PerlLibPath;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    44
use E32env;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    45
use E32Plat;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    46
use E32Variant;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    47
use Genutl;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    48
use Modload;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    49
use Pathutl;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    50
use Trgtype;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    51
use CheckSource;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    52
use featurevariantparser;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    53
use featurevariantmap;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    54
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    55
# THE MAIN PROGRAM SECTION
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    56
##########################
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    57
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    58
{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    59
	Load_SetModulePath($PerlLibPath);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    60
	Plat_Init($PerlLibPath);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    61
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    62
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    63
my $MAKEFILE;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    64
my $MMPFILE;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    65
my %Options;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    66
my %Plat;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    67
my %TruePlat;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    68
my %BldMacros;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    69
my $PlatArg;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    70
my @PlatOverrideList=();
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    71
my $EABIDef;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    72
my $DebugSwitch=undef;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    73
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    74
my $IsCompilerWrapperOption = 0;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    75
my $IsProxyWrapperOption = 0;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    76
my $FeatureVariantArg;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    77
my %FeatureVariantInfo;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    78
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    79
{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    80
	# process the command line
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    81
	unless (GetOptions(\%Options, 'd', 'mmp', 'plat=s', 'v', 'arm', 'nd' , 'ithumb' , 'iarm' , 'debug', 'no_debug', 'logfc','wrap:s')) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    82
		exit 1;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    83
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    84
	#Update the variable to set the information of -wrap option
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    85
	if(exists($Options{wrap})) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    86
		if ($Options{wrap} eq "") {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    87
			# Set the Compiler wrapper option information i.e. '1'
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    88
			$IsCompilerWrapperOption = 1;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    89
		} elsif ($Options{wrap} eq "proxy") {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    90
			$IsProxyWrapperOption = 1;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    91
		} else {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    92
			print "WARNING: Invalid value for option -wrap: $Options{wrap}\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    93
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    94
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    95
	
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    96
	$Options{makemakefile}='1' unless ($Options{mmp} || $Options{plat});
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    97
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    98
	if ($Options{mmp} or $Options{plat}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
    99
		eval { &Load_ModuleL('MAKHELP'); };
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   100
		die $@ if $@;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   101
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   102
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   103
	if ($Options{mmp}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   104
		&Help_Mmp;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   105
		exit;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   106
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   107
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   108
	if ($Options{plat}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   109
		eval { &Plat_GetL($Options{plat},\%Plat,\%BldMacros); };
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   110
		die $@ if $@;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   111
		eval { &Load_ModuleL($Plat{MakeMod}); };
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   112
		die $@ if $@;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   113
		&Help_Plat($Plat{Real},$Plat{CPU}, $Plat{DefFile}, \@{$Plat{MmpMacros}},\@{$Plat{Macros}});
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   114
		exit;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   115
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   116
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   117
#	show help & exit if necessary
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   118
	if (@ARGV != 2) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   119
		&Usage();
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   120
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   121
	if ($Options{v}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   122
		print "perl -S makmake.pl @ARGV\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   123
		&Load_SetVerbose;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   124
		&Path_SetVerbose;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   125
		&Plat_SetVerbose;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   126
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   127
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   128
	$PlatArg=uc pop @ARGV;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   129
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   130
	# Process build platform arguments where they differ from the "norm"
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   131
	if ($PlatArg=~/^(\S+)\.(\S+)$/)
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   132
		{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   133
		# Explicit feature variant platforms take the form <base platform>.<variant name>
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   134
		# e.g. armv5.variant1
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   135
		$PlatArg=$1;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   136
		$FeatureVariantArg=$2;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   137
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   138
	elsif ($PlatArg=~/^(\S+):(\S+)$/)
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   139
		{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   140
		# IDE platforms can take the form cw_ide:<platform-1>+<platform-2>+<platform-n>
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   141
		# e.g. cw_ide:plat1+plat2+plat3
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   142
		# 			
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   143
		$PlatArg=$1;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   144
		@PlatOverrideList=split(/\+/,$2);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   145
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   146
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   147
	eval { &Plat_GetL($PlatArg,\%TruePlat,\%BldMacros); };
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   148
	die $@ if $@;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   149
	if (scalar @PlatOverrideList) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   150
		$PlatArg=$PlatOverrideList[0];
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   151
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   152
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   153
	
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   154
	$MMPFILE=pop @ARGV;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   155
	die "ERROR: Can't specify MMP file on a different drive\n" if $MMPFILE=~/^\w:\\/o;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   156
	if ($MMPFILE!~/.MMP$/io) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   157
		$MMPFILE.='.MMP';
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   158
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   159
	$MMPFILE=&Path_AbsToWork($MMPFILE);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   160
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   161
	eval { &Load_ModuleL('Mmp'); };
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   162
	die $@ if $@;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   163
	if ($Options{v}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   164
		&Mmp_SetVerbose;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   165
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   166
	if ($Options{d}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   167
		die "ERROR: $E32env::Data{EPOCPath} does not exist\n" if (!-d $E32env::Data{EPOCPath});
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   168
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   169
	
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   170
	if ($Options{debug}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   171
		$DebugSwitch = 1;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   172
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   173
	elsif($Options{no_debug}){
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   174
		$DebugSwitch = 0;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   175
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   176
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   177
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   178
my %LinkerOptions;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   179
my %WarningLevel;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   180
my $ABI;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   181
my @AifStruct;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   182
my $AllowDllData;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   183
my $CompressTarget;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   184
my $CompressTargetMode;   #NONE
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   185
my $ASSPExports;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   186
my @ASSPLibList;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   187
my @BitMapStruct;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   188
my $BuildAsARM=$Options{arm};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   189
my $CallDllEntryPoints;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   190
my $Capability;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   191
my @CapabilityFlags;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   192
my $DataLinkAddress;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   193
my @DebugLibList;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   194
my %Def;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   195
my %DocHash;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   196
my $ExportUnfrozen;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   197
my $FirstLib;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   198
my $FixedProcess;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   199
my %HeapSize;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   200
my @LibList;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   201
my $LinkAs;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   202
my $LinkAsBase;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   203
my $ExportLibrary;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   204
my $NoExportLibrary;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   205
my %MmpFlag;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   206
my @PlatTxt2D;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   207
my $ProcessPriority;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   208
my @RamTargets;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   209
my @ResourceStruct;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   210
my @RomTargets;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   211
my $SmpSafe;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   212
my @SourceStruct;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   213
my $StackSize;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   214
my @StatLibList;    
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   215
my $StdCpp;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   216
my $NoStdCpp;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   217
my $NewLib;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   218
my @SysIncPaths;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   219
my @ResourceSysIncPaths;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   220
my $ResourceVariantMacroHRHFile;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   221
my $Trg;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   222
my %TrgType;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   223
my @UidList;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   224
my @UserIncPaths;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   225
my $SrcDbg;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   226
my %Path;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   227
my %Version;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   228
my $SecureId;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   229
my $VendorId;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   230
my $variantMacroHRHFile = Variant_GetMacroHRHFile();  # HRH file containing macros specific to a variant
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   231
my %ReplaceOptions;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   232
my $ARMFPU;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   233
my @StringTable;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   234
my @StringTableUserIncPaths;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   235
my $CodePagingTargetMode;	# 0-N/A, 1-UNPAGED, 2-PAGED
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   236
my $DataPagingTargetMode;	# 0-N/A, 1-UNPAGED, 2-PAGED
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   237
my %CheckSourceUDEBIncludes;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   238
my %CheckSourceURELIncludes;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   239
my %CheckSourceMMPMetaData;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   240
my %CheckSourceMMPIncludes;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   241
my $IsWideCharMain=0;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   242
my $IsDebuggable; # 0-NONDEBUGGABLE, 1-DEBUGGABLE, 2-DEBUGGABLE_UDEBONLY
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   243
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   244
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   245
use constant NOTPAGED => 0;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   246
use constant UNPAGED => 1;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   247
use constant PAGED => 2;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   248
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   249
use constant INFLATECOMPRESSIONMETHOD => 1;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   250
use constant BYTEPAIRCOMPRESSIONMETHOD => 2;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   251
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   252
use constant NOTDEBUGGABLE => 0;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   253
use constant DEBUGGABLE =>  1;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   254
use constant DEBUGGABLE_UDEBONLY => 2;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   255
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   256
# If the platform does support feature variants but none are specified, then we assume the use of "DEFAULT" if it exists
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   257
# If default doesn't exist feature variantion is basically disabled?
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   258
$FeatureVariantArg = 'default' if (!$FeatureVariantArg && defined &PMSupportsFeatureVariants && featurevariantparser->DefaultExists());
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   259
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   260
# Preload the details of the variant requested if any - we need the HRH file for MMP file processing
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   261
if ($FeatureVariantArg)
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   262
	{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   263
	# First check the feature variant is valid
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   264
	my @buildableFeatureVariants = featurevariantparser->GetBuildableFeatureVariants();
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   265
	die "ERROR: \"$PlatArg.$FeatureVariantArg\" feature variant is either invalid or virtual.\n" if !(grep /^$FeatureVariantArg$/i, @buildableFeatureVariants);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   266
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   267
	# Now load the variant
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   268
	%FeatureVariantInfo = featurevariantparser->GetVariant($FeatureVariantArg);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   269
	
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   270
	# Change the HRH file to use
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   271
	$variantMacroHRHFile = $FeatureVariantInfo{VARIANT_HRH} if $FeatureVariantInfo{VARIANT_HRH};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   272
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   273
	
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   274
&SetVarsFromMmp($PlatArg);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   275
die $@ if $@;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   276
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   277
{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   278
	# set up the makefile filepath - need to do this before loading the platform module
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   279
	# because UID source file will be added and set up in the makefile path under WINS
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   280
	if ($Options{d}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   281
		$MAKEFILE=join ('', $Path{Bld}, &Path_Split('Base',$MMPFILE), $TruePlat{Ext});
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   282
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   283
	else {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   284
		$MAKEFILE=join "", &Path_WorkPath, &Path_Split('Base',$MMPFILE), $TruePlat{Ext};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   285
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   286
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   287
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   288
{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   289
	# Generate an X86GCC def file from eabi def file in build dir if needed
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   290
	if (($PlatArg eq "X86GCC" || $PlatArg eq "X86GMP") && $Def{Base} && not -e &DefFile)
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   291
	{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   292
		# Find the equivalent eabi def file
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   293
		my $eabiDefFile = File::Spec->canonpath("$Def{Path}../eabi/$Def{Base}$Def{Ext}");
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   294
		if (-e $eabiDefFile)
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   295
		{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   296
			# Need to create MAKEFILE directory early in this case
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   297
			eval { &Path_MakePathL($MAKEFILE); };
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   298
			die $@ if $@;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   299
			# Change def file path to build path 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   300
			$Def{Path} = $Path{Bld};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   301
			&generateX86GCCDefFile($eabiDefFile, &DefFile);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   302
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   303
		else
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   304
		{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   305
			print "WARNING: Unable to find EABI def file at $eabiDefFile to generate X86GCC def file with\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   306
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   307
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   308
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   309
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   310
{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   311
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   312
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   313
#	load the platform module
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   314
	eval { &Load_ModuleL($TruePlat{MakeMod}); };
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   315
	die $@ if $@;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   316
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   317
	unless (defined &PMHelp_Mmp) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   318
#		check this function is defined - all modules must have it - if not perhaps the
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   319
#		platform module has not loaded is compiler module successfully via "use"
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   320
		die "ERROR: Module \"$Plat{MakeMod}\" not loaded successfully\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   321
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   322
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   323
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   324
	# Allow the platform to bow out if feature variants have been specified but it doesn't support them
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   325
	if ($FeatureVariantArg && !defined &PMSupportsFeatureVariants)
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   326
		{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   327
		die "ERROR: The \"$PlatArg\" platform does not support feature variants.\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   328
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   329
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   330
{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   331
	# allow the platform to bow out if it can't support some .MMP file specifications
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   332
	if (defined &PMCheckPlatformL) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   333
		eval { &PMCheckPlatformL(); };
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   334
		die $@ if $@;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   335
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   336
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   337
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   338
my @StdIncPaths=();
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   339
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   340
{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   341
	# get the platform module to do it's mmpfile processing - WINS modules may set up an extra source file
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   342
	# for UIDs here depending upon the targettype
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   343
	&PMPlatProcessMmp(@PlatTxt2D) if defined &PMPlatProcessMmp;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   344
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   345
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   346
%CheckSourceMMPMetaData = &Mmp_CheckSourceMMPMetaData();
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   347
%CheckSourceMMPIncludes = &Mmp_CheckSourceMMPIncludes();
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   348
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   349
# merge checksource processing from platform specific .mmp sections, if applicable
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   350
%CheckSourceMMPMetaData = (%CheckSourceMMPMetaData, &PMPlatCheckSource()) if defined &PMPlatCheckSource;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   351
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   352
@ResourceSysIncPaths = @SysIncPaths;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   353
$ResourceVariantMacroHRHFile = $variantMacroHRHFile;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   354
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   355
AddStringTables();
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   356
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   357
# Process feature variants if applicable
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   358
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   359
if ($FeatureVariantArg)
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   360
	{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   361
	if ($Options{v})
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   362
		{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   363
		$featurevariantmap::verbose = 1;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   364
		$featurevariantparser::verbose = 1;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   365
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   366
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   367
	# Get the default variant details
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   368
	my %DefaultFeatureVariantInfo = $FeatureVariantInfo{NAME} =~ /^default$/i ? %FeatureVariantInfo : featurevariantparser->GetVariant("DEFAULT");	
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   369
	die "ERROR: Feature variant \"$PlatArg.default\" is invalid.\n" if !$DefaultFeatureVariantInfo{VALID};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   370
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   371
	# The following IF statement decides whether to use the default variant and not use the hash in the filename 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   372
	# This prevents the generation of dll's/exe's for which variants are not needed (i.e they are invariant)
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   373
	# It also avoids the time-consuming and redundant hash generation
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   374
	# A component is considered invariant if it's not a DLL or EXE or FEATUREVARIANT isn't present in the .mmp file
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   375
	
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   376
# modified start: makefile improvement 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   377
	if ($TrgType{Basic} =~ /^(EXEDLL|EXE|DLL|LIB)$/ && &Mmp_IsFeatureVariant)
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   378
# modified end: makefile improvement 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   379
		{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   380
		# Load the requested variant if it hasn't already been preloaded		
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   381
		%FeatureVariantInfo = featurevariantparser->GetVariant($FeatureVariantArg) if !$FeatureVariantInfo{NAME} || $FeatureVariantInfo{NAME} ne $FeatureVariantArg;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   382
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   383
	else
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   384
		{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   385
		# Use the default variant
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   386
		%FeatureVariantInfo = %DefaultFeatureVariantInfo;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   387
		$FeatureVariantInfo{INVARIANT} = 1;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   388
		$FeatureVariantInfo{NAME} = uc $FeatureVariantArg;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   389
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   390
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   391
	die "ERROR: Feature variant \"$PlatArg.$FeatureVariantInfo{NAME}\" is invalid.\n" if !$FeatureVariantInfo{VALID};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   392
	
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   393
	my @featureVariantSysIncPaths = (@{$FeatureVariantInfo{BUILD_INCLUDES}},@SysIncPaths);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   394
	
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   395
	# Further process paths and filenames so that they include a drive letter.
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   396
	# We store this in a hash specifically for passing on to featurevariantmap->Hash
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   397
	
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   398
	my @processedIncludes = &Path_PrefixWithDrive(&Path_Chop(@UserIncPaths), &Path_Chop(@featureVariantSysIncPaths));
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   399
	push @processedIncludes, &Path_Chop(&PMToolChainIncDir) if defined &PMToolChainIncDir && &PMToolChainIncDir;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   400
	
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   401
	my $processedPreInclude = "";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   402
	if (defined &PMPrefixFile)
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   403
		{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   404
		$processedPreInclude = &PMPrefixFile;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   405
		$processedPreInclude =~ s/\"//g;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   406
		$processedPreInclude = &Path_PrefixWithDrive($processedPreInclude);		
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   407
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   408
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   409
	my %processedFeatureVariantInfo;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   410
	$processedFeatureVariantInfo{PREINCLUDE} = $processedPreInclude if $processedPreInclude;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   411
	$processedFeatureVariantInfo{BUILD_INCLUDES} = \@processedIncludes if @processedIncludes;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   412
	$processedFeatureVariantInfo{VALID} = 1;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   413
	
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   414
	# Pass in the details of the macros tested in the MMP
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   415
	$processedFeatureVariantInfo{MMPTESTED} = &Mmp_TestedMacros();
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   416
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   417
	my @pathedSrcList = ();
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   418
	push @pathedSrcList, Path_PrefixWithDrive($$_{SrcPath}.$$_{CurFile}) foreach (@SourceStruct);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   419
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   420
	foreach my $bld (@{$Plat{Blds}})
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   421
		{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   422
# modified start: makefile improvement 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   423
		my @reusedHash;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   424
# modified end: makefile improvement 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   425
		if ($FeatureVariantInfo{INVARIANT})															# Invariant override
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   426
			{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   427
			$FeatureVariantInfo{$bld."_LABEL"} = "INVARIANT";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   428
			}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   429
		else
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   430
			{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   431
# modified by SV start: makefile improvement 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   432
			my $vmap = "$E32env::Data{RelPath}".lc($Plat{Real})."\\".lc($bld)."\\".Trg()."." . $FeatureVariantInfo{NAME}.".vmap";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   433
# modified by SV end: makefile improvement 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   434
			$vmap = Path_PrefixWithDrive($vmap);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   435
			if(-e $vmap){
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   436
				my @variantlist = featurevariantmap->GetVariantListFromVmap($vmap);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   437
				my @calls;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   438
				foreach(@variantlist)
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   439
				{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   440
					my $target = "CHECKVMAP".uc($bld);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   441
					my $makefile = $MAKEFILE.".".$_;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   442
					if(-e $makefile){
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   443
						push @calls, "make -r -f \"$makefile\"  $target";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   444
					}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   445
				}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   446
				foreach my $call (@calls)
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   447
				{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   448
					print "call: $call" if $Options{v};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   449
					open PIPE, "$call |";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   450
					while(<PIPE>) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   451
						print $_;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   452
					}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   453
					close PIPE;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   454
				}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   455
				if(-e $vmap){
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   456
					@reusedHash = featurevariantmap->CheckOldVmapFile($vmap, \%FeatureVariantInfo);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   457
				}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   458
			}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   459
			if(defined(@reusedHash))
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   460
			{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   461
				$FeatureVariantInfo{$bld."_LABEL"} = $reusedHash[0];
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   462
				$FeatureVariantInfo{$bld."_FEATURES"} = $reusedHash[1];
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   463
				next;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   464
			}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   465
# modified end: makefile improvement 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   466
			my @macros = (@{$Plat{Macros}}, @{$BldMacros{$bld}}, "__SUPPORT_CPP_EXCEPTIONS__");
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   467
			push @macros, "__PRODUCT_INCLUDE__=\"".&Path_PrefixWithDrive($FeatureVariantInfo{VARIANT_HRH})."\"" if $FeatureVariantInfo{VARIANT_HRH};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   468
			$processedFeatureVariantInfo{MACROS} = \@macros;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   469
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   470
			print ("Feature variant hash processing: \"$FeatureVariantInfo{NAME} $bld\"\n") if $Options{v};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   471
			
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   472
			my @result = featurevariantmap->HashAndFeatures(\@pathedSrcList, \%processedFeatureVariantInfo);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   473
			$FeatureVariantInfo{$bld."_LABEL"} = $result[0];
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   474
			$FeatureVariantInfo{$bld."_FEATURES"} = $result[1];
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   475
			
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   476
			die "ERROR: Can't obtain hash for \"$PlatArg.$FeatureVariantInfo{NAME}\" feature variant.\n" if !$FeatureVariantInfo{$bld."_LABEL"};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   477
			}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   478
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   479
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   480
	# Customise standard content based on feature variant updates
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   481
	@SysIncPaths = @featureVariantSysIncPaths;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   482
	$variantMacroHRHFile = $FeatureVariantInfo{VARIANT_HRH};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   483
	$MAKEFILE .= ".$FeatureVariantInfo{NAME}";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   484
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   485
	# Resources are always processed in the context of the default variant's system include and variant files when
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   486
	# feature variants are in use
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   487
	@ResourceSysIncPaths = (@{$DefaultFeatureVariantInfo{BUILD_INCLUDES}},@ResourceSysIncPaths);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   488
	$ResourceVariantMacroHRHFile = $DefaultFeatureVariantInfo{VARIANT_HRH};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   489
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   490
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   491
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   492
{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   493
	# if verbose mode set, output some info
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   494
	#--------------------------------------
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   495
	if ($Options{v}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   496
		print  
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   497
			"Target: \"$Trg\"\n",
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   498
			"TargetType: \"$TrgType{Name}\"\n",
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   499
			"Libraries: \"@LibList\"\n",
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   500
			"Debug Libraries: \"@DebugLibList\"\n",
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   501
			"Static Libraries: \"@StatLibList\"\n",
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   502
			"Uids: \"@UidList\"\n",
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   503
			"BuildVariants: \"@{$Plat{Blds}}\"\n",
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   504
			"TargetMakeFile: \"$MAKEFILE\"\n",
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   505
			"UserIncludes: \"<Source Dir> @UserIncPaths\"\n",
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   506
			"SystemIncludes: \"@SysIncPaths\"\n"
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   507
		;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   508
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   509
	if (%FeatureVariantInfo)
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   510
		{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   511
		print 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   512
			"Feature Variant Name: \"$FeatureVariantInfo{NAME}\"\n",
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   513
			"Feature Variant SystemIncludes: \"@{$FeatureVariantInfo{BUILD_INCLUDES}}\"\n",
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   514
			"Feature Variant HRH file: \"$FeatureVariantInfo{VARIANT_HRH}\"\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   515
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   516
		foreach my $bld (@{$Plat{Blds}})
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   517
			{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   518
			print "Feature Variant $bld Label: \"".$FeatureVariantInfo{$bld."_LABEL"}."\"\n";			
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   519
			}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   520
		
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   521
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   522
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   523
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   524
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   525
# Special handling for non-default invariant makefiles without FEATUREVARIANT in the MMP file
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   526
# In this situation the default variant makefle is just included into the variant makefile
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   527
# modified start: makefile improvement 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   528
if ($TrgType{Basic} =~ /^(EXEDLL|EXE|DLL|LIB)$/ && %FeatureVariantInfo && $FeatureVariantInfo{INVARIANT})
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   529
	{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   530
	$MAKEFILE =~ s/([^.]*$)/DEFAULT/;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   531
# modified by SV start: makefile improvement 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   532
		if( $FeatureVariantInfo{NAME} !~ /^default$/i)
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   533
			{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   534
				print "not creating makefile for  : $FeatureVariantInfo{NAME}\n" if ($Options{v});
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   535
			}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   536
# modified by SV end: makefile improvement 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   537
	if(-e $MAKEFILE )
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   538
		{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   539
		my $mmp_time = -M $MMPFILE;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   540
		my $makefile_time = -M $MAKEFILE;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   541
		if( $makefile_time <= $mmp_time)
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   542
			{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   543
			exit;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   544
			}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   545
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   546
	undef %FeatureVariantInfo;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   547
	%FeatureVariantInfo = featurevariantparser->GetVariant("default");
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   548
	$FeatureVariantInfo{INVARIANT} = 1;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   549
	$FeatureVariantInfo{UREL_LABEL} = 'INVARIANT';
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   550
	$FeatureVariantInfo{UDEB_LABEL} = 'INVARIANT';
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   551
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   552
# modified by SV start: makefile improvement 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   553
	elsif(%FeatureVariantInfo)
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   554
	{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   555
	my $variant_info = &Path_Chop($E32env::Data{BldPath}).$Path{BldInfPath}."\\FeatureVariantInfo\\".$Plat{Real}."\\".$Plat{Real}.".".$FeatureVariantInfo{NAME}.".".&Path_Split('Base', $MMPFILE).".info";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   556
	#if mmp file does not exists
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   557
	$variant_info = &Path_Chop($E32env::Data{BldPath}).$Path{BldInfPath}."\\FeatureVariantInfo\\".$Plat{Real}."\\".$Plat{Real}.".".$FeatureVariantInfo{NAME}.".info" if ! -e $MMPFILE;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   558
# modified by SV end: makefile improvement 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   559
	my $variant_key = "VARIANT_PLAT_NAME_".&Path_Split('Base', $MMPFILE);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   560
	$variant_info_new = $variant_info.".tmp";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   561
	open VARIANTINFOR_NEW, ">$variant_info_new" or die "ERROR: Can't open or create file \"$variant_info_new\"\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   562
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   563
	# Open the variant infor file
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   564
	open VARIANTINFOR, "<$variant_info" or die "ERROR: Can't open file \"$variant_info\"\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   565
	while(<VARIANTINFOR>)
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   566
		{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   567
		if(/^$variant_key/)
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   568
			{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   569
			print VARIANTINFOR_NEW $variant_key.":=".$FeatureVariantInfo{NAME}."\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   570
			}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   571
			else
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   572
			{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   573
			print VARIANTINFOR_NEW $_;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   574
			}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   575
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   576
	# Close and cleanup
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   577
	close VARIANTINFOR or die "ERROR: Can't close file \"$variant_info\"\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   578
	close VARIANTINFOR_NEW or die "ERROR: Can't close file \"$variant_info\"\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   579
	unlink $variant_info;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   580
	rename($variant_info_new, $variant_info);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   581
	if ($Options{v}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   582
		print "Successful Variant Infor File Creation\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   583
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   584
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   585
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   586
# modified end: makefile improvement 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   587
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   588
my $CurAifRef;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   589
my $CurBaseObj;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   590
my $CurBld;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   591
my $CurBitMapRef;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   592
my @CurDepList;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   593
my $CurDoc;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   594
my $CurResrc;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   595
my $CurResourceRef;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   596
my $CurSrc;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   597
my $CurSrcPath;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   598
my $ResrcIsSys;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   599
# modified start: makefile improvement 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   600
my %CurSrcSet;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   601
# modified end: makefile improvement 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   602
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   603
# Set up library paths getting the backend module to help if it wants to
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   604
{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   605
	&InitLinkPaths();
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   606
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   607
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   608
{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   609
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   610
	# LOOPING SECTION
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   611
	#----------------
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   612
	# Load the output module
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   613
	eval { &Load_ModuleL('OUTPUT'); };
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   614
	die $@ if $@;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   615
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   616
 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   617
	# Believe include first on the system list. 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   618
    my $VariantFile=&main::VariantFile();
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   619
    if($VariantFile){
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   620
        my $VariantFilePath = Path_Split('Path',$VariantFile);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   621
        chop($VariantFilePath);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   622
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   623
        push(@SysIncPaths, $VariantFilePath);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   624
    }
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   625
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   626
	my $ResourceVariantFile=&main::ResourceVariantFile();
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   627
    if($ResourceVariantFile){
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   628
        my $ResourceVariantFilePath = Path_Split('Path',$ResourceVariantFile);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   629
        chop($ResourceVariantFilePath);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   630
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   631
        push(@ResourceSysIncPaths, $ResourceVariantFilePath);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   632
    }
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   633
    
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   634
    ## Add default system include info for TOOLS2
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   635
    if ($PlatArg eq 'TOOLS2') {    	
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   636
    	push @SysIncPaths , "$E32env::Data{EPOCPath}include\\tools\\stlport";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   637
    }
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   638
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   639
	# If the stdcpp keyword is used, or if the target type is STD* ...
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   640
	if ($StdCpp or $TrgType{Name} eq 'STDEXE' or $TrgType{Name} eq 'STDDLL' or $TrgType{Name} eq 'STDLIB') {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   641
		push @SysIncPaths, $E32env::Data{EPOCPath}."include\\stdapis";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   642
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   643
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   644
	&PMStartBldList($Plat{MakeCmd}) if defined &PMStartBldList;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   645
	my $LoopBld;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   646
	foreach $LoopBld (@{$Plat{Blds}}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   647
		$CurBld=$LoopBld;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   648
		&PMBld if defined &PMBld;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   649
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   650
	undef $CurBld;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   651
	undef $LoopBld;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   652
	&PMEndBldList if defined &PMEndBldList;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   653
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   654
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   655
	# Load the Dependency Generator
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   656
	eval { &Load_ModuleL('MAKDEPS'); };
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   657
	die $@ if $@;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   658
	eval { &Deps_InitL($E32env::Data{EPOCIncPath},@StdIncPaths); };
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   659
	die $@ if $@;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   660
	if ($Options{v}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   661
		&Deps_SetVerbose;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   662
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   663
	if ($Plat{UsrHdrsOnly}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   664
		&Deps_SetUserHdrsOnly;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   665
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   666
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   667
	if ($Options{nd} || ($ENV{SYMBIANBUILD_DEPENDENCYOFF} && ($ENV{SYMBIANBUILD_DEPENDENCYOFF}==1))) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   668
		&Deps_SetNoDependencies
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   669
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   670
	&Deps_SetNoDependencies if(grep /boostlibrary/i, &Mmp_UserIncPaths);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   671
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   672
	&Deps_SetUserIncPaths(@UserIncPaths);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   673
	&Deps_SetSysIncPaths(@ResourceSysIncPaths);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   674
	&Deps_SetPlatMacros(@{$Plat{Macros}});
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   675
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   676
	my $prefixFile;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   677
	$prefixFile = &PMPrefixFile if defined &PMPrefixFile;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   678
	&Deps_SetPrefixFile($prefixFile) if $prefixFile;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   679
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   680
#	Start source list - bitmaps, resources, .AIF files, documents, sources.
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   681
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   682
	# If feature variants are in use, dependency analysis may use a different overall variant file to that for "straight" source
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   683
	my $curDepOSVariantFile = &Deps_GetOSVariantFile();
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   684
	&Deps_SetOSVariantFile($ResourceVariantFile);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   685
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   686
	&PMStartSrcList if defined &PMStartSrcList;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   687
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   688
#	start bitmaps
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   689
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   690
	if ($Options{v}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   691
		print "Starting bitmaps\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   692
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   693
	my $LoopBitMapRef;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   694
	foreach $LoopBitMapRef (@BitMapStruct) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   695
		$CurBitMapRef=$LoopBitMapRef;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   696
		if ($Options{v}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   697
			print "BitMap: \"$$CurBitMapRef{Trg}\"\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   698
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   699
		&PMBitMapBld if defined &PMBitMapBld;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   700
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   701
	undef $CurBitMapRef;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   702
	undef $LoopBitMapRef;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   703
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   704
#	end bitmaps
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   705
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   706
#	start resources
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   707
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   708
	if ($Options{v}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   709
		print "Starting resources\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   710
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   711
	my $LoopResourceRef;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   712
	foreach $LoopResourceRef (@ResourceStruct) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   713
		$CurResourceRef=$LoopResourceRef;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   714
		if ($Options{v}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   715
			print "Resource: \"$$CurResourceRef{Trg}\"\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   716
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   717
		eval { @CurDepList=&Deps_GenDependsL($$CurResourceRef{Source}, ("LANGUAGE_$$CurResourceRef{Lang}")); };
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   718
		die $@ if $@;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   719
		&PMResrcBld if defined &PMResrcBld;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   720
		undef @CurDepList;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   721
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   722
	undef $CurResourceRef;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   723
	undef $LoopResourceRef;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   724
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   725
#	end resources
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   726
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   727
#	start aifs
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   728
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   729
	if ($Options{v}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   730
		print "Starting aifs\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   731
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   732
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   733
# Add tools-relative include path to sys includes, to allow for shared include\aiftool.rh
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   734
	use FindBin;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   735
	$FindBin::Bin =~ /:(.*)\//;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   736
	my $extraIncPath = $1;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   737
	$extraIncPath =~ s/\//\\/g;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   738
	my @SavedResourceSysIncPaths = @ResourceSysIncPaths;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   739
	push @ResourceSysIncPaths, "$extraIncPath\\INCLUDE";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   740
	&Deps_SetSysIncPaths(@ResourceSysIncPaths);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   741
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   742
	my $LoopAifRef;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   743
	foreach $LoopAifRef (@AifStruct) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   744
		$CurAifRef=$LoopAifRef;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   745
		if ($Options{v}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   746
			print "Aif: \"$$CurAifRef{Trg}\"\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   747
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   748
		eval { @CurDepList=&Deps_GenDependsL("$$CurAifRef{Source}"); };
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   749
		die $@ if $@;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   750
		&PMAifBld if defined &PMAifBld;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   751
		undef @CurDepList;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   752
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   753
	undef $CurAifRef;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   754
	undef $LoopAifRef;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   755
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   756
	@ResourceSysIncPaths = @SavedResourceSysIncPaths;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   757
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   758
#	end aifs
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   759
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   760
#	start sources
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   761
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   762
	if ($Options{v}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   763
		print "Starting sources\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   764
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   765
	
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   766
	my $SrcRef;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   767
	&Deps_SetOSVariantFile($curDepOSVariantFile);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   768
	&Deps_SetSysIncPaths(@SysIncPaths);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   769
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   770
	foreach $SrcRef (@SourceStruct){
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   771
		 $CurSrcPath=$$SrcRef{SrcPath};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   772
		 $CurSrc=$$SrcRef{CurFile};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   773
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   774
		 my @userIncludes = &Mmp_UserIncPaths;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   775
		 @userIncludes = (@userIncludes, @StringTableUserIncPaths) if (@StringTableUserIncPaths);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   776
		 unshift (@userIncludes, $CurSrcPath);		 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   777
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   778
		 if ($TruePlat{Ext} !~ /\.DSP|\.xml/i)
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   779
		 	{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   780
			foreach my $buildVariant (@{$Plat{Blds}})
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   781
				{		 		
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   782
				my @macros = &MacroList;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   783
				@macros = (@macros, @{$BldMacros{$buildVariant}});
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   784
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   785
				my $checkSourceCommandStore;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   786
			
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   787
				if ($buildVariant =~ /rel$/i)
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   788
					{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   789
					$checkSourceCommandStore = \%CheckSourceURELIncludes
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   790
					}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   791
				else
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   792
					{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   793
					$checkSourceCommandStore = \%CheckSourceUDEBIncludes
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   794
					}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   795
				CheckSource_Includes($CurSrcPath.$CurSrc, %$checkSourceCommandStore, $VariantFile, @macros, @userIncludes, @SysIncPaths);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   796
			}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   797
		 }
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   798
		 if ($Options{v}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   799
			print "Sourcepath: \"$CurSrcPath\"\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   800
		 }
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   801
		 &PMStartSrc if defined &PMStartSrc;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   802
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   803
#			strict depend alt 1 start - call different module function if strict depend flag specified
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   804
			if (((not $MmpFlag{StrictDepend}) || (not defined &PMSrcBldDepend)) && defined &PMSrcDepend) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   805
				eval { @CurDepList=&Deps_GenDependsL($CurSrcPath.$CurSrc);};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   806
				die $@ if $@;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   807
# modified start: makefile improvement 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   808
				foreach $srcFile (@CurDepList) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   809
					if(not exists($CurSrcSet{$srcFile})){
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   810
						my $srctmp = $srcFile;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   811
						$CurSrcSet{$srctmp} = 1;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   812
					}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   813
				}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   814
# modified end: makefile improvement 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   815
				&PMSrcDepend if defined &PMSrcDepend;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   816
				undef @CurDepList;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   817
			}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   818
							
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   819
#			strict depend alt 1 end
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   820
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   821
			my $LoopBld;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   822
			foreach $LoopBld (@{$Plat{Blds}}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   823
				$CurBld=$LoopBld;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   824
				&PMStartSrcBld if defined &PMStartSrcBld;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   825
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   826
#				strict depend alt 2 start - call the module function that deals with dependencies generated for each build variant
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   827
				if ($MmpFlag{StrictDepend} && defined &PMSrcBldDepend) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   828
					eval { @CurDepList=Deps_GenDependsL($CurSrcPath.$CurSrc,@{$BldMacros{$CurBld}}); };
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   829
					die $@ if $@;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   830
					&PMSrcBldDepend if defined &PMSrcBldDepend;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   831
					undef @CurDepList;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   832
				}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   833
#				strict depend alt 2 end
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   834
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   835
				&PMEndSrcBld if defined &PMEndSrcBld;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   836
			}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   837
			undef $CurBld;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   838
			undef $LoopBld;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   839
			&PMEndSrc if defined &PMEndSrc;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   840
# modified start: makefile improvement 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   841
			my $cursrcfile = $CurSrcPath.$CurSrc;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   842
			if(not exists($CurSrcSet{$cursrcfile})){
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   843
				$CurSrcSet{$cursrcfile} = 1;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   844
			}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   845
# modified end: makefile improvement 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   846
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   847
		undef $CurSrc;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   848
		undef $CurSrcPath;  
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   849
	
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   850
	
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   851
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   852
#	end sources
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   853
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   854
#	start documents
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   855
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   856
	if ($Options{v}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   857
		print "Starting documents\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   858
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   859
	my $LoopSrcPath;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   860
	foreach $LoopSrcPath (sort keys %DocHash) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   861
		$CurSrcPath=$LoopSrcPath;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   862
		if ($Options{v}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   863
			print "Sourcepath: \"$CurSrcPath\"\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   864
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   865
		my $LoopDoc;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   866
		foreach $LoopDoc (sort @{$DocHash{$CurSrcPath}}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   867
			$CurDoc=$LoopDoc;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   868
			if ($Options{v}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   869
				print "Document: \"$CurDoc\"\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   870
			}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   871
			&PMDoc if defined &PMDoc;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   872
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   873
		undef $CurDoc;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   874
		undef $LoopDoc;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   875
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   876
	undef $CurSrcPath;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   877
	undef $LoopSrcPath;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   878
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   879
#	end documents
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   880
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   881
#	rombuild
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   882
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   883
	my %SpecialRomFileTypes=(
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   884
		KEXT=>'extension[MAGIC]',
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   885
		LDD=>'device[MAGIC]',
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   886
		PDD=>'device[MAGIC]',
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   887
		VAR=>'variant[MAGIC]'
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   888
	);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   889
	my %KHash1 = (
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   890
		kext=>1,
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   891
		ldd=>1,
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   892
		pdd=>1,
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   893
		var=>1,
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   894
		kdll=>1
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   895
	);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   896
	my %KHash2 = (
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   897
		primary=>1,
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   898
		variant=>1,
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   899
		extension=>1,
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   900
		device=>1
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   901
	);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   902
	unless ($TrgType{Basic} =~ /^IMPLIB$/io or $TruePlat{Ext} =~ /\.DSP|\.xml/i) { # change to avoid rombuild target for IDE makefiles
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   903
		&Output("ROMFILE:\n");
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   904
		unless ($Plat{OS} ne 'EPOC32' or $TrgType{Basic} eq 'LIB') {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   905
			my $ref;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   906
			foreach $ref (@RomTargets) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   907
				my $ABIDir = '##MAIN##';
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   908
				my $RomFileType='file';
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   909
				if ($$ref{FileType}) {	# handle EKERN.EXE and EFILE.EXE with new ROMFILETYPE keyword instead
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   910
					$RomFileType=$$ref{FileType}; # or just do this bit as a custom build makefile
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   911
				}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   912
				elsif ($CallDllEntryPoints) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   913
					$RomFileType='dll';
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   914
				}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   915
				elsif ($SpecialRomFileTypes{$TrgType{Name}}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   916
					$RomFileType=$SpecialRomFileTypes{$TrgType{Name}};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   917
				}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   918
				my $RomPath="sys\\bin\\";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   919
				if ($$ref{Path}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   920
					$RomPath=$$ref{Path};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   921
				}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   922
				elsif ($TrgType{Path}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   923
					$RomPath=$TrgType{Path};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   924
					$RomPath=~s-z\\(.*)-$1-o;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   925
				}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   926
				my $RomFile=$LinkAsBase;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   927
				if ($$ref{File}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   928
					$RomFile=$$ref{File};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   929
				}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   930
				my $RomDecorations='';
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   931
				if ($DataLinkAddress) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   932
					$RomDecorations="reloc=$DataLinkAddress";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   933
				}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   934
				elsif ($FixedProcess) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   935
					$RomDecorations.='fixed';
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   936
				}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   937
				
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   938
				$ABIDir = '##KMAIN##' if ($KHash1{lc $TrgType{Name}});
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   939
				$ABIDir = '##KMAIN##' if ($KHash2{lc $RomFileType});
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   940
				my $IbyTextFrom="$RomFileType=$E32env::Data{RelPath}$ABIDir\\##BUILD##\\$Trg";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   941
				my $IbyTextTo="$RomPath$RomFile";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   942
				my $Spaces= 60>length($IbyTextFrom) ? 60-length($IbyTextFrom) : 1; 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   943
				&Output("\t\@echo ", $IbyTextFrom, ' 'x$Spaces, "$IbyTextTo $RomDecorations\n");
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   944
			}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   945
			foreach $ref (@RamTargets) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   946
				my $ABIDir = '##MAIN##';
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   947
				$ABIDir = '##KMAIN##' if ($KHash1{lc $TrgType{Name}});
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   948
				my $RomFileType='data';
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   949
				my $RomPath="sys\\bin\\";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   950
				if ($$ref{Path}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   951
					$RomPath=$$ref{Path};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   952
				}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   953
				my $RomFile=$Trg;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   954
				if ($$ref{File}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   955
					$RomFile=$$ref{File};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   956
				}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   957
				my $RomDecorations='attrib=r';
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   958
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   959
				my $IbyTextFrom="$RomFileType=$E32env::Data{RelPath}$ABIDir\\##BUILD##\\$Trg";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   960
				my $IbyTextTo="$RomPath$RomFile";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   961
				my $Spaces= 60>length($IbyTextFrom) ? 60-length($IbyTextFrom) : 1; 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   962
				&Output("\t\@echo ", $IbyTextFrom, ' 'x$Spaces, "$IbyTextTo $RomDecorations\n");
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   963
			}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   964
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   965
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   966
#	end rombuild
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   967
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   968
	&PMEndSrcList if defined &PMEndSrcList;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   969
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   970
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   971
{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   972
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   973
	# open the makefile and write all the text it requires to it if makmake has so far been successful
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   974
	#-------------------------------------------------------------------------------------------------
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   975
	eval { &Path_MakePathL($MAKEFILE); };
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   976
	die $@ if $@;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   977
	if ($Options{v}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   978
		print "Creating: \"$MAKEFILE\"\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   979
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   980
	open MAKEFILE,">$MAKEFILE" or die "ERROR: Can't open or create file \"$MAKEFILE\"\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   981
	print MAKEFILE &OutText or die "ERROR: Can't write output to file \"$MAKEFILE\"\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   982
	close MAKEFILE or die "ERROR: Can't close file \"$MAKEFILE\"\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   983
	if ($Options{v}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   984
		print "Successful MakeFile Creation\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   985
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   986
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   987
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   988
	
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   989
################ END OF MAIN PROGRAM SECTION #################
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   990
#------------------------------------------------------------#
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   991
##############################################################
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   992
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   993
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   994
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   995
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   996
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   997
# SUBROUTINE SECTION
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   998
####################
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
   999
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1000
sub FatalError (@) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1001
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1002
	print STDERR "MAKMAKE ERROR: @_\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1003
	exit 1;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1004
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1005
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1006
sub Usage () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1007
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1008
		eval { &Load_ModuleL('MAKHELP'); };
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1009
		die $@ if $@; 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1010
		eval { &Help_Invocation; };
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1011
		die $@ if $@;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1012
		exit;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1013
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1014
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1015
sub getEABIDef() {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1016
	# Preprocess the mmp with ARMv5 platform settings so we can pick up 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1017
    # EABI specific def file entries etc. 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1018
    my ($platname)="ARMV5";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1019
    
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1020
    # get platform info for armv5
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1021
    eval { &Plat_GetL($platname,\%Plat,\%BldMacros); };
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1022
	return $@ if $@;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1023
	&Mmp_Reset;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1024
	# process 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1025
    
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1026
    # set package to ignore warnings about missing .def file. 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1027
    &Mmp_SetIgnoreMissingDef;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1028
    
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1029
    eval { &Mmp_ProcessL($E32env::Data{EPOCPath}, $MMPFILE, \%Plat, $FeatureVariantInfo{BUILD_INCLUDES}); };
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1030
	return $@ if $@;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1031
	my %EABIDef=%{&Mmp_Def};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1032
	
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1033
    # handle case that def file doesn't exist -> Simply set to ""
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1034
    my $EABIDefFile = "$EABIDef{Path}$EABIDef{Base}$EABIDef{Ext}";;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1035
   	unless (-e "$EABIDefFile") {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1036
        $EABIDefFile = "";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1037
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1038
    
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1039
    return $EABIDefFile;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1040
	
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1041
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1042
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1043
sub SetVarsFromMmp ($) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1044
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1045
	my ($platname)=@_;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1046
    
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1047
	if($platname eq "GCCXML") {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1048
        $EABIDef = getEABIDef();
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1049
    } 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1050
    else {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1051
        $EABIDef = "";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1052
    }
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1053
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1054
	# MMP FILE PROCESSING - filter the mmp file content through the GCC preprecessor
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1055
	#-------------------------------------------------------------------------------
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1056
	eval { &Plat_GetL($platname,\%Plat,\%BldMacros); };
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1057
	return $@ if $@;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1058
	&Mmp_Reset;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1059
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1060
	if($platname eq "GCCXML" || $platname eq "X86GCC" || $platname eq "X86GMP") {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1061
	# set package to ignore warnings about missing .def file, this is necessary,
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1062
	# as either EABI .def or GCC .def may not exist, and this shouldn't be reported
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1063
	# as a warning or error. Similarly for x86gcc def files - these are autogenerated.
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1064
	&Mmp_SetIgnoreMissingDef;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1065
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1066
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1067
	eval { &Mmp_ProcessL($E32env::Data{EPOCPath}, $MMPFILE, \%Plat, $FeatureVariantInfo{BUILD_INCLUDES}); };
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1068
	return $@ if $@;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1069
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1070
	%WarningLevel=&Mmp_WarningLevel;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1071
	%LinkerOptions=&Mmp_LinkerOptions;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1072
	$ABI=&Mmp_ABI;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1073
	@AifStruct=@{&Mmp_AifStruct};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1074
	$AllowDllData=&Mmp_AllowDllData;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1075
	$CompressTarget=&Mmp_CompressTarget;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1076
	$CompressTargetMode=&Mmp_CompressTargetMode;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1077
	$ASSPExports=&Mmp_ASSPExports;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1078
	@ASSPLibList=&Mmp_ASSPLibList;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1079
	@BitMapStruct=@{&Mmp_BitMapStruct};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1080
	$BuildAsARM=$BuildAsARM || &Mmp_BuildAsARM;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1081
	$CallDllEntryPoints=&Mmp_CallDllEntryPoints;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1082
	$Capability=&Mmp_Capability;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1083
	@CapabilityFlags=&Mmp_CapabilityFlags;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1084
	$DataLinkAddress=&Mmp_DataLinkAddress;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1085
	@DebugLibList=@{&Mmp_DebugLibList};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1086
	%Def=%{&Mmp_Def};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1087
	%DocHash=%{&Mmp_DocHash};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1088
	$ExportUnfrozen=&Mmp_ExportUnfrozen;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1089
	$FirstLib=&Mmp_FirstLib;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1090
	$FixedProcess=&Mmp_FixedProcess;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1091
	%HeapSize=%{&Mmp_HeapSize};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1092
	@LibList=@{&Mmp_LibList};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1093
	$LinkAs=&Mmp_LinkAs;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1094
	$LinkAsBase=&Mmp_LinkAsBase;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1095
	$ExportLibrary=&Mmp_ExportLibrary;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1096
	$NewLib = &Mmp_NewLib;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1097
    $NoExportLibrary=&Mmp_NoExportLibrary;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1098
	%MmpFlag=%{&Mmp_MmpFlag};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1099
	@PlatTxt2D=&Mmp_PlatTxt2D;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1100
	$ProcessPriority=&Mmp_ProcessPriority;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1101
	@RamTargets=&Mmp_RamTargets;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1102
	@ResourceStruct=@{&Mmp_ResourceStruct};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1103
	@RomTargets=&Mmp_RomTargets;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1104
	$SmpSafe=&Mmp_SmpSafe;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1105
	@SourceStruct=@{&Mmp_SourceStruct};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1106
	$StackSize=&Mmp_StackSize;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1107
	@StatLibList=&Mmp_StatLibList;    
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1108
	$StdCpp = &Mmp_StdCpp;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1109
	$NoStdCpp = &Mmp_NoStdCpp;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1110
	@SysIncPaths=&Mmp_SysIncPaths;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1111
	$Trg=&Mmp_Trg;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1112
	%TrgType=%{&Mmp_TrgType};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1113
	@UidList=&Mmp_UidList;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1114
	@UserIncPaths=&Mmp_UserIncPaths;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1115
	$SrcDbg=&Mmp_SrcDbg;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1116
	%Version=&Mmp_Version;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1117
	$SecureId=&Mmp_SecureId;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1118
	$VendorId=&Mmp_VendorId;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1119
	%ReplaceOptions=&Mmp_Replace;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1120
	$ARMFPU=&Mmp_ARMFPU;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1121
	@StringTable=@{&Mmp_StringTable};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1122
	$CodePagingTargetMode=&Mmp_CodePagingTargetMode;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1123
	$DataPagingTargetMode=&Mmp_DataPagingTargetMode;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1124
	$IsWideCharMain=&Mmp_IsWideCharMain;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1125
	$IsDebuggable=&Mmp_IsDebuggable;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1126
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1127
#	finish defining any macros
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1128
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1129
	if ($Plat{CPU} eq 'MARM') {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1130
#		apply the ABI source define - note that it is difficult to define a corresponding
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1131
#		.MMP define since we can't be sure what the ABI is until we've processed the .MMP file,
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1132
#		though we could apply it for generic MARM builds only
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1133
		push @{$Plat{Macros}}, "__MARM_${ABI}__";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1134
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1135
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1136
	if ($TrgType{Basic}=~/^(DLL|EXE)$/o) { # this macro may soon be removed
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1137
		push @{$Plat{Macros}},'__'.$TrgType{Basic}.'__';
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1138
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1139
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1140
#	add the macros defined in the .mmp file
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1141
	push @{$Plat{Macros}}, &Mmp_Macros;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1142
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1143
# set up a hash containing the start paths for various things
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1144
	undef %Path;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1145
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1146
#	set up ASSP link path - this is the path where the target looks for ASSP-specific import libraries
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1147
        $Path{ASSPLink}="$E32env::Data{LinkPath}$Plat{ASSP}\\";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1148
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1149
#	set up build path
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1150
	my $BldInfPath=cwd;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1151
	$BldInfPath=~s-/-\\-go;						# separator from Perl 5.005_02+ is forward slash
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1152
	$BldInfPath=~s/^(.:)//o;					# remove drive letter
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1153
	$BldInfPath=~s-^(.*[^\\])$-$1\\-o;			# ensure workpath ends with a backslash
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1154
	$Path{BldInfPath} = $BldInfPath;			# Remember the path to bldinf
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1155
	$Path{Bld}=join('', &Path_Chop($E32env::Data{BldPath}), $BldInfPath, &Path_Split('Base',$MMPFILE), "\\$Plat{Real}\\");
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1156
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1157
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1158
sub generateX86GCCDefFile()
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1159
{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1160
	my ($oldPath, $newPath) = @_;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1161
	print "Generating X86GCC deffile from $oldPath\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1162
	if (!open(OLDDEF, $oldPath))
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1163
	{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1164
		print "Warning: Failed to open $oldPath for reading\n".
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1165
		return;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1166
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1167
	# Force creation of new def file even if one already exists
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1168
	if (!open(NEWDEF, ">$newPath"))
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1169
	{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1170
		close OLDDEF;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1171
		print "Warning: Failed to open $newPath for writing\n".
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1172
		return;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1173
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1174
	while (<OLDDEF>)
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1175
	{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1176
		chomp;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1177
		if (/^\s*_ZT(I|V)/ && !/\sABSENT/i)
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1178
	    {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1179
		# Typeinfo that isn't already absent. Add the ABSENT keyword.
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1180
		    my @frags = split /;/, $_, 2; # 1 or 2 parts depending on the presence of a comment
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1181
		    $frags[0] =~ s/\s*$/ ABSENT /;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1182
		    $_ = join ';', @frags;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1183
	    }
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1184
	    else
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1185
	    {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1186
		# Try to substitute any va_list params with char* (Pc). Ignore if no match
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1187
		s/St9__va_list/Pc/g;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1188
	    }
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1189
		print NEWDEF "$_\n";	    
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1190
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1191
	close OLDDEF;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1192
	close NEWDEF;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1193
	print "Successfully generated $newPath\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1194
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1195
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1196
sub InitLinkPaths() {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1197
#	set up lib path - this is the path where the target puts it's import library
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1198
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1199
	my $ABI=&Mmp_ABI;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1200
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1201
#	let the build target determine where it puts its import libray and where its links against its imports
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1202
	my $UnderlyingABI=$ABI;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1203
	$UnderlyingABI=&PMUnderlyingABI($ABI) if defined &PMUnderlyingABI;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1204
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1205
	$Path{Lib}="$E32env::Data{LinkPath}";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1206
	unless ($ASSPExports) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1207
		$Path{Lib}.= lc($UnderlyingABI)."\\";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1208
	} 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1209
	else {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1210
		$Path{Lib}.= lc($Plat{ASSP})."\\";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1211
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1212
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1213
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1214
#	set up link path - this is the place where the target looks for ordinary libraries
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1215
	$Path{Link}="$E32env::Data{LinkPath}"."$UnderlyingABI\\";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1216
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1217
#	set up stat link path - this is where the target looks for static libraries
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1218
	$Path{StatLink}="$E32env::Data{LinkPath}";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1219
	if ($Plat{StatLink}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1220
			$Path{StatLink}.=lc($Plat{StatLink})."\\";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1221
	} else {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1222
		unless ($Plat{OS} eq 'WINS') {	# WINC and WINS versions of EEXE are different
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1223
			$Path{StatLink}.=lc($ABI)."\\"; # ARM static libraries are currently always ASSP-independent
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1224
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1225
		else {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1226
			$Path{StatLink}.=lc($Plat{ASSP})."\\"; # WINC static libraries are currently always ASSP-specific
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1227
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1228
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1229
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1230
#	set up release path
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1231
	$Path{Rel}="$E32env::Data{RelPath}".lc($Plat{Real})."\\";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1232
	
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1233
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1234
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1235
sub CreateExtraFile ($$) { # takes abs path for source and text
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1236
# allows modules to create extrafiles
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1237
	my ($FILE,$Text)=@_;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1238
	if ($Options{makemakefile}) {	# only create if making the makefile
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1239
		if ($Options{v}) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1240
			print "Creating \"$FILE\"\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1241
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1242
		eval { &Path_MakePathL($FILE); };
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1243
		die $@ if $@;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1244
		open FILE, ">$FILE" or die "WARNING: Can't open or create \"$FILE\"\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1245
		print  FILE $Text or die "WARNING: Can't write text to \"$FILE\"\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1246
		close FILE or die "WARNING: Can't close \"$FILE\"\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1247
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1248
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1249
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1250
sub ABI () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1251
	$ABI;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1252
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1253
sub AddSrc ($$) { # needs abs path for source
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1254
# allows modules to add a source file to the project and have it created if necessary
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1255
	my ($SRCFILE,$Text)=@_;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1256
	my $SrcPath=&Path_Split('Path',$SRCFILE);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1257
	my $CurFile=&Path_Split('File',$SRCFILE);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1258
	my $BaseName=&Path_Split('Base',$SRCFILE);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1259
	
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1260
	if ((not -e $SRCFILE) || (-M $SRCFILE > -M $MMPFILE)) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1261
		# only create the file if it's older than the .MMP file
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1262
		CreateExtraFile($SRCFILE,$Text);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1263
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1264
	 my %CurSource;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1265
	 $CurSource{SrcPath}=$SrcPath;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1266
	 $CurSource{CurFile}=$CurFile;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1267
	 $CurSource{BaseTrg}=$BaseName;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1268
	 push @SourceStruct, \%CurSource;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1269
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1270
sub AddPlatMacros (@) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1271
# allows modules to add extra macros to the platform macro list
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1272
	push @{$Plat{Macros}},@_;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1273
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1274
sub AifRef () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1275
	$CurAifRef;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1276
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1277
sub AifStructRef () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1278
	\@AifStruct;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1279
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1280
sub AllowDllData () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1281
	$AllowDllData;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1282
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1283
sub CompressTarget () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1284
	$CompressTarget;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1285
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1286
sub CompressTargetMode () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1287
	$CompressTargetMode;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1288
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1289
sub BuildAsARM () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1290
	return 0 if $Options{ithumb};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1291
	return 1 if $Options{iarm};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1292
	$BuildAsARM;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1293
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1294
sub ASSPLibList () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1295
	@ASSPLibList;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1296
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1297
sub ASSPLinkPath () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1298
#	this is the path where the target looks for ASSP-specific import libraries
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1299
	my $Path=$Path{ASSPLink};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1300
	if ($CurBld) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1301
		if ($Plat{OS} eq 'EPOC32') {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1302
			$Path.="UREL\\";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1303
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1304
		else {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1305
			$Path.="UDEB\\";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1306
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1307
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1308
	$Path;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1309
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1310
sub BaseMak () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1311
	&Path_Split('Base',$MAKEFILE);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1312
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1313
sub BaseResrc () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1314
	&Path_Split('Base',$CurResrc);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1315
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1316
sub BaseResrcList () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1317
	my @ResrcList=&ResrcList;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1318
	my $Path;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1319
	foreach $Path (@ResrcList) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1320
		$Path=&Path_Split('Base',$Path);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1321
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1322
	@ResrcList;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1323
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1324
sub BaseSrc () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1325
	&Path_Split('Base',$CurSrc);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1326
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1327
sub ExtSrc () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1328
	&Path_Split('Ext',$CurSrc);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1329
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1330
sub BaseSrcList () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1331
	my @SrcList=&SrcList;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1332
	my $Path;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1333
	foreach $Path (@SrcList) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1334
		$Path=&Path_Split('Base',$Path);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1335
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1336
	@SrcList;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1337
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1338
sub BaseSysResrcList () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1339
	my @SysResrcList=&SysResrcList;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1340
	my $Path;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1341
	foreach $Path (@SysResrcList) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1342
		$Path=&Path_Split('Base',$Path);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1343
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1344
	@SysResrcList;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1345
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1346
sub BaseTrg () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1347
	&Path_Split('Base',$Trg);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1348
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1349
sub BitMapRef () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1350
	$CurBitMapRef;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1351
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1352
sub BitMapStructRef () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1353
	\@BitMapStruct;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1354
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1355
sub Bld () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1356
	$CurBld;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1357
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1358
sub BldList () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1359
	@{$Plat{Blds}};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1360
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1361
sub BldPath () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1362
	my $Path=$Path{"Bld"};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1363
	if ($CurBld) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1364
		$Path.=$FeatureVariantInfo{$CurBld."_LABEL"}."\\" if (%FeatureVariantInfo && !$FeatureVariantInfo{INVARIANT} && $FeatureVariantInfo{$CurBld."_LABEL"});
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1365
		$Path.="$CurBld\\";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1366
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1367
	$Path;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1368
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1369
sub CallDllEntryPoints () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1370
	$CallDllEntryPoints;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1371
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1372
sub Capability () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1373
	$Capability;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1374
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1375
sub CapabilityFlags () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1376
	@CapabilityFlags;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1377
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1378
sub DataLinkAddress () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1379
	$DataLinkAddress;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1380
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1381
sub DataPath () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1382
	$E32env::Data{DataPath};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1383
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1384
sub DebugLibList () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1385
	@DebugLibList;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1386
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1387
sub DefFile () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1388
	"$Def{Path}$Def{Base}$Def{Ext}";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1389
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1390
sub DefFileType () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1391
	$Plat{DefFile};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1392
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1393
sub DepList () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1394
	sort @CurDepList;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1395
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1396
sub Doc () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1397
	$CurDoc;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1398
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1399
sub DocList () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1400
	if ($CurSrcPath) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1401
		return sort @{$DocHash{$CurSrcPath}};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1402
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1403
	my @DocList;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1404
	my $Key;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1405
	foreach $Key (keys %DocHash) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1406
		push @DocList,@{$DocHash{$Key}};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1407
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1408
	sort @DocList;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1409
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1410
sub EPOCPath () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1411
	$E32env::Data{EPOCPath};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1412
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1413
sub EPOCDataPath () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1414
	$E32env::Data{EPOCDataPath};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1415
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1416
sub EPOCIncPath () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1417
	$E32env::Data{EPOCIncPath};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1418
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1419
sub EPOCRelPath () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1420
	$E32env::Data{RelPath};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1421
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1422
sub EPOCSecurePlatform () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1423
	$E32env::Data{SecurePlatform};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1424
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1425
sub EPOCToolsPath () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1426
	$E32env::Data{EPOCToolsPath};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1427
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1428
sub Exports () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1429
	@{$TrgType{Exports}{$Plat{"DefFile"}}};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1430
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1431
sub ExportUnfrozen () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1432
	$ExportUnfrozen;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1433
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1434
sub FirstLib () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1435
	$FirstLib;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1436
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1437
sub FixedProcess () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1438
	$FixedProcess;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1439
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1440
sub BasicTrgType () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1441
	$TrgType{Basic};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1442
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1443
sub HeapSize () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1444
	%HeapSize;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1445
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1446
sub LibList () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1447
	@LibList;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1448
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1449
sub LibPath () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1450
#	this is the path where the target puts it's import library
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1451
	my $Path=$Path{Lib};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1452
	if ($CurBld) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1453
		if (($Plat{DefFile} eq 'EABI') || ($Plat{DefFile} eq 'x86gcc') || ($Plat{OS} eq 'TOOLS2')) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1454
			$Path.="lib\\";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1455
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1456
		elsif ($Plat{OS} eq 'EPOC32') {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1457
			$Path.="urel\\";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1458
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1459
		else {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1460
			$Path.="udeb\\";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1461
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1462
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1463
	$Path;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1464
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1465
sub LinkAs () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1466
	$LinkAs;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1467
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1468
sub LinkAsBase () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1469
	$LinkAsBase;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1470
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1471
sub ExportLibrary () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1472
	$ExportLibrary;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1473
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1474
sub NoExportLibrary () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1475
	$NoExportLibrary;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1476
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1477
sub LinkPath () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1478
#	this is the place where the target looks for CPU-specific libraries
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1479
	my $Path=$Path{Link};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1480
	if ($CurBld) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1481
		if ($Plat{DefFile} eq 'EABI' || $Plat{DefFile} eq 'x86gcc') {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1482
			$Path.="LIB\\";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1483
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1484
		elsif ($Plat{OS} eq 'EPOC32') {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1485
			$Path.="UREL\\";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1486
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1487
		else {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1488
			$Path.="UDEB\\";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1489
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1490
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1491
	$Path;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1492
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1493
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1494
sub MacroList ($) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1495
	if ($_[0]) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1496
	return @{$BldMacros{$_[0]}};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1497
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1498
	return @{$Plat{Macros}} unless $CurBld;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1499
	(@{$Plat{Macros}},@{$BldMacros{$CurBld}});
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1500
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1501
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1502
# returns the file containing Variant specific Macros
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1503
sub VariantFile($)
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1504
{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1505
    return $variantMacroHRHFile;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1506
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1507
# returns the file containing Variant specific Macros, which may differ from the above if feature variants are used
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1508
sub ResourceVariantFile($)
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1509
{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1510
    return $ResourceVariantMacroHRHFile;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1511
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1512
sub MakeFilePath () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1513
	&Path_Split('Path',$MAKEFILE);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1514
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1515
sub MmpFile () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1516
	$MMPFILE;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1517
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1518
sub PerlLibPath () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1519
	$PerlLibPath;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1520
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1521
sub Plat () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1522
	$Plat{Real};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1523
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1524
sub PlatABI () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1525
	$Plat{"ABI"};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1526
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1527
sub PlatCompiler () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1528
	$Plat{"Compiler"};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1529
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1530
sub PlatName () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1531
	$Plat{Name};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1532
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1533
sub PlatOS () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1534
	$Plat{OS};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1535
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1536
sub PlatOverrideList () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1537
	@PlatOverrideList;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1538
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1539
sub ProcessPriority () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1540
	$ProcessPriority;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1541
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1542
sub RelPath () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1543
	my $Path=$Path{Rel};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1544
	if ($CurBld) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1545
		$Path .= lc($CurBld)."\\";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1546
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1547
	$Path;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1548
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1549
sub ResourceRef () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1550
	$CurResourceRef;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1551
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1552
sub ResourceStructRef () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1553
	\@ResourceStruct;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1554
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1555
sub SetCurBld($) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1556
	$CurBld=$_[0];		# used by ide_cw.pm when handling additional platforms
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1557
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1558
sub	SetStdIncPaths (@) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1559
# allows module to set standard include paths
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1560
	@StdIncPaths=();
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1561
	my $Path;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1562
	foreach $Path (@_) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1563
		$Path=~s-^(.*[^\\])$-$1\\-o if defined($Path);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1564
		push @StdIncPaths, $Path;	# only place drive letters may appear, up to modules to handle
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1565
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1566
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1567
sub Src () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1568
	$CurSrc;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1569
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1570
sub SourceStructRef () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1571
	\@SourceStruct;		#array of references to hashes of SOURCEPATH => (filename1, filename2, ...)
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1572
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1573
sub SrcList () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1574
	my @SrcList;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1575
    my $KeyRef;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1576
    foreach $KeyRef (@SourceStruct) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1577
            push @SrcList,$$KeyRef{CurFile};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1578
           } 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1579
	 @SrcList;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1580
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1581
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1582
sub SmpSafe () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1583
	$SmpSafe;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1584
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1585
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1586
sub StackSize () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1587
	$StackSize;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1588
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1589
sub StatLibList () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1590
	@StatLibList;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1591
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1592
sub StatLinkPath () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1593
	my $Path=$Path{StatLink};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1594
	if ($CurBld) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1595
		$Path.="$CurBld\\";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1596
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1597
	$Path;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1598
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1599
sub StdCpp () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1600
	$StdCpp;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1601
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1602
sub NoStdCpp () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1603
	$NoStdCpp;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1604
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1605
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1606
sub NewLib () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1607
	$NewLib;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1608
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1609
sub SetStatLinkPath($) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1610
	($Path{StatLink}) = @_;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1611
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1612
sub SrcPath () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1613
	$CurSrcPath;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1614
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1615
sub SysIncPaths () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1616
	@SysIncPaths;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1617
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1618
sub ResourceSysIncPaths () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1619
	return @ResourceSysIncPaths;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1620
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1621
sub Trg (;$) {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1622
	# The optional $bld argument permits (U)DEB and (U)REL distinction in situations where $CurBld isn't set/relevant
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1623
	my ($bld) = @_;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1624
	$bld = $CurBld if (!$bld);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1625
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1626
	return "" if !$Trg;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1627
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1628
	my $localTrg = $Trg;	
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1629
	my $vinfo = $FeatureVariantInfo{$bld."_LABEL"};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1630
	$localTrg =~ s/(\.[^\.]+)$/\.$vinfo$1/ if ($bld && %FeatureVariantInfo && !$FeatureVariantInfo{INVARIANT} && $vinfo);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1631
	return $localTrg;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1632
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1633
sub TrgPath () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1634
	$TrgType{Path};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1635
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1636
sub TrgType () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1637
	$TrgType{Name};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1638
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1639
# this can probably go as its always 0 now
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1640
sub KernelTrg () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1641
	$TrgType{Kernel};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1642
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1643
sub SystemTrg () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1644
	$TrgType{System};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1645
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1646
sub UidList () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1647
	@UidList;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1648
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1649
sub UserIncPaths () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1650
	@UserIncPaths;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1651
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1652
sub SrcDbg () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1653
	$SrcDbg;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1654
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1655
sub CompilerOption
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1656
{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1657
	my $CompOption=$WarningLevel{$_[0]};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1658
	$CompOption="" if (!defined($CompOption)); 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1659
	$CompOption;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1660
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1661
sub LinkerOption
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1662
{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1663
    my $lnkOption = $LinkerOptions{$_[0]};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1664
    $lnkOption="" if (!defined($lnkOption));
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1665
    $lnkOption;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1666
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1667
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1668
sub PlatRec () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1669
	%Plat;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1670
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1671
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1672
sub Version() {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1673
	%Version;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1674
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1675
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1676
sub SecureId() {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1677
	$SecureId;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1678
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1679
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1680
sub VendorId () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1681
	$VendorId;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1682
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1683
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1684
sub EABIDef () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1685
	$EABIDef;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1686
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1687
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1688
sub ReplaceOptions () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1689
	my @ReplacementOptions = ();
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1690
	if (defined($ReplaceOptions{$_[0]}))
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1691
	{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1692
		@ReplacementOptions=@{$ReplaceOptions{$_[0]}};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1693
	}	
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1694
	@ReplacementOptions;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1695
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1696
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1697
sub ARMFPU () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1698
	$ARMFPU;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1699
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1700
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1701
sub IsDebuggable () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1702
	$IsDebuggable;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1703
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1704
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1705
sub PlatTxt2D () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1706
	@PlatTxt2D;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1707
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1708
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1709
sub ToolChain () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1710
	my $ToolChain = $TruePlat{Toolchain};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1711
	$ToolChain ="" if(!defined ($TruePlat{Toolchain}) );
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1712
	$ToolChain;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1713
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1714
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1715
sub StringTables () 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1716
{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1717
	@StringTable;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1718
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1719
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1720
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1721
#This generates and adds the generated source of the stringtable to the source list so it's included in the binary.
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1722
sub AddStringTables ()
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1723
{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1724
	if(@StringTable)
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1725
	{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1726
		foreach my $stringtable (@StringTable)
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1727
		{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1728
			my %genSrcHash;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1729
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1730
			$genSrcHash{SrcPath} = $Path{Bld};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1731
			$genSrcHash{CurFile} = $stringtable->{BaseTrg}.".cpp";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1732
			$genSrcHash{BaseTrg} = $stringtable->{BaseTrg};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1733
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1734
			push(@SourceStruct, \%genSrcHash) if !$stringtable->{Hdronly};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1735
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1736
			# Execute it now.  This can probably be moved into the makefile by adding a suitable rule
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1737
			# to ensure the resource file is generated before the source tries to #include it.
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1738
			my $stPath = $Path{Bld};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1739
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1740
			my $stCpp = $stringtable->{BaseTrg}.".cpp";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1741
			my $stHeader = lc($stringtable->{BaseTrg}).".h";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1742
			my $stFile = $stringtable->{STFile};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1743
			my $stOrigin = $stringtable->{STPath};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1744
			system("perl -S ecopyfile.pl $stOrigin$stFile $stPath$stFile");
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1745
			system("perl -S stringtable.pl $stPath$stFile");
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1746
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1747
			#If it's an exported header we'll need to export it.
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1748
			if(defined $stringtable->{ExportPath}) 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1749
			{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1750
				my $exportpath = $stringtable->{ExportPath};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1751
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1752
				system("perl -S ecopyfile.pl $stPath$stHeader $exportpath\\$stHeader");
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1753
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1754
				push(@UserIncPaths, $exportpath);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1755
				push(@StringTableUserIncPaths, $exportpath);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1756
			}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1757
			#otherwise we just need the path of the generated header to be added 'userinclude'.
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1758
			else 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1759
			{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1760
				push(@UserIncPaths, $Path{Bld});
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1761
				push(@StringTableUserIncPaths, $Path{Bld});
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1762
			}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1763
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1764
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1765
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1766
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1767
sub CheckSourceMMPMetaData () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1768
	%CheckSourceMMPMetaData;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1769
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1770
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1771
sub CheckSourceMMPIncludes () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1772
	%CheckSourceMMPIncludes;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1773
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1774
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1775
sub CheckSourceURELIncludes () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1776
	%CheckSourceURELIncludes;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1777
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1778
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1779
sub CheckSourceUDEBIncludes () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1780
	%CheckSourceUDEBIncludes;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1781
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1782
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1783
sub CodePagingTargetMode() {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1784
	$CodePagingTargetMode;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1785
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1786
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1787
sub DataPagingTargetMode() {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1788
	$DataPagingTargetMode;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1789
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1790
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1791
sub DebugSwitchUsed () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1792
	return 1 if (defined $DebugSwitch);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1793
	return 0;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1794
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1795
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1796
sub SymbolicDebugEnabled () {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1797
	return $DebugSwitch;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1798
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1799
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1800
sub IsFunctionCallLogging() {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1801
	$Options{logfc};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1802
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1803
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1804
sub IsWideCharMain() {
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1805
	return $IsWideCharMain;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1806
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1807
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1808
sub MmpMacros(){
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1809
	my @mmpMacros=&Mmp_Macros;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1810
	return @mmpMacros;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1811
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1812
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1813
sub FeatureVariantInfo()
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1814
	{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1815
	return %FeatureVariantInfo;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1816
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1817
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1818
sub FeatureVariantVMapFile()
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1819
	{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1820
	return "" if !%FeatureVariantInfo || defined $FeatureVariantInfo{INVARIANT};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1821
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1822
	my $target = RelPath().Trg();
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1823
	$target =~ s/\.$FeatureVariantInfo{$CurBld."_LABEL"}//;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1824
# modified by SV start: makefile improvement 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1825
	my $vmap = $target. "." . $FeatureVariantInfo{NAME}.".vmap";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1826
# modified by SV end: makefile improvement 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1827
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1828
	eval { &Path_MakePathL($vmap); };	
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1829
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1830
	if (featurevariantmap->Save($target, $FeatureVariantInfo{$CurBld."_LABEL"}, $FeatureVariantInfo{NAME}, $FeatureVariantInfo{$CurBld."_FEATURES"}, &Mmp_IsFeatureVariant ? [ 'FEATUREVARIANT' ] : undef))
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1831
		{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1832
		die "ERROR: Couldn't create feature variant map file \"$vmap\".\n";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1833
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1834
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1835
	return $vmap;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1836
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1837
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1838
sub FeatureVariantBaseTrg()
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1839
	{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1840
	# In some situations, for example .sym files, we need a feature variant tagged name
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1841
	# based on the normal BaseTrg i.e. root target name but minus extension.
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1842
	my $localBaseTrg = BaseTrg();
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1843
		
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1844
	if (%FeatureVariantInfo && !defined $FeatureVariantInfo{INVARIANT})
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1845
		{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1846
		$localBaseTrg .= ".".$FeatureVariantInfo{$CurBld."_LABEL"};
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1847
		}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1848
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1849
	return $localBaseTrg;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1850
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1851
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1852
sub CommandFile()
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1853
	{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1854
	my $plat = Plat();	
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1855
	$plat .= ".$FeatureVariantInfo{NAME}" if %FeatureVariantInfo;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1856
	return MakeFilePath().BaseTrg().".$plat.".Bld().".objects.via";
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1857
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1858
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1859
#Compiler wrapper option support
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1860
sub CompilerWrapperOption()
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1861
{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1862
  # Return 1 if compiler wrapper option option(-wrap) is specified else return 0	
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1863
  $IsCompilerWrapperOption;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1864
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1865
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1866
#Proxy wrapper option support
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1867
sub ProxyWrapperOption()
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1868
{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1869
  # Return 1 if compiler wrapper option option(-wrap) is specified else return 0	
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1870
  $IsProxyWrapperOption;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1871
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1872
# modified start: makefile improvement 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1873
sub getSrcSet()
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1874
{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1875
	return \%CurSrcSet;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1876
}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1877
# modified end: makefile improvement 
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1878
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1879
#1 = STDCPP support is available
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1880
#others = STDCPP support is not available
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1881
my $stdcppsupport;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1882
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1883
#STDCPP support check (SYMBIAN_OE_LIBSTDCPP)
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1884
#return non-zero means STDCPP support is available,
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1885
#otherwise it's not available
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1886
sub StdCppSupport()
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1887
{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1888
	return $stdcppsupport if (defined $stdcppsupport);
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1889
	
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1890
	my @hrhMacros = &Variant_GetMacroList;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1891
	if (grep /^\s*SYMBIAN_OE_LIBSTDCPP\s*$/, @hrhMacros)
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1892
	{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1893
		$stdcppsupport = 1;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1894
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1895
	else
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1896
	{
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1897
	    $stdcppsupport = 0;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1898
	}
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1899
	
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1900
	return $stdcppsupport;
68f68128601f 1) Add the sbsv1 components from sftools/dev/build to make the linux_build package independent of the obsolete buildtools package.
Mike Kinghan <mikek@symbian.org>
parents:
diff changeset
  1901
}