sbsv1/abld/doc/gt0063.changes
author Richard Taylor <richard.i.taylor@nokia.com>
Thu, 12 Aug 2010 09:00:16 +0100
changeset 625 a1925fb7753a
parent 599 fa7a3cc6effd
permissions -rw-r--r--
sbs version 2.15.0
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
599
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
     1
GT 0063 Emulation Enhancements
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
     2
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
     3
1. EPOCROOT check in E32env.PM
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
     4
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
     5
Changed from static data to an active BEGIN{} section which tests the EPOCROOT
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
     6
environment variable and constructs the rest of the E32env::Data hash accordingly.
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
     7
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
     8
EPOCROOT checking is:
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
     9
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    10
 - environment variable must exist
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    11
 - EPOCROOT must begin with \
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    12
 - EPOCROOT must specify an existing directory
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    13
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    14
Most clients are expected to use $E32Env::Data{EPOCPath} as the raw "epoc32" directory.
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    15
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    16
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    17
2. Path_MakeEAbs in PATHUTL.PM
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    18
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    19
Variant of Path_MakeAbs.
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    20
Path_MakeEAbs takes (EPOCPath, BasePath, ...) and makes the list of directories into 
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    21
absolute paths relative to BasePath. The extra functionality is that paths beginning
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    22
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    23
	+\...
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    24
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    25
are treated as paths relative to EPOCPath rather than BasePath. 
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    26
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    27
As a regression change, this change also extends to paths which begin \epoc32\, which 
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    28
copes with the large number of existing absolute \epoc32 paths (e.g. SYSTEMINCLUDE 
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    29
statements in MMP files). 
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    30
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    31
Path_MakeEAbs is used in MMP.PM to handle SYSTEMINCLUDE, DEFFILE and USERINCLUDE
fa7a3cc6effd Add sbsv1 to new structure
jjkang
parents:
diff changeset
    32
statements, and in BLDMAKE.PL to handle PRJ_EXPORTS and PRJ_TESTEXPORTS.