
<unchange>
================
(Made by Zheng Shen 12/06/2010)
1) minor: enable the following scripts on Linux
conv_khronos_openvg_hdr_to_cpp.pl
conv_khronos_hdr_to_cpp.pl
copyfeaturevariants.pl
ecopyfile.pl
armasm2as.pl 

===============
sym_lkup_util 	version 1.1.0
listzip 	version 1.1.0
prepdef 	version 1.1.1
omapsig 	version 1.1.0
makedef 	version 1.1.1
h2inc 		version 1.1.0
gendef 		version 1.1.0
createrfifile 	version 1.1.0
efreeze 	version 1.1.1
================
(Made by Marvin Shi 02/06/2010)
1) change for linux porting

=======
Version 1.1.0 (efreeze.pl)
Version 1.1.0 (prepdef.pl)
Version 1.1.0 (makedef.pl)
================
(Made by Lorence Wang 14/05/2010)
1) Lorence Wang
  Make efreeze.pl prepdef.pl makedef.pl sym_lkup_util.pl stand alone

Version 0.01.679
================
(Made by Zheng Shen 11/02/2009)
1) Marvin Shi
	PDEF144284  refine fix for Bug 151 -  bldmake is not in PDK2.0c
2) Ross Qin
  PDEF144387  Tools meta files should not be exported in the build phase 

Version 0.01.678
================
(Made by Zheng Shen 8/02/2009)
1) Brook Hong
	PDEF144276  Excess warnings from makedef.pl 
2) Marvin Shi
  PDEF144257  Add libWFC and WF to case check exclusions 

Version 0.01.676
================
(Made by Marvin Shi 3/02/2010)
1) Marvin Shi
	PDEF144099 Missing vmap files when using symbian binary variantion 

Version 0.01.675
================
(Made by Marvin Shi 18/01/2010)
1) Marvin Shi
	DEF143085  Bug 151 - bldmake is not in PDK2.0c 

Version 0.01.674
================
(Made by Zheng Shen 16/12/2009)
1) Marvin Shi
	DEF143406  symbian BV build failed for feature variant target build 

Version 0.01.673
================
(Made by Marvin Shi 25/11/2009)
1) Yan Jin
	DEF143140  Toolsmod integrate to ABLD
2) Zheng Shen
	DEF143198  ABLD cannot build STD project when standard C++ support is not available 
	
Version 0.01.672
================
(Made by Marvin Shi 13/11/2009)
1) Zheng Shen
  DEF143038 ABLD is in poor performance on feature variant handling
2) Marvin Shi
  DEF142311  SBSv1 hangs when building for GCCE if RVCT license server not available 
 	
Version 0.01.671
================
(Made by Vino Jose 24/09/2009)

1) VincentF
	DEF142155 h2inc.pl produces wrong output with 64-bit Perl

Version 0.01.670
================
(Made by Ross Qin, 15/09/2009)
1) Yan Jin
	PDEF142025 ABLD LIBRARY ARMV6 does not get exported correct to ARMV6 folder 

Version 0.01.669
================
(Made by Ross Qin, 11/09/2009)
1) Zheng Shen
	DEF142005 Remove the hardcode RVCT path when RVCT auto switch feature is disabled

Version 0.01.668
================
(Made by Zhi Dou, 24/08/2009)
1) Marvin Shi
	DEF141643 boost library integration causes dependency warning

Version 0.01.667
================
(Made by Zhi Dou, 13/07/2009)
1) Marvin Shi
	PDEF138235 [StrayScanner]GCCXML build macros out-of-date 

Version 0.01.666
================
(Made by JohnS, 24/02/2009)
1) MichaelMoate
	DEF135478 tools_e32toolp.mrp is missing entries for naviengine extension makefiles

Version 0.01.665
================
(Made by SivashankarN, 14/11/2008)
1) Dan Handley
	DEF128540 Building for the x86gcc platform by default!

Version 0.01.664
================
(Made by Kun Xu, 17/06/2008)
1) Kun Xu
	PDEF122710 Problems in cl_bpabi.pm impacting Java builds.
	PDEF123589 ARMV6 BSF handled incorrectly in tools.

Version 0.01.663
================
(Made by ParameshwariB, 23/05/2008)
1) TomCosgrove
	DEF123134: X86 GCC only: Don't delete the PE-COFF files; they are needed by GDB

Version 0.01.662
================
(Made by William Roberts, 22/04/2008)
1) William Roberts
	Move make.exe and scpp.exe into e32toolp\binutils directory, and
	add zip files of the matching source code, comply with the GPL license
	Adjust setupprj.bat and bld.inf accordingly.

Version 0.01.662
================
(Made by Iain Williamson, 08/04/2008)
1) Iain Williamson
	GT0367 MS3.2.1 DS781 PREQ1902: Product Creation Tools: Kit Information File

Version 0.01.661
================
(Made by Jon Chatten, 06/02/2008)
1) Jon Chatten
	DEF117441: SBSv2 - e32toolp should support .rfi generation for GCCXML builds

Version 0.01.660
================
(Made by Jon Chatten, 17/01/2008)
1) Jon Chatten
	DEF116424: ABLD should ignore the DEPENDS keyword in .mmp file START RESOURCE blocks

Version 0.01.659
================
(Made by Peter Harper, 20/12/2007)
1) Peter Harper
	CR1234: Product Usability: Fix Symbian's Binary Variation Solution
	Needs new verion of GCC CPP (Symbian build 548)

Version 0.01.658
================
(Made by Jon Coppeard, 15/11/2007)
1) Jon Coppeard
	DEF114126: maksym can be speeded up

Version 0.01.657
================
(Made by Mool Chand Tyagi, 12/10/2007)
1) Mool Chand Tyagi
	PREQ1338: Supporting Static analysis tool in ABLD

Version 0.01.656
================
(Made by Saravana KumarP, 27/09/2007)
1) Saravana KumarP
	PREQ1801: Feature Manager supporting tool enhancements

Version 0.01.655
================
(Made by YiluZhu, 29/08/2007)
1) YiluZhu
	DEF110344: [TCL Build]:Warnings related to tools_sdb in DP00005 

Version 0.01.654
================
(Made by AndrewSmi, 09/08/2007)
1) AndrewSmi
	DEF110094: Run mode debug: debuggable keyword not supported for armv5_abiv1 in MCL

Version 0.01.653
================
(Made by Stephen Mansfield 22/08/2007)
1) stephenm
    DEF110923: Add new PLUGIN3 target type for EC43 ECOM Interface Extensions

Version 0.01.652
================
(Made by Saurabh, 6/08/2007)
1) Saurabh
	PDEF107553: Symbian should treat wchar_t as default datatype for OETYPE building any project. 

Version 0.01.651
================
(Made by Madhu, 20/07/2007)
1) Madhu
	PDEF109271: maksym sometimes ignores ctors & dtors in preference to "sub_objects". 

Version 0.01.650
================
(Made by Andrew Haigh, 17/05/2007)
1) AndrewHaigh
	PREQ1426: Added support for DEBUGGABLE MMP keyword.


================
(Made by Dusko,  12/12/2006)
1) Dusko
	PDEF096684: RF LOCAL_BUILD_PATH is causing build problems with RVCT but works with WINSCW

Version 0.01.648
================
(Made by Dusko,  24/11/2006)
1) KunalM
	DEF097985  - TOOLS2 build platform doesn't provide the advertised macros correctly

Version 0.01.647
================
(Made by Kunal,  08/11/2006)
1) KunalM
   PREQ1182 - GNU Make-based build system
   MS3.6 DS .425 	

Version 0.01.646
================
(Made by Dusko,  06/11/2006)
1) JonC
   PDEF096296 - Build system generated paths/files don't all comply with the Filename Policy

Version 0.01.645
================
(Made by Dusko,  11/10/2006)
1) Dusko
DEF093326: MAKSYMROFS.PL broken by changes to rofsbuild log format

Version 0.01.644
================
(Made by Dusko,  27/09/2006)
1) JohanG
	DEF090303: TARGETTYPE LIB should not permit additional LIBRARY statements.

Version 0.01.643
================
(Made by Dusko,  12/09/2006)
1) JonC
	Fix for DEF093939 - "abld -checksource" benign warnings are picked up by SCANLOG.

Version 0.01.642
================
(Made by Srinivaskv,  11/09/2006)
1)Srinivaskv
        BR1874.1 The Instcol.exe build utility is no longer useful as there is no need to deal with black and white screens.Hence this legacy tool should be removed.

Version 0.01.641
================
(Made by Dusko,  05/09/2006)
1) Dusko
	DEF093365 abld reallyclean not working for h2 
	INC090726 Failure to replace zip files in abld export if existing files have later times  
2)	JonC
	DEF093291 - "abld -checksource" ignores WIN32_LIBRARY statements
	DEF093289: FIXSOURCE doesn't deal with exclusion list entries correctly
	
Version 0.01.640
================
(Made by JonathanM,  01/09/2006)
1) AttilaV
	DEF091560 Warning when using PAGED keyword in MMP file

Version 0.01.639
================
(Made by JonC,  09/08/2006)
1) JonC
	Oghma,GT0312,MS3.1 DS.188 - PREQ1182: System-wide: Application of Filename Policy to production build 

Version 0.01.638
================
(Made by Dusko,  31/07/2006)
1) Dusko
	PDEF087907: Size of compiled resource file is limited up to 64KB

Version 0.01.637
================
(Made by Dusko,  25/07/2006)
1) Dusko
	INC088496 .c files are compiled with -c90 even if -cpp is specified in the OPTIONS list
2) JohanG 
	PDEF090318 Targetpath cases need to match
3)	JonC
	DEF088256 CW >=3.1 IDE builds and multiple LANG statements - brok

Version 0.01.636
================
(Made by Dusko, 20/07/2006)
1) Jon Chatten 
	DEF090302  PRJ_EXPORTS sections in bld.inf files don't support local relative destinations	


Version 0.01.635
================
(Made by Dusko,  23/06/2006)
1) Dusko
	INC088374 Catalogs_3.1 does not compile on S60 3.1 build robot (SOS 9.2 wk24)	

Version 0.01.634
================
(Made by Dusko,  23/06/2006)
1) Rajeswari Rajan
	INC087802: GCCE Linker can't handle dependencies correctly with -O2 optimization

Version 0.01.633
================
(Made by Dusko, 19/06/2006)
1) JohanG
	DEF067717: printsym.pl doesn't show DLL name for DLLs without symbols

Version 0.01.632
================
(Made by Dusko, 15/06/2006)
1) JohanG
	DEF066625: MMP XML files have wrong name to fixes branch.
	DEF087354: abld makefile - dependencies don't work for user header files
	DEF087077 S60 3.0: GCCE Compiler/Linker will not link static libraries with circular depen
	DEF087811 GCCE build broken - elf2e32 not update
	DEF080212 Extension makefile setupprj step doesn't work if Cygwin is in the path
	DEF086001 cl_bpabi: reorder the list of linked static libraries to support gcce compiler

2) Dusko 
	PDEF087156 evalid doesn't ignore RCS tags in header files 

3) SatyakamM
	DEF087646 Broken MakHelp.pm in MCL 

Version 0.01.631
================
(Made by DavidM, 26/05/2006)

1.	AttilaV
	Milestone: Argus,GT0286,MS3.2
	Extended MAKMAKE (MAKAKE.PL, MMP.PM, CL_ARM.pm, CL_BPAPI.pm, MAKHELP.PM) to handle new compression related MMP keywords and
	pass the compression parameter to ELFTRAN/ELF3E32 in tha makefiles.

Version 0.01.630
================
(Made by Dusko, 31/05/2006)
1) JohanG
	DEF087163 cl_gccml.pm corrupts the mmp.xml generated for GXP files (and CDB)
2) JonC 
	DEF087148 "abld -check" sensitive to EC MAKE descriptive output 

Version 0.01.629
================
(Made by Dusko, 30/05/2006)
1) SatyakamM
	DEF083913: efreeze does'nt mark the frozen DATA symbols as DATA

Version 0.01.628
================
(Made by Dusko, 25/05/2006)
1) Dusko
	DEF073575 "bldmake -v bldfiles" produces incorrect output

Version 0.01.627
================
(Made by Dusko, Mon 19/05/2006)
1) Johan Groth
	DEF077591 Dependency generation cannot be turned of in Java builds 
	DEF084331 Can't find produced GCCXML files in some cases
	DEF066625 MMP XML files have wrong name 
	DEF078382 MMP: STRINGTABLE doesn't support forward slashed paths 
 
Version 0.01.626
================
(Made by Dusko, Mon 08/05/2006)
1) Dusko
	INC084690 Bldmake fails when RVCT isn't installed

Version 0.01.625
================
(Made by Dusko, 13/04/2006)
1) Dusko
	DEF075216 Tools stubs+abld+tranasm doesnt work

Version 0.01.624
================
(Made by JonC, 03/04/2006)
1) JonC
	INC079605 Build tools path length limitations

Version 0.01.623
================
(Made by Dusko, 23/03/2006)
1) SatyakamM
	DEF083247 DEF File oddity - MW linker failure 

Version 0.01.622
================
(Made by Dusko, 21/03/2006)
1) Dusko
	DEF082351: CW IDE GCCE project creation broken...

Version 0.01.621
================
(Made by Dusko, 16/03/2006)
1) Dusko
	DEF081536: TARGET keyword is still required with TARGETTYPE NONE

Version 0.01.620
================
(Made by Dusko, 07/03/2006)
1) Dusko
	DEF080983 .dso files are missing 
	DEF075343 epocrc.pl is ceateing incorrect .INFO files
	DEF081762 Incorrectly flipping the file extension for STATICLIBS 


Version 0.01.619
================
(Made by Dusko, 20/02/2006)
1) Dusko
	DEF080567 epocrc.bat script only allows 9 parameters 
	EF080568 Cannot force C++ compile for ARMV5 builds
	DEF078622 "abld build gccxml" broken.

Version 0.01.618
================
(Made by Jonc, 15/02/2006)
1) JonC
	DEF080188 START STRINGTABLE doesn't permit use of the temp generated header only

Version 0.01.617
================
(Made by Jonc, 30/01/2006 and 03/02/2006)
1) JonC
	 PREQ1366 - Prepare codebase for Linux-hosted system build
	 Argus, GT0282, MS3.6, DS.138, Tight and Loose Integration Extension Makefiles Tools Support

Version 0.01.616
================
(Made by Dusko, 05/01/2006)

1)	Dusko
	INC073941: Symbian build tools override "--cpu" ARMCC parameter
2)	JonC
	DEF075532 - CR ABEK-6CYHEC has broken EVALID ELF comparisons

Version 0.01.615
================
(Made by Dusko, 09/12/2005)
	1)	Dusko
		DEF073923 makmake for gcce platform is failing 
		DEF074514 PRJ_EXPORTS failure when files #included within bld.infs using "/" in paths 
		DEF074174 VA_* macros cannot be used with GCCE 
		DEF075224: cl_gccxml.pm does not separate user and system includes 	

Version 0.01.614
================
(Made by JonC, 09/12/2005)
1)	JonC
	PREQ1366 - Tools changes as a result of filename policy
	MS3.4 DS.145

Version 0.01.613
================
(Made by Dusko, 16/11/2005)
1)	JonC
	PREQ1366 - Prepare codebase for Linux-hosted system build
	MS3.2 DS.138 BR.1718	
2)	Dusko
	DEF068711: bldmake bldfiles <platform> failing.
3)	KuldipN
	DEF073602 - Problems integrating new compilers into toolchain

Version 0.01.612
================
(Made by JonC, 15/11/2005)
1) JonC
	 PREQ1366 - Prepare codebase for Linux-hosted system build
	 MS3.1 DS.140 BR.1683.1

Version 0.01.611
================
(Made by MichaelMo, 08/11/2005)

1) JonCo
	 DEF071838: Fixupsym.pl can't cope with folders containing "." in their names

Version 0.01.610
================
(Made by Dusko, 04/11/2005)
1) Dusko
	DEF072548 Tools stubs+abld+def2dll doesn't work

Version 0.01.609
================
(Made by KuldipN, 12/10/2005)
1) KuldipN
	PREQ1028 - Plug-in compiler integration (DS 063)

Version 0.01.607
================
(Made by Dusko, 15/09/2005)
1) Dusko
	DEF068226: CW IDE resource builds don't reflect MMP "START RESOURCE" ordering...   
	DEF068229: CodeWarrior does not list .inl files in its file listing

Version 0.01.606
(Made by AndrewSmi, 07/09/2005)
1) AndrewSmi
	DEF062651 - RComp compiles erronously omitted structs
	INC061459 - RCOMP is not warning about identifiers being used as strings

Version 0.01.605
================
(Made by KuldipN, 06/09/2005)
1) KuldipN
	PREQ1028 - Plug-in compiler integration

Version 0.01.604
================
(Made by JonC, 05/09/2005)
1) JonC
	MINOR_CHANGE - Addition of non-default EDG MAKMAKE backend.

Version 0.01.603
================
(Made by Dusko, 19/08/2005)
1) Dusko
	DEF066617: OPTION in MMP files for Symbian 9 does not support GCCE.

Version 0.01.602
================
(Made by Dusko, 12/08/2005)
1) Dusko
	DEF065225 ARMV5 IDE builds differ from their command line counterparts... 
	DEF066431 Debugging button not available on some targets because bad default setting
	DEF065954 CodeWarrior Complains about rss files not being included in the project 
	DEF066129 Make defect has potential to causes failure in MCL 

Version 0.01.601
================
(Made by MaximK, 05/08/2005)
1) RichardCo
	MINOR_CHANGE: Add optional dir section to metabld mbc file parsing, to aid Base builds.

Version 0.01.600
================
(Made by Dusko, 28/07/2005)
1) Dusko
	DEF065839 [System Build] BLDMAKE fails to find ARM Version number 

Version 0.01.599
================
(Made by JonC, 21/07/2005)
1) JonC
      PREQ1032 Hardware-dependent support for "VFP" floating point acceleration and accelerated maths functions

Version 0.01.598
================
(Made by Dusko, 15/07/2005)
1) Marcel
	TOOLS03801: CodeWarrior Tool back Cannot build Winscw targets if ABIV2 is selected

Version 0.01.597
================
(Made by Dusko, 13/07/2005)
1) Dusko
	DEF065018 bldmake calls armcc more often than needed 
	DEF064902 SYM files are not copied into the release directory

Version 0.01.596
================
(Made by Dusko, 01/07/2005)
1) Dusko
	DEF064173 secdump.exe blows up when you try and use it 

Version 0.01.595
================
(Made by Dusko, 29/06/2005)
1) Dusko
	DEF064083 Cannot build ARMV5 Target in CodeWarrior starting with build 03635.01 
	DEF063878 Recognition of C-style trigraphs is not enabled on WINSCW 

Version 0.01.594
================
(Made by KuldipN, 22/06/2005)
1) KuldipN
	DEF060825  PR0104: Addition of GCCE support to CodeWarrior

Version 0.01.593
================
(Made by KuldipN, 15/06/2005)
1) KuldipN
	DEF062125  PR104: Custom DLL generation is failing 

Version 0.01.592
================
(Made by Dusko, 10/06/2005)
1) Dusko
	DEF060666 bldmake.pl checks armv5 compiler version for every "bldmake bldfiles"
	DEF062217 ARMv4 build broken / --noscanlib should be re-enabled
	DEF061950 fixupsym passed incorrect parameter to armlink?
	DEF056540 CW IDE 9.1 builds shouldn't have ARM4 as a default build platform...

Version 0.01.591
================
(Made by KuldipN, 27/05/2005)
1) KuldipN
      PREQ413   Changes to support the GCCE toolchain.
      PREQ414   Enable Commercial Compatible Compilers
      DEF061420 Elf2e32 Problems

Version 0.01.590
================
(Made by Dusko, 20/05/2005)
1) Dusko
      DEF060878 Abld escapes space characters

Version 0.01.589
================
(Made by ChetanaK, 20/05/2005)
1) Chetana
	PREQ834 - ARMV6 support in ABIV2 mode.

Version 0.01.588
================
(Made by Dusko, 12/05/2005)
1) Dusko
         DEF059351 CHANGES TO CW DEFAULT PROJECT IMPORT TEMPALTES NEEDED TO PROGRESS SEMC FIX 

Version 0.01.587
================
(Made by KuldipN, 11/05/2005)
1) KuldipN
         DEF060826 - PR0104 - PostLinker Memory Leaks

Version 0.01.586
================
(Made by Dusko, 10/05/2005)
1) BalaT
	DEF061079 EXPORTUNFROZEN fails to create .lib files 

Version 0.01.585
================
(Made by KuldipN, 3/05/2005)
1) KuldipN
	PREQ413 Changes to support the GCCE toolchain.

Version 0.01.584
================
(Made by Dusko, 27/04/2005)
1) Dusko
	INC057221 (Tool chain) Log system messages
    DEF059345 abld.pl incorrectly lists armv5 twice on 'abld help'
    INC057946 Should be able to conditionally include code for a platform added via a BSF file 
    INC058044 Symbian should define ECOM_PLUGIN_UDEB 


Version 0.01.583
================
(Made by BalaT, 14/04/2005)
1) BalaT
	DEF058405 : Linker error when building components in CodeWarrior using RVCT 2.2

Version 0.01.582
================
(Made by JonathanM, 24/03/2005)
1) JonathanM
	DEF058113: Problem when building within the CW IDE 3.0
2) AndrewR
	DEF058129: CW unnecessarily intercepts Win32 exceptions
3) WilliamRo
	DEF058094 : e32toolp setupprj.bat should always install the "secure" files. 

Version 0.01.581
================
(Made by JonC, 18/03/2005)
1) JonC
	DEF057405 : ARMv5 build fails with a command line which is too long 

Version 0.01.580
================
(Made by Bala, 18/03/2005)
1) Bala
	DEF057008 : RVCT2.2 leading edge build fails with errors in base/coreldr files.

Version 0.01.579
================
(Made by Bala, 10/03/2005)
1) Bala
	DEF056929 : [System Build] ARMv5 errors in build 03514 (9.1)

Version 0.01.578
================
(Made by Dusko 09/03/2005)
1) Dusko
	DEF054844 - The cwlink files has the command -noimplib attached to its parameter without a s.
	DEF054512 - fixupsyms.pl on CEDAR does not support RVCT.
2) Bala
    DEF056440 - CodeWarrior ARMV5 linking fails 


Version 0.01.577
================
(Made by Bala, 09/03/2005)
1) Bala
	PREQ1027 Submission of some enhancements for RVCT 2.2 Run-Time ABI Compliance to MCL

Version 0.01.576
================
(Made by ..., xx/yy/2005)
1) AndrewR
	MINOR_CHANGE: Fix link32 command generation in ide_vc6.pm

Version 0.01.575
================
(Made by DjordjeK, 21/02/2005)
1) AndrewR
	MINOR_CHANGE: Add __SUPPORT_CPP_EXCEPTIONS__ to MS-Dev workspaces

Version 0.01.574
================
(Made by Bala, 22/02/2005)
1) Bala
	PREQ1027 Submission of RVCT 2.2 Run-Time ABI Compliance to MCL

Version 0.01.573
================
(Made by Dusko, 21/02/2005)
1) Dusko
	DEF055405 GCCXML fails for projects with more than 150 source files

Version 0.01.572
================
(Made by CarlosF, 15/02/2005)
1) AndrewR
	MINOR_CHANGE: Fix MS-Dev workspace generation

Version 0.01.571
================
(Made by Dusko, 14/02/2005)
1) Dusko
	DEF054764 Cannot turn off compression on executables built on EKA2, armv5 platform.

Version 0.01.570
================
(Made by ChetanaK, 09/02/2005)
1) Chetana
	PREQ834 and PREQ835 - ARMV6 support

Version 0.01.569
================
(Made by Dusko, 24/01/2005)
1) Dusko
	DEF054203 ABLD LISTING is broken for ARMV5 

Version 0.01.568
================
(Made by Dusko, 19/01/2005)
1) Dusko
	DEF051245 - Some Base components won't build for ARMV5 within the OEM3.0 IDE
	DEF052081 - abld listing on ARMV5 doesn't include code addresses

Version 0.01.567
================
(Made by Dusko, 18/01/2005)
1) Dusko
	DEF052948 - GCCXML Remarks caused by CM concurrency problems.

Version 0.01.566
================
(Made by Dusko, 20/12/2004)
1) Dusko
	DEF052149 - ABLD output is incorrectly ordered when output is redirected to a file
	DEF052588 - Problems building test code - case sensitive tools? 

Version 0.01.565
================
(Made by Dusko, 20/12/2004)
1) Dusko
	1) INC052330 - Problems building AIF files 
	2) DEF052182 - Local project header file inclusion in CW IDE projects doesn't always work...
	3) DEF051361 - Remove CTPKG from trgtype.pm file

Version 0.01.564
================
(Made by Dusko, 06/12/2004)
1) Dusko
	Reverting changes introduced by cln 468659.

Version 0.01.563
================
(Made by Dusko, 03/12/2004)
1) Dusko
	1) DEF052428 - [System Build]: CBR (make.exe) errors in 03431 builds

Version 0.01.562
================
(Made by Dusko, 02/12/2004)

1) Dusko
	1) DEF052149 - ABLD output is incorrectly ordered when output is redirected to a file
	2) DEF052182 - Local project header file inclusion in CW IDE projects doesn't always work...
	3) DEF051361 - Remove CTPKG from trgtype.pm file
2) BalaT
	1) DEF050507 - GNU Make Errors in Windows Application Event Log


Version 0.01.561
================
(Made by JonathanM, 29/11/2004)

1)	JonathanM
	1)	Add 2 new capabilities SurroundingsDD and UserEnvironment.
		Part of Change Request CDRS-65RK9F

Version 0.01.560
================
(Made by Dusko, 23/11/2004)
1) BalaT
	1) DEF051128 - armv5 library build in parallel cause conflicts

2) Dusko
	1) DEF051237 - bldmake should not include "arm4" in the default list of platforms for 9..0
	2) DEF051838 - BLDMAKE error if two :zip exports refer to the same directory
	3) DEF051383 - ARMV5 command line builds can fail with a "via" file buffer over-run

3) Jon 
	1) DEF051947 - SystemPath is not set when building for CW_IDE:ARM4


1) WilliamRo
	1)	Removed the migration note for MMP files which don't have a VENDORID
		This has served its purpose, but is now confusing 3rd parties who think
		that they should apply for a vendor ID - in fact they shouldn't, because this
		is a compromise mechanism for licensees to use instead of securing some of
		their APIs. Only signed SIS files are allowed to include vendor IDs.
		To check a ROM for vendor ID values, look for "Vendor ID:" in the ROMBUILD
		log file.
		
Version 0.01.559
================
(Made by JonC, 17/11/2004)

	Yankee,PR0102,MS3.6 (PREQ 417 partial) CW miscellaneous updates
	MINOR_CHANGE Update to e32toolp CW IDE tests, version and release notes.

Version 0.01.558
================
(Made by Dusko, 08/11/2004)
1) BalaT
	1) FIX for DEF051333 - [System Build] Makmake plugins don't pass SystemTargetType to makedef

Version 0.01.557
================
(Made by Dusko, 05/11/2004)
1) BalaT
	1) DEF047267 - NTT - App-services\alarmserver TRepeatdefinitions udeb fails
	2) DEF044048 - RVCT version of DEF2DLL camplains about DLLs not having exports 
2) Dusko 	
	1) DEF048405 - FPU flags cannot be over ridden from the MMP files, for VFP support.

Version 0.01.556
================
(Made by Dusko, 25/10/2004)
1) JonC
	1) DEF050428 - __PRODUCT_INCLUDE__ set when it shouldn't be for Codewarrior ARMV5 builds
	2) DEF050463 - CW IDE WINSCW builds can ignore "Symbian Linker | Additional Command Line:" 
2) Dusko 	
	1) DEF049913 - Buildtools dependency on link.exe for 8.1b/9.0 

Version 0.01.555
================
(Made by xxx, yy/zz/2004)

1) AndrewR
	1)	DEF049659 - ARMV5 Compile of EXPORTUNFROZEN MMPs fails to create internal DEF file.


Version 0.01.554
================
(Made by Dusko, 08/10/2004)
1) JonC
	1) DEF049860 - MAKMAKE doesn't fully support CW OEM3.0 

2) BallaT
	1) DEF049659 - ARMV5 Compile of EXPORTUNFROZEN MMPs fails to create internal DEF file.

	
Version 0.01.553
================
(Made by Dusko, 04/10/2004)
1) Dusko 
	Fixes for:
	DEF049136 - GCCXML: Missing BMARM .def files reported during build.
	DEF048405 - FPU flags cannot be over ridden from the MMP files, for VFP support.
	
2) JonC
	DEF049354 ARMv5 falls over if linking too many objects  

Version 0.01.552
================
(Made by JonC, 16/09/2004)
1) Jon 
	Contributes to implementation of PREQ417 (MS3.4 EABI Plugin)
	e32toolp support for OEM3.0, including ARMV5 IDE builds. 


================
1) William
	1)	Add support for "TARGET" in START RESOURCE ... END blocks
		This supplies the basename for the resource file, in place
		of the default which is the basename of the source file.
	2)	Fix DEF048180 - engdoc should be excluded from tools_e32toolp
	3)	Change setupprj.bat so that it verifies the tools_e32toolp.mrp file
	4)	Change setupprj.bat so that it accepts "secure" as an optional
		argument. If "secure" is specified, files of the form _secure_xxx
		are exported as xxx, overriding the (insecure) xxx if it existed.

Version 0.01.551
================
(Made by AndreBr, 27/08/2004)
1) Andre 
    DEF048272  GCCXML: Makefiles aren't building for 9.0 


Version 0.01.550
================
(Made by MichaelP, 27/08/2004)

1)	JonathanM
	1)	MINOR CHANGE: Changed MMP.PL to not issue a warning for an incorrect second UID
		when this UID is 0x01111111'. This allows test code to deliberately set an
		incorrect UID.


Version 0.01.549
================
(Made by KuldipN, 24/08/2004)

1) Dusko & Andre
	DEF047480  GCCXML: Reference EABI .def files in MMPXML. 
	DEF047585  GCCXML: Include .def file in GXP Files 
	DEF047903  GCCXML Platform Doesn't exist when pre-processing bld.inf
	DEF047413 - Bldmake.pl produces and error that is not Scanlog compatibl
	DEF047918  Gccxml abld -v -k target problem 
	DEF047256  ABLD REALLYCLEAN only cleans up the epoc32\build tree 
	DEF047939  GCCXML: Malformed MMPXML file in GXP 

	MINOR_CHANGE
	Update of the components used in the automated IDE tests.

Version 0.01.548
================
(Made by KuldipN, 5/08/2004)
	Rolled back to previous version of make to remove fix for
	DEF046967  Build Errors: Java Build Problems  

Version 0.01.547
================
(Made by KuldipN, 27/07/2004)

1) Dusko 
	1) DEF044958 - some build files are not erased by "abld clean" and "abld reallyclean"  
	2) DEF046923 Makefile errors with GCCXML build target.
	3) DEF046922 abld gccxml target ignores EPOCROOT. 
2) Nahid
	1) DEF046576 - mmp.pm doesn't produce scanlog compatabile output.
	2) DEF045994 - Edll.lib in mmp causes CW Warning Messages
3) Kuldip
	1) INC046929 - Problem with emkdir.pl - directories not being made
	2) DEF046967  Build Errors: Java Build Problems  

Version 0.01.546
================
(Made by JonC, 12/07/2004)

1) Jon 
	1) Fix for DEF046739  BUILD ERRORS 8.1b - Build 03313.
	   As a result, the following fixes are reverted:
		1) Fix for DEF046732 - \epoc32\build MRP based location breaks test script assumptions.
		2) Fix for DEF046538 - Build tools fail with very long pathnames.
		3) Fix for DEF044958 - Some build files are not erased by "abld clean" and "abld reallyclean".
		4) Fix for DEF046408 - Tools should warn if non-supported RVCT will be used in ARMV5 builds.

Version 0.01.545
================
(Made by JonC, 09/07/2004)

1) Jon 
	1) Fix for DEF046732 - \epoc32\build MRP based location breaks test script assumptions.

Version 0.01.544
================
(Made by Dusko, 06/07/2004)

1) Dusko 
	1) Fix for DEF046538 - Build tools fail with very long pathnames.
	2) Fix for DEF044958 - Some build files are not erased by "abld clean" and "abld reallyclean".
	3) Fix for DEF046408 - Tools should warn if non-supported RVCT will be used in ARMV5 builds.

Version 0.01.543
================
(Made by Gus, 02/07/2004)

1) Dusko 
	1) Fix for CR...APOS-626C6K   -notest option added to bldmake.

Version 0.01.542
================
(Made by Dusko, 23/06/2004)

1) Dusko 
	1) Fix for DEF044958 - some build files are not erased by "abld clean" and "abld reallyclean".
2) Jon
	1) Fix for "DEF045712 - Large projects build within Codewarrior IDE fail to link".
	   (Comment update).


Version 0.01.541
================
(Made by GusR, 22/06/2004)

1) Gus 
	1) 	PR0099 
	Sierra MS3.4
	PREQ687 - "Optimized module build (EABI)."
	


Version 0.01.540
================
(Made by JonC, 17/06/2004)

1) Jon 
	1) Fix for "DEF046143 - make.exe should report runtime exceptions in the Windows Event Log"


Version 0.01.539
================
(Made by Dusko, 15/06/2004)

1) Dusko 
	1) Fix for DEF044666 - Bldmake unable to cope with makefiles with the same name.
2) Gus 
	1) Fix for DEF045445 - No Dependency in generated makefiles is not being used.
	2) Fix for DEF045077 - Warnings generated by build tools when built using "bld deb".
	3) Fix for DEF045255 - Using BLD DEB to build the tools creates errors when tools are used
3) Naheed
   1) Fix for DEF045349 - abld build fails to export data when built for one component
	  - Ensure exports are done when building for one component.
4) Jon 
	1) Fix for "DEF046059 : emkdir.pl output should be more verbose"


Version 0.01.538
================
(Made by Dusko, 28/05/2004)

1) Dusko 
	1) fix for DEF045551 - GCCXML: Malformed XML when targetpath specified in MMP.
2) Jon
	1) Fix for "DEF045035 - Codewarrior ignores #if macro statements in .mmp file.
	2) Fix for "DEF045460 - RDL TARGETTYPEs require a .def file in EABI builds"

Version 0.01.537
================
(Made by Dusko, 25/05/2004)

1) Dusko 
	1) Fix for DEF045503 - Warnings when building for gccxml platform
	2) Fix for DEF045428 - GCCXML Compiler Options.


Version 0.01.536
================
(Made by Dusko, 19/05/2004)

1) Dusko 
	1) Fix for DEF045168 - GCCXML: MMPXML should contain working directory from which GXP was built.


Version 0.01.535
================
(Made by Dusko, 14/05/2004)

1) Dusko 
	1) DEF045015 - Build tools: gccxml should not be one of the default targets
2) Gus
	1) DEF045077 - Warnings generated by build tools when built using "bld deb"
	2) INC044804 - Problem with TEMPMAKESISDECOY during localisation
3) Jon
	1) DEF044702 - Disable "stop on application launch" by default in Codewarrior settings panel.
	2) DEF044703 - Linking projects within the Codewarrior IDE fails for large projects.
	3) DEF045031 - Incorrect importing of mmp projects into Codewarrior with
                   TARGETTYPE set as lib

Version 0.01.534
================
(Made by GusR, 05/05/2004)

1) GusR
	Ease Of Deployment
	  alt_pre=1 now uses scpp.exe for preprocessing
	  local_build_path now defines where the object files are placed
	  the gcc directory can now be on a local drive
	  -savespace -keepgoing now sets nodependencies	
	New File : preprocessor.pm
	new File : scpp.exe

Version 0.01.533
================
(Made by JonC, 29/04/2004)

1) Jon
	Fixes for:
	1) DEF044751 Tools_e32toolp MRP file not specifying new .pm file.
	2) DEF044147 ARMV5 builds ignore AIF generation as part of the RESOURCE step.
	3) DEF044230 ARMv5/UDEB should build with -O0
	4) DEF044048 RVCT version of DEF2DLL camplains about DLLs not having exports 

Version 0.01.532
================
(Made by Dusko, 26/04/2004)

1) Dusko 
	Adding support for Backwards Compatibility Analysis Tool
	Files changed: cl_generic.pm, e32plat.pm, bldmake.pl
	New file: cl_gccxml.pl

1) Dusko
	1) DEF043895 - cl_codewarrior.pm not able to handle long commandlines.

Version 0.01.530
================
(Made by Dusko, 06/04/2004)

1) Jon
	1) Fix for "DEF044083 Incorrect list of warnings suppressed in cl_arm.pm"


Version 0.01.529
================
(Made by Dusko, 02/04/2004)

1) Dusko
	1) Fix for DEF043637 - CSYSTEM macro hard coded to WINS.
	2) Fix for DEF043632 - Cedar tools should not hardwire EKA2 or DO_NOT_USE_THIS_MACRO.
2) Jon
	1) Fix for DEF043608 - ARMv5 build tools to "ignore" more warnings.
	2) Fix for DEF043938 - Projects imported into CW for ARM4 builds do not link.
	3) Fix for DEF043630 - EABI builds should define "EABI" 
	4) Fix for DEF043607 - ARMv5 UDEB builds do NOT produce debug information 


Version 2.00.528
===========================
(Made by JonathanM, 19/03/2004)

1.	JonathanM
	1.	Implemented the requirements:
		REQ2632 - Configurability of the enforcement of capabilities
		REQ2633 - Security violation diagnostic
		REQ3142 - Associate Platform Security information with an executable.
		See /cedar/generic/base/documentation/Base_How_To_Configure_Platform_Security_Settings.doc

Version 0.01.527
================
(Made by Dusko, 18/03/2004)

1) Dusko
	1) Fix for DEF042453 - Mistakes in API Classification.
	2) Fix for DEF042408 - EVALID can't deal with more than 3 "-x" arguments
2) Jens
	1) Fix for DEF042878 - verbose output in "abld -v test romfile"
                           appears in generated oby file
3) Jon
	1) Fix for DEF043598 - CAPABILITY in OEM2.0 .pref files prevents IDE build...

Patch for Version 2.00.526
===========================
1)	JonathanM
	1)	Fix for defect DEF043311 - In the CodeWarrior IDE, UID.CPP files are incorrectly generated

Version 2.00.526
===========================
(Made by JonathanM, 26/02/2004)

1)	JonathanM
	1)	Modifications made for implementation of
		Change Request JDOD-5VUJ7F - Change in executable format of EKA2 binaries.
	2)	Made MAKMAKE use the new Platform Security capability names.
	3)	Tools now use the sytax "cap1+cap2+cap3" to specify a neamed set of capabilities
		(Rather than specifying a single hexadecimal number.)

Version 0.01.525
================
(Made by AndrewJ, 13/02/2004)

1)ChrisM
	1) Fix for DEF041533 - metabld should not insist on paths starting from the root of the drive
	   added a -r option to indicate the directory tree should be from the current location and not the root.

Version 0.01.524
================
(Made by Dusko, 12/02/2004)

1) Dusko
	1) Fix for DEF041403  Incorrect makefiles is generated for CWTOOLS  

Version 0.01.523
================
(Made by Dusko, 30/01/2004)

1) Dusko
	1) Fix for DEF041857 - MAKMAKE should not complain about MACRO statement with no arguments
2) Jon
	1) Fix for DEF041769 - Minor Perl problem in IDE_VC6.PM
	2) Fix for DEF041802 - Auto Target Libraries should be switched on by default in Code Warrior.
	3) Fix for DEF041697 - CW command line and IDE builds generate redundant "browse" files
3) Kuldip
	1) Fix for DEF41756 ROFSBUILD checks adequate image size incorrectly.
	2) Fix for DEF41699 Preserving of intermediate files to enable building of ROM from obey file generated by buildrom.pl 

Version 0.01.522
================
(Made by Dusko, 22/01/2004)

1) Dusko
	1) Fix for DEF041591 - BLDMAKE should not complain about "-ARMI" in PRJ_PLATFORMS
2)  Jon
	1) Fix for DEF041319 - Remove display of compiler generated commands by default from CW 
	2) Fix for DEF041432 - makmake.pl uses undefined variable @variant_macros 

Version 0.01.521
================
(Made by Dusko, 05/01/2004)

1)  Dusko
	DEF040718  cedar\generic\base\wins fails to export correctly if EPOCROOT is not \ 
2)  Kuldip
	Fix for INC040504  "makedef.pl does not recognise exported data in codewarrior DLLs"

Version 0.01.520
================
(Made by JonC, 18/12/2003)

1)  JonC
	Fix for DEF041019 - CodeWarrior OEM2.8 IDE project settings are incorrect.
	Fix for DEF041136 - Error found in "tools_e32toolp.mrp"... 

Version 0.01.519
================
(Made by Dusko, 17/12/2003)

1)	Kuldip
	REQ1648 A3.2 Improved Command Line Build Tools   Strict BUILDROM

1)	Jon
	REQ2212 A.3.4 Code Warrior Tooling, Support for Metrowerks  
    CodeWarrior for Symbian OS 2.8., Contributes to implementation of 
    TOOLS/MAKMAKE/cw.17,

1)	Darran
	Sirocco, CR PHAR-5QYMSN
    Support nested inclusion of (preprocessor) HR  
    files in varinat.cfg

1)  Andy
	low level support for REQ1730, REQ2206 and REQ2140.3.1.
	support for 'downgrading' cpu specific components when they're missing during 
	ROMBUILD I.E. ARMV5O1 -> ARMV5. This is similar to the kind of downgrading that
	takes place  for ARMI, ARM4 and THUMB builds.

Version 0.01.518
================
(Made by Dusko, 24/11/2003)

1)	Dusko
	1)	DEF037657  Cedar tools dont support  COMPRESSTARGET and NOCOMPRESSTARGET MMP keywords
		Files changed mmp.pm,cl_gcc.pm

	2)	DEF037095  E32Variant can only be used by tools in \epoc32\tools 
		File changed e32variant.pm

Version 0.01.517
================
(Made by Dusko, 10/10/2003)
1) Kuldip
	1)	DEF036127 FIXUPSYM requires an EPOCROOT
		Fixed in \tools\e32toolp\makesym\fixupsym.pl

2) Dusko 
	1)	DEF038828  Can't build projects that have AIF c12,8 in mmp file
		Files changed mmp.pm, makmake.pl, cl_generic.pm and ide_cw.pm 

3)	Dennis
	1)	Fix problem with cl_arm.pm - when building UDFP, UDFP.LIB was added
		to the list of libraries which caused infinite loops.

Version 0.01.516
================
(Made by Dusko, 02/10/2003)
1) Kuldip
	1)	DEF038583 - BLDMAKE Error in 03114_Symbian_OS_v8.0b
		Fixed in \tools\e32toolp\genutil\pathutil.pm
2) Johannes
	2)	Fix for DEF037095 - E32variant can only be used by tools in \epoc32\tools


Version 0.01.515
================

(Made by Dennis, 24/09/2003)

1. Dennis
	1.	Implemented CR ATHE-5PZEAU (Add Version Numbers to Symbian OS Executables).

2. JonathanM
	1.	Created new .MMP Target types, "NOTIFIER2" and "TEXTNOTIFIER2"
		This has been added for Notifier plugins which use the new Version 2
		Client/Server APIs.


Version 0.01.512
================
(Made by DuskoJ, 22/08/2003)

1) Morgan
	1)	Added ROFSBUILD extension support to BUILDROM.PL
		BUILDROM automatically generates the appropriate obey commands for non-XIP
		ROFS obey files.
	2)	Improved \tools\e32tools\rombuild\addextension.pl to understand ROFS images
		and extensions.  addextension.pl can be used to join xip and non-xip images.

2) Dusko 
	1)	DEF036665 - MAKMAKE should put EGCC.LIB at end of LIB list
	2) WINUTL.PM changes - support for building tools with CodeWarrior


3) Andy 1)	REQ2178 - GENSHIMSRC Generate source for a shim DLL and its associated deffile from a supplied deffile


Version 0.01.511
================
(Made by DuskoJ, 25/07/2003)

1) Morgan
	1)	Integrated "fix" for DEF032836 - Rogue Multimedia warning in typhoon build 02194a
	MAKDEPS.PM is now more defensive when adding to the bad system dependency list.
2) Jon
	1)	Fix for defect DEF035996 - Cpp.exe Permission denied failure.

3. Dusko
	1. fixed DEF036388 Cedar version of maksym.pl is out of date


Version 0.01.510
================
(Made by DuskoJ, 10/07/2003)

 1) DuskoJ
	1) Adding support for building tools with CodeWarrior. 
	   files changed: 1. bldmake.pl
					  2. e32plat.pm
	   new files:	  1. cl_tools.pm  
	
  	2) Changes to epocaif to generate .aif files in new format. Aiftool.exe is no
           longer needed.

  	3) Changes to cl_generic so that when abdl -what command is executed both,
           XIP and NON XIP version of aif files which are generated with epocaif are 
  	   listed.

 2) JohanesK
	1) DEF036206 - variant.cfg information not used when generating MAKMAKE dependencies


Version 0.01.509
================
(Made by DuskoJ 07/07/2003)

	1) Fixed DEF035953  Build errors for "cedar\generic\tools\redistribution" 
	

Version 0.01.508
================
(Made by JonC, 26/06/2003)

      1) DEF035949 - EKA2 define is not passed to compiler in Cedar CW IDE builds.
      2) Update of mmpscan.pl and mmp_testlist.txt to reflect changed Cedar TARGETTYPEs and components.
      3) Update to build variant documentation.


Version 0.01.507
================
(Made by JohannesK, 24/06/2003)

      1) Fixed DEF035897 - cedar roms failed to build.

Version 0.01.506
================
(Made by JohannesK, 23/06/2003)
      1) Enabling product variant builds (ported changes from Typhoon).

      2) Fixed DEF035683 - CW project creation is broken in Cedar.

      3) Fixed DEF035802 - Bad case-sensivity in E32variant.pm.

      
Version 0.01.505
================
(Made by JonathanM, 20/05/2003)

1)	JonathanM
	1)	Modified Cedar tools to define macros 'EKA2' and 'DO_NOT_USE_THIS_MACRO' when
		processing BLD.INF, MMP files and compiling source.
	2)	Fixed some missing EPOCROOT support. (Include path for CPP and exported zips.)
	3)	Modified Cedar GENBUILD to work with master codeline directory structure.

2)	Nicolas
	CHANGES FOR MASTER CODELINE:
	1)	Brought back to life AIF support which was removed by submission 229467 to the
		Jet Stream mainline.  This involved changing various perl scripts and upgrading 
		winc.zip to a recent Typhoon build (2175) which include versions of bafl.dll and
		aiftool.exe which support the new resource format.
	2)	Brought back to life CTL target needed by some techview apps.


Version 0.01.504
================
(Made by William, 18/03/2003)

1)	Dusko
	1)	Updated EVALID to use ELF dump to compare ELF files.

2)	William
	1)	Fixed defect DEF020022 - Minutes & seconds reversed in scanlog.pl output
	2)	Added SCANLOG.TXT to document of the log file format and patterns used by scanlog.pl
	3)	Updated EVALID.TXT to add information about "ELF file" comparisons.
	4)	Updated cl_codewarrior.pm & ide_cw.pm to support CodeWarrior for Symbian OS, OEM v2.0


Version 0.01.503
================
(Made by William, 10/02/2003)

1) Dusko
	
	1)	makmake.pl - Fixed a defect in makmake (added missing $CurSource{BaseTrg} to SourceStruct)
	2)	Redefined SrcList function (functionality has not changed)
	3)	Deleted Uids funciton 

	4)	mmp.pm - Deleted inappropriate comments
	5)	Deleted UIDs function 

	6)	mmp_notes.txt - Some changes to structure description.
	
	7)	cl_generic.pl - Uids info extracted from existing data in ResourceStruct 
	   	and unneeded call to Uids function deleted.
        
	8)	bldmake.pl Changes which enable bldmake to understand additional syntax in PRJ_EXPORTS
	   	part of bld.inf. More complex makefiles are generated in the  epoc32\build tree.
	   	Generation of the new rules is put into a separate subroutine - CreatePlatExports
	   	PRJ_EXPORTS now accepts exports to paths including a drive letter: the file(s)
	   	will be exported to the corresponding subdirectory of epoc32\data, and also exported
	   	at the RESOURCE step in emulator builds to the corresponding emulated directory.
	   	For example:  myfile.txt z:\system\data\myfile.txt
	   	causes exports to epoc32\data\z\system\data\myfile.txt, and also to
	   	epoc32\release\XXX\{udeb,urel}\z\system\data for each emulator target XXX.


1) William
	1)	Fix defect DEF000968 - MAKMAKE grants capabilities which don't yet exist
	2)	Add support for "CAPABILITY ALL -ROOT", i.e. for subtracting capabilities for a set
	3)	Change the default CAPABILITY setting to ALL+0x80000000 so that it can still be clearly
		identified in executables.
	4)	Update CodeWarrior IDE support to use the Symbian V8 Linker plugin, and to reject
		attempts to build IDE projects for "CodeWarrior for Symbian OS, Pro1".
	5)	Add e32toolp\test directory for regression tests.
	6)	Add mmpscan.pl which scans MMP files for significant features, and mmp_testlist.txt which
		covers all of the MAKMAKE features in less than 40 of the current 2432 MMP files.
	7)	Updates to mmpscan.pl to work in more cases.
	8)	Additional test functionality cw_ide_test.pl which builds MMP files using both the
		CodeWarrior IDE and directly via MAKMAKE and commandline builds, comparing the results.
	9)	Change epocrc.pl to avoid explicitly specifying the default uids argument -{0,*} if
		neither -uid2 nor -uid3 is specified. This allows UID2 and UID3 keywords in the source
		files to take effect.
	10)	Change genbuild.pl to process all specified source files, concatenating them
		and generating scripts named after the first file.
	11)	Add "<option arm_build XXX>" to genbuild.pl, so that we can specify additional
		builds such as <option arm_build armv5> for RVCT builds.
	12)	Update scanlog to detect RVCT compiler warnings and errors, and added "use strict".
	13)	Arrange for scanlog.pl to ignore sections which refer to armv* or *edg, so that mainline
		builds can include early RVCT attempts without swamping the error and warning counts. This
		skipping is disabled by specifying the "-v" flag to scanlog.pl.
	14)	Fix Perl warning in evalid.pl
	15)	Updates to test code (cw_ide_test.pl, mmpscan.pl, mmp_testlist.txt).
	16)	Change cl_codewarrior.pm to use ".o" rather than ".obj" for compatibility with the IDE
		builds, and to compile xxx.uid.cpp to uid.o for the same reason: the IDE and command line
		builds will then produce identical .map files
	17)	Change ide_cw.pm to avoid specifying a base address for EXEs, to match the command line build.
	18)	Change ide_cw.pm to specify -D__XXX_ for ASSPs (i.e. when platform != real platform).
	19)	Change MAKMAKE to reject CodeWarrior for Symbian OS v1.0 as unable to support Jet Stream builds.
	20)	Remove obsolete target types, post UIKON and ECOM data caging releases.
		This removes CTL, CTPKG, FEP, MDL, OPX, RDL and WLOG.
	21)	Remove the cw_ide.pm workaround for ignoring MBW and mapping MCL->MBM. There
		are no remaining B&W files in Jet Stream, and all of the Color files are now correctly
		named. The instcol script is no longer needed but still exists to avoid disrupting build
		scripts: it now just says "instcol is no longer used".
	22)	Remove support for AIF files, which no longer exist.
	23)	Fix defect DEF015570 "Irritating and useless X86 builds in default abld platforms list".
		To include X86 in "ALL" platforms, define environment variable ABLD_ALL_INCLUDES_X86.
	24)	Disallow .cia files in WINSCW builds.
	25)	Add support for SRCDBG in ide_cw.pm
	26)	Change the generated target names in CW projects to be just "ABI BLD" without the MMP name.
	27)	Fix defect preventing BASEADDRESS being specified for IDE builds of EXEXP targets.
	28)	Handle Win32Library list correctly in CW projects.
	29)	Change cw_ide_test.pl so that it restores all of the original files after testing.
	30)	Update mmp_testlist.txt to a workable set of MMP files, marked "not MISA" and "not WINSCW"
		if they can't be built in both ABIs.
	31)	Change scanlog.pl to tolerate malformed log files, which would have helped to detect the 
		true cause of things like DEF016577 "Scanlog does not detect errors in JRCK log". If the
		phase doesn't finish properly, no timing will be displayed.
	32)	Added ===+ timing information to genbuild.pl, for closer analysis of build times.
	33)	Integrate the "list of color depth" changes for CR MFRN-5HTH2G "Make it possible to have 
		different color depth of icons and masks in the aif file". We don't have AIF files any more,
		but this applies to bitmaps as well.
	34)	Propagate the 7.0s ecopyfile.pl change to support "Build from Clean" process.
	35)	Remove all record of the WINC platform
	36)	Remove the .assp files, now that everything is built into a single directory.
	
	
Version 0.01.502
================
(Made by William, 20/09/2002)

1) Dusko
	1)	Fix defect ROS-59ZDWH "OPTIONS keyword doesn't respect upper and lower case"
		Both the OPTIONS and MACRO keywords now respect the case of their arguments, so it's possible
		to specify mixed-case compiler flags or mixed case #defines.
		
2) William
	1)	Implement automatic selection of CodeWarrior for Symbian OS v2.0 ("Ganymede") based on
		examination of environment variables. If the MWSym2Libraries variable exists and refers
		to directories which all exist, the Ganymede compiler will be used instead of the older
		Callisto compiler.
	2) 	Implemented various Metrowerks suggested improvements to the CodeWarrior project template
	3)	Added more support for the "Symbian Installation" preference panel, and an association for
		.pkg files.
	4)	Add EXPORTUNFROZEN to the .pref file for CW IDE projects, as it's supported in Ganymede.
	5)	Add WINSCW support for WIN32_LIBRARIES which are not in the system search path, for use
		by the Win32 Ethernet Driver.
	6)	Fix defect ROS-5CAH9W "EVALID can't handle directory names containing spaces"
	7) 	Change ide_cw.pm and CW_project_template.xml to assume the new Symbian Resources compiler
		which handles RSC, MBM and AIF files via a .resources file.
	8)	Change MAKMAKE so that the cw_ide:plat1+plat2+plat3 commandline arg won't always do the
		WINSCW target first: it now uses the cw_ide plat in the necessary places to get the .xml
		file generated, but uses plat1 everywhere else.
	9)	Change abld.pl to allow WINSCW in the "ALL" list if either v1.0 or v2.0 of CodeWarrior for
		Symbian OS is installed.
	10)	Change cl_codewarrior.pm so that WINSCW makefiles will use v2.0 of CodeWarrior for Symbian
		OS if it's installed, or fallback to v1.0. Make the necessary minor adjustments to the
		generated Makefiles to compensate for differences in v1.0 and v2.0 tools.
	11)	Fix defect ROS-5D6FRK "Makmake code to select between CodeWarrior versions is incorrect"
	12)	Fix defect ROS-5CMNVG "EPOCROOT check gets in the way of CodeWarrior mmp file import"
	
 
Version 0.01.501
================
(Made by ?, --/--/2002)

1)	William
	1)	Changed genbuild.pl to generate scripts with relative paths, instead of assuming 
		that the paths in the .txt files were always relative to the root.
	2)	Removed references to WINC and ARM3 from genbuild.pl
	3)	Changed BLDMAKE.PL to remove ARMI and THUMB from the list of default platforms
	4)	Disabled the LNK4089 warning caused by /OPT:REF in MSVC builds.
	5)	Downgrade the use of "-XXX" which isn't in the default list to a BLDMAKE warning if 
		-k specified: seems reasonable since the net effect is not to build for platform XXX.
	6)	More work on defect ROS-595LHD "abld -what problems with very long pathnames" - the non-generic
		RELEASEABLES are now handled in the same way as the GENERIC_RELEASEABLES, to avoid exceeding
		line length limits.
	7)	Fix defect PAL-59YHRT "Build errors not being reported in summary files" - change scanlog.pl to
		report missing components as "Things not built".
	8)	Changed the epocrc.pl, epocmbm.pl and epocaif.pl wrapper scripts in anticipation of the
		new Symbian Resource compiler plugin for CodeWarrior.
		epocrc.pl - handle "-I-" and UNC paths correctly
		epocaif.pl - handle "-I-" and UNC paths, use "-o" when preprocessing .rss file, report bmconv failure
		epocmbm.pl - remove EPOCROOT check to subroutine, report bmconv failure
	9)	Improve	the Path_RltToWork function to generate more concise relative paths. This impacts
		any binary which has __FILE__ as read-only data, e.g. via the ASSERT() macro in 
		epoc32\include\mda\common\base.inl
	10)	Fix defect CHN-58WEZ3 "EPOCRC.PL fails in VC6 IDE builds with long paths" by supplying
		an absolute path to epocrc.pl, and having epocrc.pl add the current drive letter instead
		of generating a relative path. Similar code in epocaif.pl was altered as well.
	11)	Update EVALID to handle "Preprocessed text" ignoring the lines which indicate the #include
		structure (and which include source filenames).
	12)	Update EVALID to ignore the "unique _head & _iname" symbols from import libraries when they
		appear in gcc MAP files, using the same pattern as for ARM object files.
	13)	Introduce MAKMAKE "CAPABILITY" keyword which takes a space-separated list of capability names
		and computes the hex value for the combined list. This is passed to PETRAN in cl_gcc or cl_x86.
	14)	Change winutl.pm to use __EMULATOR_IMAGE_HEADER() in the xxx.uid.cpp file, adding the extra
		extra process priority and capability information.
	15)	Abandon the notion of CompatibleABIs, chiefly by stopping cl_gcc.pm from generating the extra
		libraries.
	16)	Change scanlog.pl to pick up more warnings, and to print the warning lines in a "Warning details"
		section at the end.

2)	Dennis
	1)	Applied William's suggested changes to enable polymorphic DLLs to have additional exports.
		Exports 1 and 2 in the DEF file are required to match the polymorphic exports.
	2)	Made it possible to export a ZIP archive from a component. The following line

		:zip archive.zip basedir

		in the PRJ_EXPORTS or PRJ_TESTEXPORTS section of an MMP file will cause 'archive.zip' to be
		unzipped into the 'basedir' directory at the export stage of the build.
		CLEANEXPORT will delete each unzipped file and WHAT will list each unzipped file.

3)	ChrisM
	1)	Changed memtrace.pl to work with EKA2 memtrace tracing.  MT:P xxxx trace output has
		the length of the tick in microseconds, so memtrace.pl uses this to work out its
		time stamp if it is present, otherwise it defaults to EKA1 behaviour.

4)	Andy Sizer
	1)	Added support for .CIA assembler files.
		First attempt at support for new RVCT compiler.
	
Version 0.01.500
================
(Made by AndrewT, 23/05/2002)

EKA2 changes

1)	Andrew
	1)	Def file processing allows a by-name export "_E32Dll" or "_E32Startup" to appear
		in the def file. This is elminated from the no-name freeze process and
		re-introduced to the end of the build def file. This supports the v7 entrypoint
		scheme, and does not appear in frozen def files.
	2)	Added target type EXEXP for v7 support of EXEs with exports. This replaces 
		EXEDLL, which is no longer supported. Removed support for EPOCEXE, these
		targets should just become EXE.
	3)	Changed target type KDLL to use a new EKLL.LIB and to not be ASSP specific. These
		DLLs are all used by the kernel, but do not link to the kernel, and are only built
		for ARM4 or WINS
	4)	Changed WINS use of entry-points, DLLs have no Win32 entrypoint but include the
		_E32Dll symbol to ensure that this is exported by name (see 1). EXEs have a Win32
		entrypoint to allow auto-boot of the emulator before running the EPOC program, and
		force the inclusion of the _E32Startup symbol to ensure that this is exported by
		name.

2)	Nicolas
	1)	Removed spurious code in cl_x86.pm which caused x86
		releasables to be copied into \epoc32\tools.
	2)	Merged in EKA1 WINSCW support and adapted it to EKA2
		(EXEXP, emulated E32 entry points, EPOCHEAPSIZE, ...).
	3)	Added new MMP keyword WIN32_HEADERS to instruct makmake
		to search the standard include directories.

---------------------------

Pre-EKA2 changes

1)	William
	1)	Revise compare_summary.pl to match scanlog.pl, which stops compare_summary.pl from hanging
	2)	Change MAKMAKE to use "cpp -undef" when generating source file dependency information.
	3)	Change BLDMAKE to generate an abld.bat file with the BldInfPath quoted in case it contains 
		spaces: there's a lot more work still to do, but this is a start...
	4) 	Remove any leading backslash on filenames in SOURCE statements, since they are by definition
		interpreted as paths relative to the prevailing SOURCEPATH. This affects FREETYPE.MMP, which
		was otherwise generating names like graphics\freetype\group\..\\freetype2
	5)	Fix defect ROS-58CQTC "CW IDE can't import strangely formatted MMP file" by making ide_cw.pm
		form its own list of source directories from the (SOURCEPATH, SOURCE) pairs.
	6)	Fix defect BAD-57QNL7 "Charconv does not compile from CodeWarrior GUI" by making ide_cw.pm
		order the access paths explicitly for userinclude and systeminclude.
	7)	Change GENBUILD.PL to generate additional batch files for "abld clean" and "abld reallyclean".
	8)	Implement MAKMAKE support for IDE targets which support multiple platforms: so far this
		consists of supporting "makmake mmpname someide:plat1+plat2+plat3" syntax and providing the
		list (plat1, plat2, plat3) to any backend which cares to ask for it.
	9)	Implement various changes to the generation of CodeWarrior IDE projects: 
		* Pick up the list of platforms from the "cw_ide:plat1+plat2+plat3" commandline arg (if any)
		* Enable the "System Log" window for WINSCW UDEB targets
		* Default "Display generated commands in msg window" to false for all targets
		* Add the "SymbianImportLibraryPath" setting for use in Ganymede
		* Allow multiple resource files if they all use the same TARGETPATH
	10)	Use mwwinrc to compile Win32 resource files in WINSCW builds
	11)	Fix defect ROS-58VCQY "MAKMAKE fails if + included in pathname" by using quotemeta() to do 
		the full job on $S_SysDecoyPath
	12)	Fix defect GAA-57WNNR "Error in bldmake.pl -what option for cw_ide" by reporting the .xml and
		.pref files correctly. Note however that BLDMAKE can't always get the .pref or .uid.cpp filenames
		right because they are generated (or not) using information inside the MMP file.
	13)	Fix defect ROS-595LHD "abld -what problems with very long pathnames" by counting the actual 
		length of the GENERIC_RELEASEABLESn lines and breaking before it goes over 1900 characters.
	14) 	Various EVALID improvements, including support for ignoring comments in SGML files
	15)	Added evalid.txt file for export into epoc32\engdoc\e32toolp

2)	Uma
	1)	Fix defect ANN-595CNZ "using abld build creates a epoc32 folder in the root of your drive".
	
Version 0.01.304
================
(Made by William, 22/02/2002)

1)	William
	1)	Introduce "START RESOURCE ... END" syntax to allow resources to be built into a directory
		which is neither \System\Data nor the TARGETPATH of the main executable, and to allow
		resources to be built without an associated header file. Both RESOURCE and SYSTEMRESOURCE
		are expressed as shorthands for the new syntax, and the internal handling of resources
		has been unified. As a side-effect, this provides the proper fix for defect JOE-52ZJP3 
		"Conditional #includes in resource files".
	2)	Include WINS and WINSCW into the "abld all" platforms according to the presence in the 
		environment of associated environment variables. If you have the CodeWarrior compiler installed
		you will have a CWFolder environment variable: ABLD.PL will notice this and include WINSCW
		in the "ALL" target. WINS is included if the MSDevDir variable is present.
	3)	Make SETUPPRJ.BAT generate a makefile which is resilient against filenames which contain spaces,
		and which will keep going even if an individual file can't be installed.
	4)	Fix defect ROS-573K9P "MMP keyword MACRO keyword not supported in CW IDE projects".
	5)	Fix defect ROS-57CFVC "CW IDE projects can no longer find RSS files".
	6)	Fix defect ROS-57CFYY "CW IDE projects fail if RSS file is in unusual place".
	7)	Clone the targets from the XML template project rather than altering them directly, which
		is a necessary precursor to supporting ASSP targets, where the ARM4 targets may need to be
		used more than once.
	8)	Remove backwards-compatibility support in CL_GCC.PM which copied resources, bitmaps and AIF files
		from the epoc32\data\z tree into the $(PLATFORM)\$(CFG) directories.
	9)	Fixed defect ROS-57PJYW "MSVC-based builds are using warning level /W1 by default" by reinstating
		the /W4 warning level for MSVC-based builds, which was accidentally lost in change 109090.
		The change also deals with the CL.EXE objection to multiple /Wn arguments on the same commandline, 
		so that OPTION MSVC /W0 won't itself cause "Command line warning D4025".
	10)	Annotate all of the CL.EXE command line options used in cl_win.pm and ide_vc6.pm, and move the
		/GF option into the main definitions rather than repeating it for every source file.
		

Version 0.01.303
================
(Made by William, 06/02/2002)

1)	Uma
	1)	Changed epocrc.pl and lockit_info.pm to support rls_string (CR JCLE-549DVM).

2)	William
	1)	Fix defect JOE-52ZJP3 "Conditional #includes in resource files".
		Use the same "combine the dependency list" quick fix strategy as for 6.1, since the 
		"multiple languages in MMP files" approach to localisation is on the way out anyway.
	2)	Make EVALID insensitive to the _head* and __*_iname symbols in the import libraries 
		generated by DLLTOOL. 
	3)	Fix defect ROS-55AN6D "fixupsym.pl fails immediately"
	4)	Update MAKSYM.PL use FindBin::Bin rather than scanning the PATH variable
	5)	Update SCANLOG.PL to detect recursive make failures (i.e. make[n]: *** rather than just make: ***)
	6)	Remove the old support for warning waivers, and make the printing of "MISSING:" files 
		independent of the number of fatal errors
	7)	Fix defect ROS-55BM2X "ar failure with very large components" by splitting the list of
		objects into 150-file groups, to avoid the 32K line length limit on Win32 process arguments.
	8)	Add a "Build All" target to generated CodeWarrior projects, and cut out some junk from the
		project template.
	9)	Fix ROS-56QP3D "Problem with EPOCSTACKSIZE when generating CW IDE Projects"
	10) Revise EPOCRC.PL for use from CodeWarrior IDE RCOMP plugin: drive CPP.EXE differently, and
		remove the EPOCROOT check. Only the LOCKIT processing needs EPOCROOT, and lockit_info.pm does
		it's own check when necessary.
	11) Fix deferred defect HET-4X9G2P "commandline help for epocrc.pl is missleading"
	12)	Fix defect ROS-55JM2S "Emulator EXEs can come with unexpected .EXP and .LIB files" 
		for WINSCW by explicitly disabling the exports and import library when linking an EXE.
	13)	Assume the "CodeWarrior for Symbian OS Professional Edition V1.0" version of MWLD.EXE,
		which removes the dependence on the Developer Studio LIB.EXE tool for WINSCW builds.
	14)	Use the CodeWarrior "MWCWinx86Includes" environment variable rather that the Developer Studio
		"INCLUDE" environment variable when generating WINSCW makefiles.
	15)	Catch an additional form of MWLD.EXE warning in scanlog.pl

Version 0.01.302
================
(Made by William, 03/12/2001)

1)	William
	1)	Reinstate "use strict;" in MAKMAKE.PL, and fix errors uncovered
	2)	Fix parsing of "OPTION" to handle the rest of the line better, and
		to concatenate multiple OPTION statements for the same key.
	3)	Fix use of uninitialised variable in MAKSYM.PL
	4)	Change ABLD.PL and MAKEMAKE.PL to specify the -r option to make, so that MAKE 
		doesn't try built-in inference rules to remake the makefiles or the targets: the
		BLDMAKE makefiles are very simple and don't need any of that stuff, and the MAKMAKE
		makefiles contain explicit rules for everything we want.
	5)	Changed cl_codewarrior.pm and cl_gcc.pm to remove the use of inline files. 
		It turned out to be simple to change the "ar -M" command into a direct "ar cr" 
		command line, and the CodeWarrior makefile doesn't use the bscmake rule anyway.
	6)	Rearranged dependencies so that real files do not depend on "phony" targets.
		This involved moving the MAKEWORKLIBRARY dependency, and adding MAKEWORK$Bld
		to the UREL and UDEB target. Changed cl_codewarrior.pm to remove the remaining
		mentions of .sbr files.
	7)	Removed the trailing \ from the directory definitions in cl_generic.pm (things like
		EPOCBLD, EPOCLIB etc) so that they won't be troublesome to MAKE.
	8)	Removed !if "OS" == "Windows_NT" conditional stuff into the Perl scripts, so
		that the resulting Makefiles aren't conditional at all.
	9)	Added Generic_Quote, which quotes a filename in the style required for the
		type of makefile being generated, and Generic_CopyAction which deals with
		copying a file (default ?$) to the target of the rule ($@).
		These are available to users of cl_generic.pm and used within the generic functions.
	10)	Added MakeCmd to the E32Plat.cmd information, and use it in BLDMAKE to determine
		the way that the recursive Makefile should be called. Also pass it from MAKMAKE
		to the cl_XXX.pm module, which checks it and passes the value on to cl_generic.pm
		if used.
	11)	Added -s to the recursive calls for WHAT, to avoid any directory information being
		printed by MAKE.
	12)	Changed epocaif.pl and epocrc.pl to use File::Copy rather than system "copy..." in
		the lockit processing.
	13)	Reworked cl_codewarrior.pm and cl_gcc.pm that they can support both MAKE and NMAKE,
		generating appropriate Makefiles according to the type requested by MAKMAKE.
	14)	Change E32PLAT.PM to specify MAKE makefiles for all ARM and WINSCW targets.
	15)	Removed use of wildcard "$BaseTrg.*" in CLEANLIBRARY
	16)	Added detection of ABLD fatal errors to scanlog.pl
	17)	Removed use of DUMPBIN for extracting list of exports in cl_codewarrior.pm, and
		modified MAKEDEF.PL to handle the mwld.exe output used instead.
	18)	Fix defect BRN-52RCVD "Evalid doesn't work correctly when run from a 
		directory more than one level deep."
	19)	Fix defect ROS-53ECQY "Can't disable WINSCW builds in PRJ_PLATFORMS"
	20) Change GENBUILD.PL to do "resource" before "library" so that static libraries can
		make use of generated .RSG and .MBG header files. At the same time, disentangle the
		WINS and WINC build steps so that WINC is required to stand by itself.
	21)	In genbuild.pl, remove the extra "what" & "check" steps before the "final" step for 
		WINS and WINSCW, and pass the "keepgoing" flag to the export step.
	22)	Fix defect BRN-52KL2Y "\epoc32\localisation\*.rpp and *.info files are not reported 
		by the build tools as releaseables". All of the files placed in epoc32\localisation
		are now reported by MAKMAKE as generic releasables.
	23)	Fix defect ROS-52XGQY "fixupsym.pl is broken by recent MAKMAKE changes" and improve
		speed of directory scanning (still takes too long though...)
	24)	Add "what" and "check" reporting to the tools part of genbuild.pl
	25)	Change makedef.pl to allow filenames with drive letters, and adjust to support both 
		2.4.5 and 2.5 versions of the CodeWarrior linker.
	26)	Convert all Perl scripts to use FindBin rather than explicit scanning of the PATH variable.
	27)	Fix defect FOD-53SN8N "Can't pass more than 1024 characters into ar". by changing cl_gcc.pm 
		to build the archive files with the full pathnames of the temporary files. This avoids the 
		need to use "cd xxx;", which caused MAKE.EXE to use a DOS batch file to execute the command.
	28)	Changed EVALID.PL to ignore the pathnames leading to object files when comparing libraries and
		MAP files. Also arranged to ignore the MAP file lines involving .stab and .stabstr information.
	30)	Fix defect THY-54BG7T "Error when invoking GNU make directly" by duplicating the
		PATH & Path handling from the BLDMAKE-generated makefiles
	31)	Fix defect PLD-54FQ6U "Recompiling for ARM after making source changes results in link failures"
		by reinstating the deletion of the .in file prior to calling "ar".
	32)	Fix a few places where MAKMAKE assumed that pathnames do not contain spaces
	33)	Add the CW_IDE platform (cf VC6) and implement it in ide_cw.pm with an associated template
		for the generated .xml file.
	34)	Restructure MAKMAKE.PL + MMP.PM file handling as SetVarsFromMmp, so that ide_cw.pm can call back
		to reprocess the MMP file for other platforms.
	35)	Adjust cl_codewarrior.pm to match the CodeWarrior Symbian Compiler Plugin, and fix a defect with
		EXPORTUNFROZEN generating the import library from the wrong def file.
	36)	Change winutl.pm to avoid the LINK.EXE version check for WINSCW builds.
	37)	Change EVALID.PL to ignore more variations on pathnames when comparing .MAP files
	38)	Add compare_summary.pl, a utility for comparing two lots of scanlog.pl output.

2)	Uma
	1)	Fix Defect JUA-53ULTP "abld reallyclean wins" waits for the user input 
		in order to finish execution"

Version 0.01.301
================
(Made by William, 07/08/2001)

1)	William
	1)	Require 5.005_03 in BLDMAKE and MAKMAKE, so that pre 518 versions of Perl will
		explicitly fail early rather than fail during FindBin.
	2)	Extend support for EPOCROOT-relative paths to "SOURCEPATH" keyword, so that
		generated source files can be stored in the EPOC32\Build tree. Use something like
		
		  SOURCEPATH  \epoc32\build\generated\http
		  SOURCEPATH  +\build\generated\http

		to get files in %EPOCROOT%epoc32\build\generated\http.
	3)	Remove unnecessary EPOCROOT check in epocaif.pl
	4)	Turn up optimisation level in CodeWarrior UREL builds.
	5)	Change bldmake.pl to that "bldmake plat all" works in the way you'd expect, printing
		a list of all the supported platforms and the information for each one.
	6)	Update the ASSP file support so that the keyword SINGLE names the associated
		single ASSP and builds the additional platform description. Remove SISA.ASSP and
		add "SINGLE SISA" to the MISA.ASSP file.
	7)	Move all of the ASSP definitions out of E32PLAT.PM into .ASSP files.
	8)	Add genutils\ecopyfile.pl which acts like "copy src dst" except that it won't
		update dst if it's identical to src. Changed the various cl_*.pm modules in
		Makmake to use perl -S ecopyfile.pl instead of schemes based on diff -s
	9)	Abstract common parts of cl_gcc.pm, cl_win.pm and cl_codewarrior.pm into a shared
		file cl_generic.pm, and adjust accordingly. This changes the interface expected by
		MAKMAKE.PL, so the ide_vc6.pm file was also changed.
	10)	Provide cl_generic.pm support for accumulating the various MAKEWORK targets, and
		doing all of the directory creation.
	11)	Provide generic build of resource, bitmap and AIF files into \epoc32\data\Z, with
		backwards-compatibility copying from the central place into the \epoc32\release
		directories. This copying will stay for the emulated Z drives, but could be
		removed for the ARM targets.
	12)	Implemented support in the Win32-based platforms for DLLs which are both statically
		and dynamically linked (e.g. FXCM.DLL). This consists of putting the word

			COPY_FOR_STATIC_LINKAGE

		in the START WINS ... END section, and causes the generated makefile to build the
		DLL into the target directory and then copy it into the release\xxx\yyy directory
		used to resolve static linkage. This removes the need for some extension makefiles.
	13)	Reinstated some lost "perl -w" and "use strict;" checking for the "DEB" version 
		of e32toolp.
	14)	Revisited the "no target directory for WINC" and "missing TAREGTPATH for resources"
		handling. It's now consistent throughout, and avoids paths which expand to include
		two consecutive separators. In the process, I discovered that WINC was building
		SYSRESOURCE things into an "emulated Z drive" for WINC: clearly wrong so I applied
		the "no target directory policy" for WINC as well.
	15)	Added "-w nounusedexpr" to the list of globally disabled warnings in CodeWarrior
		builds: this unhelpfully reports uses of va_start(), TPckgBuf<TInt> and other
		entirely reasonable things.
	16)	Moved linkdeps.pl into e32toolp\bldmake, and deleted the old BATCH component
	17)	Added make.exe to e32toolp\group and bootstrap it via setupprj.bat. This is the
		Win32 native build of make 3.79.1, compiled with the HAVE_CASE_INSENSITIVE_FS option.
	18)	Changed BLD.INF syntax to accept

		    makefile    extension_makefile
		    nmakefile   extension_makefile   // invoke with nmake
		    gnumakefile extension_makefile   // invoke with make

		Currently "makefile" is a synonym for "nmakefile", but eventually I'd like to change
		it over and get rid of "gnumakefile" which is rather ugly.
		Currently the only "gnumakefile" extension Makefile is in RCOMP.
	19)	Changed BLDMAKE.PL and ABLD.PL to use MAKE rather than NMAKE, and generate the 
		appropriate GNU-style Makefiles in the \epoc32\build tree. This required a change
		to make 3.79.1, which is now labelled with "(Symbian build 002)".
	20)	Changed scanlog.pl to detect errors and warnings produced by MAKE as well as NMAKE.

1)	GregZ
	1)	Add first cut of MMP file support for specifying additional compiler options.
		The syntax is

		    OPTION <keyword> <rest of line>

		where the keywords are interpreted by the MAKMAKE back-ends. Currently the
		recognised keywords are CW, GCC and MSVC, and there is enough support to
		deal with "OPTION CW -W off" for turning off warnings in CodeWarrior builds.


Version 0.01.300
================
(Made by William, 02/05/2001)

NB. Requires ActiveState Perl 518 or later, otherwise MAKMAKE fails due to problems with FindBin.pm

1)	William
	1)	Changed MAKMAKE to use WINC\UREL\AIFTOOL.EXE rather than WINC\UDEB
	2)	Changed MAKMAKE to add "abld listing" support for WINS and WINSCW builds
	3)	Changed MAKMAKE support for "abld listing" so that the assembler listings
		are named 
		
		    <source_basename>.lst.<abi>
		    
		e.g. UP_TRP.lst.ARM4, UP_TRP.lst.WINS etc. Previously they were all called UP_TRP.lis
		Also changed the philosophy slightly: the listing file is still generated in the
		\epoc32\build tree, but the LISTING target now always copies the file, rather than
		copying it as a side-effect of generating it. This makes it easier to alternate 
		between UREL and UDEB versions.
	4)	Changed MAKMAKE to generate a MAP file for WINSCW release builds.
	5)	Improved support for ABIs defined via ASSP files: you can now specify ABI, ASSP, 
		ASSPABI and Single via the ASSP file, but with very limited error checking. 
		Changed MISA and SISA into targets defined by ASSP files to prove that it works.
	6)	Updated instcol.pl to allow for either WINSCW or WINS or both.
	7)	Added EPOCAIF.PL to generate AIF files, and changed MAKMAKE to use it. This involves
		adding an include path relative to the location of MAKMAKE.PL so that the SDK can ship
		a single shared AIFTOOL.RH which will do for all DFRDs. This contributes to fixing
		defect HET-4VEM87 "Location of release\winc on SDKs places restrictions on developers".
	8)	Fix defect ROS-4VNJTC "EVALID doesn't correctly compare x86 import libraries" by
		using "dumpbin /symbols /exports" as suggested.
	9)	Removed MNT.CMD from the moribund setver.bat script


Version 0.01.226
================
(Made by Morgan, 08/03/2001)

1)	Morgan
	1)	Altered MAKMAKE GCC platform (CL_GCC.PM) to include intrinsic libraries
			EDLLSTUB.LIB	- class Dll::
			EGCC.LIB		- helper functions not in EUSER.LIB


Version 0.01.225
================
(Made by Dennis, 05/02/2001)

1)	William
	1)	Fix defect HEY-4S7N73 "MAKMAKE doesn't force GCC to pass include directories to AS" by
		forcing the .s extension on assembler files to be uppercase. This causes GCC to put the
		assembler source file through the preprocessor first, which allows us to use the
		C preprocessor to organise assembler source. This area will need revisiting when we
		change to a non-GCC compiler for v7.
	2)	Fix defect ROS-4TAGHW "MAKMAKE should put .EXP files into the \epoc32\build tree"
	3)	Removed all remaining traces of MCORE - this will imply BLD.INF changes to remove
		it as well, since it's no longer a recognised platform.
	4)	Removed tool-related .IPR files, and the SETUPPRJ support for them
	5)	Fix defect ROS-4TFGCK "BLDMAKE -keepgoing does not prevent attempts to export 
		missing files" by rearranging the EXPORTS code in bldmake.pl

2)	William
	1)	Implement initial support for CodeWarrior 6.0 compiler, as WINSCW defining __CW32__
	2)	Revert to using LIB.EXE for generate import libraries, as MWLD doesn't seem to
		support this functionality.

3)	Zill
	1)	Fix defect ROS-4TFGAN "scanlog.pl should detect and report bld.inf warnings"


Version 0.01.224
================
(Made by Pete, 19/01/2001)

1)	William
	1)	Fix defect EDNRCHN-4DAMG8 "Small problem with MAKMAKE" by requiring the LINK.EXE
		output to contain a "version" line.
	2)	Don't export the DISTRIBUTION.POLICY document to engdoc\e32toolp, to fix
		defect ARG-4RJFNV "E32ToolP Exports a distribution.policy file ..."
	3)	Fix defect EDNABRY-4MLEWA "EPOCROOT error message could be more informative" by 
		checking separately for the unsupported use of a drive letter.
	4)	Apply the fix for empty path elements to all the other E32TOOLP scripts which
		use the same algorithm.
	5)	Fix defect ROS-4SMKB6 "MAKMAKE doesn't check TARGETPATH strongly enough"
	6)	Fix defect EDNAWIR-4NAM7R "Not possible to include a library for DEBUG only" by
		implementing the DEBUGLIBRARY keyword: MMP.PM now builds two lists, with LIBRARY
		statements contributing to both and DEBUGLIBRARY only contributing to the debug list.
		Tested with FLOGGER.LIB in PPP.MMP, which removed the MSVC LNK4005 warning.
	7)	Documented SRCDBG and DEBUGLIBRARY
	8)	Implement "BLDMAKE -K" to support IPR-filtered builds, and make genbuild.pl pass
		the keepgoing flag to bldmake.
	9)	Fix defect ROS-4RWF42 "MAKMAKE clean targets should not use wildcards", by
		converting the WHAT target into a RELEASABLES= list, then using it in both
		WHAT and CLEANRELEASE. This preserves the identity that CLEANRELEASE should
		remove exactly the things listed by WHAT.
	10)	Fix defect EDNWROS-4NULY5 "MAKMAKE can generate Makefiles containing lines longer 
		than 2048 characters" by using \ continuation in the relevant places.

2)	Jonathan
	1)	Added memtrace tool and documentation.


Version 0.01.223
================
(Made by RobertJ, 13/12/2000)

1)	William
	1)	Update MAKSYM.PL to cope with multiple ROM images in a single ROMBUILD.LOG file.
		Derive the name of the SYMBOL file from the ROM image name, except for the
		first ROM image where the SYMBOL file name can be overridden by the optional
		commandline argument. "maksym x y" will therefore behave the same as before, but
		"maksym x" will use a sensible name related to the ROM image rather than MAKSYM.LOG.
	2)	Update FIXUPSYM.PL to cope with multiple ROM images by stopping at the end of the
		first image. It needs to do this because the same file could appear in multiple
		extension ROMs, and live at a different address in each one.
	3)	Rearrange FIXUPSYM.PL internals to test things in a better order, and to give more
		meaningful explanations for some "can't fixup" conditions.
	4)	Fix defect ROS-4S6HRP 'MAKSYM can fail with "Empty compile time value..."' in MAKSYM.PL,
		FIXUPSYM.PL and HPSYM.PL by converting an empty path element into "."

1)	William
	1)	Update genbuild.pl to support licensee builds
		- Removed the old PVCS support and references to M*CORE
		- Replaced batch\build\special.bat with canned special case command
		  sequences in genbuild.pl
		- Validate components by checking for the presence of the BLD.INF file
		  and issuing a "MISSING COMPONENT" warning for those which don't have
		  BLD.INF files. Only components which pass this test are included in the
		  generated CMD files.
		- Generate additional script xxx_pbuild.cmd, so that genpbuild.pl functionality
		  is supported by genbuild.pl

 
Version 0.01.222
================
(Made by Alastair, 16/11/2000)

1)	William
	1)	Fix defect EDNABRY-4QDEN5 "Scanlog.pl doesn't pick up petran errors" by
		adding a check for "ERROR: bad relocation:", which is actually a warning that
		PETRAN has had to guess about the meaning of a relocation.
	2)	Fix defect EDNJLID-4QCGPS "Instcol batch tool not compatible with Win2000" by
		replacing the batch file with a Perl script.

2)	Alastair
	1)	Changed prepfile.pm so that it reports information about files
	  	included into the file that it's processing.  Updated makmake and
	  	bldmake error reporting to take advantage of the new information.
	2)	Added new build tool, metabld.pl.  For more information, see the
	  	documentation in \e32toolp\docs\metabld.rtf, which is exported to
	  	\epoc32\engdoc\e32toolp\.


Version 0.01.221
================
(Made by Nicolas, 10/10/2000)

1)	William
	1)	Fix defect EDNWROS-4N4JLF "ranlib can damage archive files" by not
		running ranlib. The ar command already generates the symbol
		directory, so ranlib is unnecessary.

2)	Nicolas
	2)	Introduced SRCDBG makmake keyword.  When it is specified (no
		argument), UDEB builds do not use the -O flag any more.  This is
		hopefully a temporary work-around that will be removed when every
		EPOC components build and run ok without optimisations.
	

Version 0.01.220
================
(Made by Dennis, 13/09/2000)

1) William
	1) Sundry M*Core changes to MAKMAKE
	2) Added "DefFile" key to E32PLAT.PM PlatHash, for selecting the style of DEF file or
	   predefined exports: this is used to implement the decision that MCORE will use BMARM
	   def files until such time as we find a name-mangling difference between GCC 98r2 & 99r1
	3) Put a test into BLDMAKE.PL so that the path is extended with the mcore-tools\pe\bin
	   directory for MCORE and MCGM builds. This allows the bootstrap to build for MCORE via
	   extension makefiles.
	4) Fixed various warnings from perl -w, e.g "ambiguous used of {xxx} resolved to {"xxx"}"
	5) Corrected messages about "EXPORTFROZEN" to say "EXPORTUNFROZEN"
	6) Added -Wno-unknown-pragmas to the GCC makefiles, to suppress MCORE warnings. It seems to
	   be harmless on the 98r2 GCC, so I've made it standard.
	7) Fix defect EDNCMOS-4NJJ5L "makmake error message incomplete if UID2 is wrong."
	8) Fix defect EDNRANS-4NQKXP "Can't build Opltran WINC tool under vc6"
	9) Change EPOCRC.PL to call RPREP, to support the generation of LOCKIT.


Version 0.01.213
================
(Made by Morgan, 5/7/2000)

1) Anon
	1) Changes to
	Change 43137
	//EPOC/development/base/6.0/e32toolp/BLDMAKE/BLDMAKE.PL#3
	//EPOC/development/base/6.0/e32toolp/PLATFORM/CL_WIN.PM#3


Version 0.01.212
================
(Made by MarkCa, 16/05/00)

1)	Alastair
	Fixed COMABRY-4JGKQ9 "Test T_R32 fails in UREL under WINS/WINC", by specifying
	the /Op option for all WINS/WINC UREL builds.  This flag disables optimisation of
	floating-point comparisons and gives better consistency in this area.


Version 0.01.211
================
(Made by Morgan, 7.4.2000)

1)	William
	Removed EBLD.BAT
	Updated MAKMAKE.IPR to reflect changes to Perl modules
	Removed LISTASM.IPR now that LISTASM.BAT has gone


Version 0.01.210
================
(Made by Alastair, 15.3.2000)

1)	Alastair
	MAKMAKE
	1)	PROJECT .mmp keyword no longer recognised by Makmake.
	2)	SUBPROJECT .mmp keyword no longer recognised by Makmake - SOURCEPATH
		keyword to be used instead.  SOURCEPATH works in the same way except
		that relative paths specified with the SOURCEPATH keyword are considered
		to be relative to the .mmp file directory rather than the top-level
		project directory.
	3)	UNICODEUID .mmp keyword no longer recognised by Makmake - there's now
		only one keyword for specifying UIDs - UID - which applies only for
		UNICODE builds of EPOC now that narrow builds are no longer supported.
	4)	Documentation in \e32toolp\docs updated for this release.

Version 0.01.209
================
(Made by Alastair, 10.3.2000)


1)	Alastair
	1)	Created new module, Trgtype.pm, which is loaded by Makmake and
	  	contains all the data pertaining to target types as Makmake
	  	understands them, including the mangled names for exports and second
	  	UIDs for polymorphic DLLs.
		Adding targettypes for new plugins should now simply be a matter of
		adding a new entry in the data structure contained in Trgtype.pm.

	2)	Reorganised Makmake.pl and Mmp.pm.

	3)	Fixed regression introduced in version 207 - NOTIFIER target type and
		FEP UID affected.  Also updated IDE_VC6.PM to counter NMAKE treating
		'$' symbols as macros when these symbols occur in mangled function
		names.

	4)	Added warning hint that generated headers should be included with
		angle brackets since these headers are generated into system include
		directories.

	5)	Change default .def file location from
			\<project>\B<platform>\
		to
			..\B<platform>	(relative to the .mmp file directory)

	6)	Changed build directory structure from 
			\EPOC32\Build\<project>\<executable_basename>\<platform>\<build>\
		to
			\EPOC32\Build\<absolute_path_to_mmp_file>\<mmp_file_basename>\<platform>\<build>\

	7)	Added new SOURCEPATH .mmp keyword.  This keyword works in exactly the
		same way as the existing SUBPROJECT keyword, except that relative
		paths (those specified without an initial backslash) will be treated
		as relative to the directory containing the .mmp file rather than the
		top-level directory specified by the PROJECT keyword.  The PROJECT and
		SUBPROJECT keywords will soon be removed from Makmake altogether.

	8)	The SOURCEPATH and bitmap-specific SOURCEPATH statements now default
		to the directory containing the .MMP file.

	MAKMAKE & BLDMAKE
	1)	Changed default makefile directory structure from 
			\EPOC32\Make\<project>\<platform>\
		to
			\EPOC32\Build\<absolute_path_to_mmp_file>\<mmp_file_basename>\<platform>\

	2)	Changed bldmake directory structure from
			\EPOC32\Bldmake\<project>\
		to
			\EPOC32\Build\<absolute_path_to_bld.inf_file>\

		Note that batch files listing tests created by bldmake will therefore
		be created in this new location, and the .IBY files used in building
		base roms will be generated into
		\EPOC32\ROM\<absolute_path_to_bld.inf_file>\.

		The batch files for running these tests will be ROM-built to Z:\test
		with a name which reflects the path to the relevant bld.inf file, e.g.
		Test\F32TEST.GROUP.ARMI.AUTO.BAT.

	BLDMAKE & ABLD
	1)	Added new section to BLD.INF files for exporting files for use with
		test code from source.  Syntax is

		PRJ_TESTEXPORTS
		[<source path>\<source file>]	{<destination>}
		// list each file exported from source on a separate line
		// {<destination>} defaults to BLD.INF dir

		The files will be exported as part of "ABLD TEST BUILD ..." as well as
		with "ABLD TEST EXPORT".  "ABLD TEST CLEANEXPORT" will remove the
		copied files.

	2)	Added new ABLD command, ABLD LISTING, to create an assembler listing
		for a particular source file.  Syntax is
		
		ABLD [test] LISTING [-k][-v] [<platform>] [<build>] [<program>] [<source>]

		Specify just the basename of the source file.  The listing file will
		be created in the build directory and copied to the same directory as
		the source file.
		This command replaces the LISTASM tool, which has now been removed.

	3)	ABLD.PL now changes directory to the directory containing the relevant
		BLD.INF file when it is invoked.  This change means that extension
		makefiles should be able to specify paths relative to the BLD.INF file
		specifying them rather than absolute paths.

	LISTASM
	1)	Replaced by ABLD LISTING command.  Type "ABLD HELP LISTING" for
	  	syntax.


	GENERAL
	1)	Updated SETUPPRJ.BAT to export E32TOOLP tools documentation from
		\e32toolp\docs to \epoc32\engdoc\e32toolp\.
		Updated this documentation so that it it up-to-date with this release
		of E32TOOLP, and will hopefully be edited for every future release.

	2)	Removed PARSECOM.PM. Makmake, Efreeze and Makedef now use Perl
		standard library command-line parser module - Getopt - instead.  This
		change means that only a hyphen ("-"), rather than a forward slash
		("/") or a hyphen, can be used to specify switches for these programs.

	GENBUILD
	1)	Added call for tools platform to create libraries now that some
		components create libraries for this platform.

2)	Jonathan
	FIXUPSYM
	1)	Only relink executables if they're not already fixed up for the correct
	  	ROM addresses.


Version 0.01.208
================
(Made by Pete 24/02/00)

1)	Alastair
	MAKMAKE
	1)	Applied hacks for building EUSER.DLL in the MSVC IDE as they
		are applied to command-line builds of EUSER.DLL.

2)	Jonathan
	1)	Merged in fixupsym and hpsym tools from ER5u e32toolp v134.


Version 0.01.207
================
(Made by Simon, 01/02/00)

1)	Simon
	MAKMAKE
	1)	Changed hardwired directory to new source structure
	2)	'PROJECT' keyword is now ignored in mmp files

Version 0.01.206
================
(Made by Dennis, 19/01/00)

1)	Alastair
	GENERAL
	1)	Removed obsolete tstparse.pl.

	MAKMAKE
	1)	Fixed Symbian defect EDNMRED-4E5NSD "VC6 always asks to build a dummy
		RSS file before execute".
	2)	Tools platform now refuses to build anything but EXE target types.
	3)	Now using perl script emkdir.pl to create directories in makefiles
		rather than mkdir because it can make paths all at one go under
		Windows95/98.
	4)	Added code so that Win32 resources can be specified with a path relative
		to the .MMP file as well as absolutely.
	5)	Changed flags for generating .PDB files in WINS builds so that .MMP
		files with a targetpath specified produce just one .PDB file in the same
		directory as the executable created.  This change should also enable
		debugging executables with target paths on different PC drives.
	6)	Created new .MMP Target type, "notifier", with a 2nd UID 0x10005522 and 
		1st export "IMPORT_C CArrayPtr<MEikSrvNotifierBase>* NotifierArray()".
		The targetpath for the executable will default to "system\notifiers".


	MAKMAKE & BLDMAKE
	1)	Added code to read a .ASSP module in \EPOC32\Tools for specifying a new
		ASSP.  Syntax for the module is

			ABI		[ARM4|ARMI]		# default is ARMI
		
		"ABI" specifies the Application Binary Interface for ASSP releasables, such
		as EDISP.DLL, which do not specify .MMP keywords ASSPABI, ASSPLIBRARY,
		or ASSPEXPORTS.
	2)	Added .ASSP modules for MMAD and MAWD, taking them out of E32PLAT.PM.
	3)	Removed platforms ARM3, MX86, SARM3, SROS, including ARM3 flags in
		Cl_arm.pm.
	4)	Changed MEIG and SEIG ASSPs to build for ARM4 rather than ARM3 hardware.
	5)	Changes to support partially MCORE development
		a) MCORE and MCGM have been added as platforms to E32Plat.pm.
		b) Cl_arm.pm has been renamed Cl_gcc.pm and MCORE-specific tools options
		incorporated.  The system path in MCORE makefiles is prefixed with the path
		to the MCORE gcc tools rather than the ARM gcc tools.
	6)	Changes put in as a side-effect of making the MCORE changes
		a)	GENERIC_WINS is no longer defined for preprocessing .MMP and BLD.INF
		files to mean WINS but not WINC or TOOLS.
		b)	__GCC32__ and __VC32__ are now defined for .MMP and BLD.INF
		preprocessing for compiler-specific conditions.
		c)	Minor changes to MAKMAKE.PL and MAKDEPS.PM.


	GENBUILD
	1)	Removed references to ARM3.


Version 0.01.205
================
(Made by Peter, 15/12/99)

MAKMAKE
1)	Peter
	1)	Modified E32PLAT.PM so that MEIG builds use ARM4 rather than ARM3.



Version 0.01.204
================
(Made by Morgan, 3/12/99)

1)	Alastair
	GENERAL
	1)	Removed dependence on latest version of perl from setupprj.bat, which was
		introduced in version 203.
	2)	Removed MNT.BAT and associated files.
	3)	Added emkdir.pl, a script for creating directory paths.


Version 0.01.203
================
(Made by Anonymous)

1)	Alastair
	MAKMAKE
	1)	Changed VC6 default configuration for all executables (WINS, WINC,
		TOOLS) to Debug rather than Release.

	2)	Removed -undef flag from the call to CPP to generate dependencies
		while it's not being used in compiling the source code.

	3)	Changed order of link dependencies in makefiles so that object files
		generated from the source files of a project are listed before import
		libraries the project links to.  This change means that the object files
		will be built even if a required import library is missing, rather than
		the build of the project failing immediately with nothing being built.

	4)	Added new perl script, ERMDIR.PL, to \EPOC32\Tools.  Makmake command-
		line generated makefiles now use this script to remove build directories
		with ABLD CLEAN, rather than deleting individual files.  RMDIR /S/Q
		unfortunately doesn't work under Windows95/98, hence the need for a
		script.

	5)	Fixed minor Windows95/98 syntax error in IDE workspaces:
			IF NOT %ERRORLEVEL%==0 ...
		has been changed to
			IF ERRORLEVEL 1 ...

	6)	(From Chris) added USERLDFLAGS macro for passing to calls to the GCC
		linker for re-linking executables for use with a debugger.

	7)	Added some dependency information for resource targets in the VC6
		supplementary makefile so that rebuilding is attempted more
		appropriately.

	MAKMAKE & BLDMAKE
	1)	Added -undef flag to the call to CPP to preprocess .MMP and BLD.INF
		files.  This fixes Symbian defect EDNRFID-4CPJY2 'Can't have source
		directory called "ARM"'.

	2)	Changed .MMP and BLD.INF preprocessor module so that it can be switch
		between upper-casing the contents of the processed file or leaving case
		alone.  BLDMAKE now uses the leave-case-alone mode so that exported files
		retain the case specified in the BLD.INF file.  MAKMAKE uses the upper-
		case mode.

	BLDMAKE
	1)	Extended ABLD -keepgoing option so that it is applied for NMAKE calls on
		particular project makefiles as well as to calls on the meta-makefiles for
		each component.

	2)	Improved ABLD error checking so that calls such as ABLD BUILD EWSRV ARMI
		will report an error because the platform is specified after the program
		rather than going on to build EWSRV for all supported platforms.

	3)	Bldmake bldfiles will now overwrite read-only abld.bat files.

	EFREEZE
	1)	Changed EFREEZE.PL to check whether the frozen .DEF file is writeable if
		there are new exports to be added to this file.  If the file is not
		writeable the script will exit with a suitable error message.  Fixes 
		Symbian defect EDNABAN-4CDFAK "Some abld commands die with read-only
		files".

	GENERAL
	1)	Changed SETUPPRJ.BAT to use GNU MAKE rather than NMAKE.  This means the
		Cygnus GNU tools need to be in the path before E32TOOLP can be built.


Version 0.01.202
================
(Made by Alastair 12/10/99)

1)	Alastair

	BLDMAKE & MAKMAKE
	1)	Removed support for the old GCC compiler.  Building for platforms MARM
		and SARM is no longer supported.  If MARM is specified as a platform in
		the BLD.INF file then it will still be expanded to mean ARM4, ARMI and
		THUMB but really these platforms should be listed explicitly or the
		default relied upon.

	MAKMAKE
	1)	Added list of source macros defined for preprocessing to the help
		displayed by MAKMAKE -PLAT <platform>.  This list isn't complete, since
		the definition of some macros will depend upon the contents of a
		particular .MMP file.  Unlisted macros are as follows:
			__MARM_<ABI>__ if the platform CPU is MARM
				(where <ABI> may vary according to .MMP contents),
			Any macros defined in the .MMP file,
			__DLL__ or __EXE__ respectively if the general target type is DLL or EXE,
			WIN32 and _WINDOWS if the project links to Win32 libraries,
			_UNICODE,
			_DEBUG or NDEBUG for Debug and Release builds respectively.

	2)	Added extratarget, RECREATEWORKSPACE, to the supplementary MSVC6
		workspace makefile.
		This target is intended for use as a custom tool within the MSVC IDE, for regenerating
		workspace once the .MMP file has been edited within the IDE.  To install the target as
		a custom tool in the IDE, select Tools->Customise...->Tools, and choose a name for the
		tool, e.g. "Recreate Workspace".  Next, type "nmake.exe" as the command and
		"-nologo -f $(WkspDir)\$(WkspName).sup.make recreateworkspace" as the program arguments.
		Leave the "initial directory" field blank, and tick the "Close window on exiting" checkbox.
		Having edited the .MMP file for a project, select the new tool from the tools menu to
		recreate the workspace.  If the commands have run correctly, you will be prompted to
		reload the workspace.

	3)	Changed makefiles to use DIFF.EXE (part of the GCC distribution from GCC
		version 523) rather than FC4BAT.EXE to compare generated headers.
		FC4BAT.EXE is no longer required.

	4)	Changed LIBRARY targets in static library makefiles so that they depend
		upon the UDEB and UREL targets.  This change means that the ABLD LIBRARY
		command will create static libraries as well as import libraries.


	BLDMAKE
	1)	Added BLDMAKE PLAT <platform> command, which lists the macros defined
		for the preprocessing of PRJ_MMPFILES and PRJ_TESTMMPFILES sections of
		BLD.INF files for the <platform> specified.

	2)	Now dynamically loading module PREPFILE.PM, which depends upon
		CHECKGCC.PM, so that CPP.EXE is checked only if it is going to be used.
		This change addresses ER5u defect EDNDFER-4BGN9L "BLDMAKE should not insist
		on CPP being in the right place unless it's going to use it."

	3)	Bldmake now generates a list of programs supported by each platform in a
		Perl data structure, so that ABLD can tell whether a particular program
		as specified on the ABLD command-line should be built for a particular
		platform.  Fewer obscure errors should now be produced by ABLD,
		especially since error reporting has been tidied up somewhat.

	4)	If the [platform] or [build] parameters are missed out of the ABLD
		command-line, they will be assumed to be "ALL".  This means that commands
		such as ABLD BUILD ECONS will build all the UDEB and UREL versions of
		ECONS for all the platforms specified in the BLD.INF file, as would
		ABLD BUILD ALL ALL ECONS.  This change means, as far as Engineering
		components are concerned, that components must avoid using the names of
		platforms and builds used during overnight building as the basenames of
		.MMP files or extension makefiles - MAWD, MISA, MCGA, TOOLS, UDEB, UREL,
		etc.
		
		These last 2 changes address the issues raised by ER5u defect EDNDFER-4BPE3P
		"It would be good if you didn't have to specify a platform".

	5)	Removed the "hidden" status of ABLD command CLEANEXPORT, so that it
		appears in the list of available commands.  This command will delete all
		the files generated with ABLD EXPORT.

	6)	Changed component makefiles that BLDMAKE generates so that
		\epoc32\gcc\bin on the current drive is added to the front of the PATH.
		This change will ensure that GCC tools on the current drive are used where
		custom builds make use of the GCC tools.

	EVALID
	1)	(From William) Updated EVALID.PL which can use \epoc32\tools\pfsdump to
		compare two EPOC permanent file stores.

	GENBUILD
	1)	(From William) some improvements to scanlog.pl.

	2)	(From William) a new alternative overnight genbuild log scanning script -
		complog.pl.



Version 0.01.201
================
(Made by Alastair, 17.9.99)

1)	Alastair

	LISTASM
	1)	Fixed problem with projects where the basename of the target is
		different from the basename of the project's makefile.
	2)	Added code to generate the build directory to contain the generated
		listing file.

	MAKMAKE
	1)	Fixed ER5U defect EDNGTIN-4BTGJU "Fatal error in vc6 .SUP.MAKE file".


Version 0.01.200
================
(Made by Alastair, 9.9.99)

1)	Alastair

	GENBUILD
	1)	(From William) Changed batch file output so that a list of executables 
		that should have been produced is added to the log file.
	2)	(From William) Added SCANLOG.PL, which summarises the output from
		GENBUILD.  Call "perl -S scanlog.pl < [genbuild_logfile]".

	MAKMAKE
	1)	Help now displays the EXPORTUNFROZEN keyword and the target types WLOG,
		VAR and KEXT.
	2)	Changed FEP targettype first export to the correct version following the
		change made to the function in CONE version 160.  This fixes ER5u defect
		EDNDBAR-4BHH87, "MAKMAKE's knowledge of the FEP interface is out of date".

	BLDMAKE
	1)	Changed ROM names of the batch file for running the tests for a
		component from <component>.auto.bat and <component>.manual.bat to
		<component>.<platform>.auto.bat and <component>.<platform>.manual.bat
		respectively.  This change will only affect E32TEST and F32TEST, since
		it's only the rombuild for these 2 components which makes use of the
		experimental .IBY files generated by BLDMAKE.


Version 0.01.127
================
(Made by Morgan, 26.8.99)

1)	Alastair

	MAKMAKE
	1)	Implemented new .MMP keyword, EXPORTUNFROZEN, which means "generate an
		import library containing frozen AND unfrozen exports".  If this keyword
		is specified, an import library containing all exports will be created
		as a side-effect of building the main target, instead of an import library
		being created directly from the frozen .DEF file.
		Note that, for the new ARM targets, extra import libraries for
		compatible targets will not be created, as they are when the import
		library is created directory from the frozen .DEF file.
		Note also that warnings about unfrozen exports will still appear.

	2)	Trapped error where duplicate bitmap targets are specified in a .MMP
		file.

	3)	Removed change to make the bitmap header lower-case in the makefile now
		that BMCONV doesn't use the case to decide the format for the enum in
		the generated header.

	4)	Changed PLATFORM\IDE_VC6.PM to make Debug rather than Release builds the
		default in the VC6 IDE.

	5)	Added 2 new experimental IBY file creation keywords, ROMTARGET and
		RAMTARGET.

	6)	Changed the target in makefiles called by ABLD -WHAT to WHAT rather than
		RELEASABLES - this doesn't apply to extension makefiles, where the
		target is still RELEASABLES.

	7)	Removed -LIST option which used to cause assembler listings to be
		generated.  This is now done with the new LISTASM tool, and support for
		this tool has been added to the generated makefiles.

	BLDMAKE
	1)	Allowed "ALL" to be specified as a platform so that it is possible to
		build, e.g., makefiles for all supported platforms for a particular
		project within a component using just one command.

	2)	Updated BLDMAKE\EGMAK.FIL with some more information about how to write
		extension makefiles for use with ABLD.

	3)	BLD.INF processing now allows platforms to be added to and removed from the
		default PRJ_PLATFORM list.  Keyword "DEFAULT", if specified, will be
		expanded to the list of default platforms - WINS, ARMI, ARM4 and THUMB with
		the new gcc compiler.  Prefix platforms to be removed from the default
		list with a minus sign [-], and add platforms simply by specifying them
		as usual.
		(This feature was actually implemented some time ago).

	4)	Added experimental code for creating .IBY files - this currently only
		works for E32TEST and F32TEST using the command ABLD TEST ROMFILE.

	5)	Added GENBUILD.PL (from William) and GENBUILD.BAT which produces an
		effect not dissimilar to "ABLD BUILD" for a list of components.

	6)	Added warning if the new gcc compiler is not installed that the new
		platforms, ARMI, ARM4, THUMB, etc. will not be available.

	LISTASM
	1)	New tool to generate an assembler listing for a particular source file.
		Syntax is

		LISTASM [platform] [build] [source_file]

		The tool searched for the .lis target corresponding to the source_file
		in the platform makefiles in \EPOC32\Make, and executes the command to
		generate the .lis directory along with the .o file in the intermediate
		files directory, and then copy this file to the source_file directory.
		Only GCC makefiles support this tool.


Version 0.01.126
================
(Made by Alastair, 19.8.99)

1)	Alastair

	BLDMAKE
	1)	Fixed problem with target FINAL not being called in extension makefiles.


Version 0.01.125
================
(Made by Alastair, 18.8.99)

1)	Alastair

	GENERAL
	1)	Jumped the version numbers because release 120 erroneously reports
		itself as version 124.

	2)	Added new #defines for BLD.INF and .MMP preprocessing for the new
		compiler targets
			ARMI defines MARM_ARMI
			ARM4 defines MARM_ARM4
			THUMB defines MARM_THUMB
			ARM3 defines MARM_ARM3

		These #defines aren't applied for ASSP-specific platforms such as MAWD
		since we can't know the final ABI until we've processed the .MMP file.


	MAKMAKE
	1)	Added new .MMP keyword, ASSPABI, for use in deciding the ABI for
		projects built for ASSP-specific targets.  See note MAKMAKE #1 for
		E32TOOLP version 120 - ASSPABI is implied by ASSPEXPORTS or
		ASSPLIBRARY.

	2)	Removed support for creating VC5 makefiles.

	3)	Added warning during Win32 makefile creation if MSVC6 Service pack 3
		is not installed.

	4)	Using -march=armv4t for ARM4, to allow direct use of BX in the kernel,
		where the component is built for ARM4 but the platform can support thumb
		instructions.

	5)	Added 2 new target types, KEXT and VAR, for kernel extension DLLs and
		variant DLLs respectively.  Variant DLLs export the function
		VariantInitialise__Fv at ordinal one for ARM platforms, and link to
		EVAR.LIB rather than EDLL.LIB.  Kernel extension DLLs link to EEXT.LIB
		rather than EDLL.LIB.

	6)	Added code to apply .MMP keyword ASSPABI implicitly for known kernel
		target types - KEXT, LDD, PDD and VAR.

	7)	Added new target type, WLOG, for WSERV logging DLLs.  These DLLs export
		the function CreateDebugLog(int, TDesC16 &) at ordinal 1, and have
		second uid 0x10003b23.


	EFREEZE/MAKEDEF
	1)	Minor change in E32UTIL\DEFUTL.PM so that an EXPORTS statement without
		a subsequent EXPORT definition can have blank space following it.


	BLDMAKE
	1)	Renamed the batch file BLDMAKE creates from BLD.BAT to ABLD.BAT to give
		it a name less likely to clash with batch files already in existence.
		The "A" could be said to stand for "Automated".

	2)	Changed ABLD.BAT syntax, which is now as follows

		ABLD [test] BUILD ( ( [-check] | [-what] ) | ( [-k] [-s] [-v] ) )  [<platform>]  [<build> [<program>] ]
			(this command combines the EXPORT, MAKEFILE, LIBRARY, RESOURCE, TARGET, and FINAL commands).
		ABLD [test] CLEAN ( ( [-check] | [-what] ) | ( [-k] [-v] ) )  [<platform>]  [<build> [<program>] ]
			(removes everything that would be created by the corresponding TARGET command)
		ABLD EXPORT ( ( [-check] | [-what] ) | ( [-k] [-v] ) )
			(copies the exported files to their destinations)
		ABLD [test] FINAL  [-k] [-v]   [<platform>]  [<build> [<program>] ]
			(allows extension makefiles to carry out any build activities necessary after other build activities have been completed)
		ABLD [test] FREEZE  [-k] [-v]  [<platform>]  [<program>]
			(freezes exported functions in a .DEF file)
		ABLD HELP ( [commands] | [options] | [<command>] )
			(displays lists of commands or options, or help about a particular command)
		ABLD [test] LIBRARY  [-k] [-v]  [<platform>]  [<program>]
			(builds the import libraries from the frozen .DEF files)
		ABLD [test] MAKEFILE ( ( [-check] | [-what] ) | ( [-k] [-v] ) )  [<platform>] [<program>]
			(creates makefiles or IDE workspaces)
		ABLD [test] REALLYCLEAN ( ( [-check] | [-what] ) | ( [-k] [-v] ) )  [<platform>]  [<build> [<program>] ]
			(as for the CLEAN command, but also removes exported files and makefiles)
		ABLD [test] RESOURCE [-k] [-v]  [<platform>]  [<build> [<program>] ]
			(creates resource files, bitmaps and AIFs)
		ABLD [test] TARGET ( ( [-check] | [-what] ) | ( [-k] [-s] [-v] ) )  [<platform>]  [<build> [<program>] ]
			(creates the main executable, and also the resource files, bitmaps and AIFs)
		ABLD [test] TIDY [-k] [-v]  [<platform>]  [<build> [<program>] ]
			(removes releasables which need not be released from a component)

		Options -k, -s and -v can also be specified as -keepgoing, -savespace and
		-verbose respectively. Specifying -k will mean unrelated build activies will be
		carried out after errors, -s causes intermediate files to be deleted if building
		the main executable is successful and -v displays the calls to tools taking
		place within makefiles during building. Options -what and -check can also be
		specified as -w and -c respectively. Specifying -what will display the files
		which will be created or deleted by a particular command, while -check will
		check that all the files which would be displayed by -what actually exist.


2)	Jonathan

	MAKSYM
	1)	Relax sanity check so that only .text needs to be found in
	  	rombuild.log.
	2)	Include data files in the output.



Version 0.01.121
================
(Made by Alastair, 4.8.99)

1)	Alastair

	GENERAL
	1)	Added GROUP\BUILD.TXT which contains a brief explanation of how to build
		E32TOOLP.

	EFREEZE
	1)	Fixed problem with 'EXPORTS' not being added to the top of empty frozen
		.DEF files when freezing for the first time.

	MAKMAKE
	1)	Fixed problems with RELEASABLES targets in generated makefiles - target
		paths for bitmaps were being missed out as was the data path for system
		resources.

	2)	Fixed problem with generating VC6 workspaces for projects incorporating
		resource files.

	3)	Added some #defines for source code preprocessing (there are no
		corresponding #defines for .MMP preprocessing for these #defines):

			Platform		#define
			ARMI			__MARM_ARMI__
			ARM4			__MARM_ARM4__
			THUMB			__MARM_THUMB__
			ARM3			__MARI_ARM3__
			

	BLDMAKE
	1)	Removed TESTBATS target - batch files for test programs are now created
		with "BLDMAKE BLDFILES" if required.

	2)	Added temporary code to include ARMI, ARM4 and THUMB as targets for the
		new gcc compiler if MARM is specified explicitly as a platform in a
		BLD.INF file.

	3)	Changed output from BLD -CHECK so that missing releasables are listed to
		STDERR in the following format

		MISSING: <first missing releasable>
		MISSING: <second missing releasable>
		  ...

	4)	Changed "Nothing to do" report so that it is applied on a per-target basis
		rather than on a per-makefile basis in the makefiles that BLDMAKE creates.
		This means that the "Nothing to do" message is not produced by BLD -CHECK
		or BLD -WHAT with projects that don't have any releasables or any test
		releasables or any exports.

	5)	Changed BLD.PL so that if ALL is specified as the build parameter, then
		BLD.PL loops round the available builds for the platform making the
		relevant calls to NMAKE rather than calling NMAKE once with the
		corresponding ALL target specified.  This means that custom-build
		makefiles written for use with BLDMAKE will no longer have to attempt to
		deal with $(CFG)==ALL.




Version 0.01.120
================
(Made by Alastair, 2.8.99)

1)	Alastair

	MAKMAKE
	1)	Added support for the 3 new GCC compiler platforms - ARMI, ARM4 and
		THUMB.  Also added support for ARM3, which is effectively old MARM 
		built with the new GCC compiler.  Compatible import libraries are
		produced as well as the import libraries for the new platform in
		question - so, for example, if a DLL is built for ARM4 then an ARMI
		import library will also be produced.
		ASSP platforms built with the new compiler will build a selection of
		interworking/plain arm executables depending upon whether ASSPEXPORT or
		ASSPLIBRARY statements are present in the relevant .MMP files:

					ASSPEXPORT/ASSPLIBRARY		otherwise
		MAWD		ARM4						ARMI
		MCGA		ARM4						ARMI
		MEIG		ARM3						ARM3
		MISA		ARM4						ARM4
		MMAD		ARM4						ARMI
		SCGA		ARM4						ARMI
		SEIG		ARM3						ARM3
		SROS		ARM4						ARMI

	2)	Added code so that bitmap headers are only generated into
		\EPOC32\Include if the contents of the header file have changed.  A
		change is required to BMCONV so that the generated file name is
		omittted from the header before this will work properly.

	3)	Removed -REL option.  Now, targets RELEASABLES and RELEASABLES<build>
		are added to generated makefiles so that
		 nmake -nologo -s -f <makefile> RELEASABLES will display a list of
		releasables that a build of the makefile will produce.

	5)	Added new target type, EPOCEXE, for executables within EPOC
		launchable from the shell.  On the target machine these executables have
		no exports and are built as EXEs.  In the Emulator, on the other hand,
		these executables are built as DLLs which export a single function
			EXPORT_C TInt WinsMain()
		at ordinal 1, to be called by the "EXE recogniser" when the executable
		is launched.  Makmake supplies the mangled name of this function at link
		time so there is no need to specify a .DEF file for these target types
		under any platform.  EXEDLL is still supported as a separate targettype
		so that an EXE under EPOC can export functionality to client DLLs, and
		if no exports are required under EPOC then a dummy function will still
		have to be exported at least until the new gcc compiler is available.

	6)	"MAKMAKE <project> VC5" is no longer specifiable - VC6 must be specified
		instead.  VC5 workspaces are still supported and will be created instead
		of VC6 workspaces if the VC5 version of LINK.EXE is found first in the 
		system path.

	7)	Changed default first library from E(DLL|EXE).o under MARM and
		E(DLL|EXE).obj under WINS to E(DLL|EXE).LIB under all platforms.  This
		change means that building with this version of E32TOOLP requires E32
		version 195.

	8)	Removed support for NARROW builds - these changes include
		a)	Removed support for .MMP UID keyword.
		b)	Only one frozen .DEF file is expected to exist for each DLL|EXEDLL,
			though the 'U' basename suffix will still be applied unless the
			NOSTRICTDEF file keyword is specified.
		c)	The generated .DEF file is now created in the directory above where
			it used to be - e.g. in \epoc32\build\e32\euser\wins\ rather than
			\epoc32\build\e32\euser\wins\udeb\.  This means that you can freeze
			using either build, rather than having to freeze using the debug
			build under WINS and the release build under MARM.
		d)	The LIB(UNICODE|NARROW) FREEZE(UNICODE|NARROW) targets have been
			removed from generated makefiles.

	BLDMAKE
	1)	Default BLD.INF platforms now depend upon which version of the GCC
		compiler is in use.  With the old compiler, the platforms are WINS and
		MARM, with the new, WINS, ARMI, ARM4 and THUMB.
		If platforms are explicitly listed in the BLD.INF file and both the old
		and new compilers are being used intermittently then list all the
		platforms necessary for both compilers in the BLD.INF and Bldmake will
		silently remove any that aren't appropriate to the compiler in use.
		Bldmake detects at run-time whether the new compiler is in use, as does
		Makmake, and changes its behaviour accordingly.

	2)	Added -what option to BLD.PL.  BLD -what <platform> <build> <.MMP base>
		will now display a list of releasables.  Releasables will not be
		displayed where .MMP files are listed in the BLD.INF file with the TIDY
		keyword.  This option replaces BLDMAKE's RELFILES target, which has been
		removed.  The option requires MAKMAKE to have generated the makefiles
		for the component since it utilises the new RELEASABLES target in the
		generated makefiles.

	3)	Added -check option to BLD.PL.
		BLD -check <platform> <build> <.MMP base> will check that releasables
		have been created and send a list of those that have not to STDERR.

	4)	Changed BLD -LIB option now that narrow builds are no longer supported.
		There is no longer a need to specify UNICODE or NARROW as the second
		parameter, just use BLD -LIB <platform> {<.MMP basename>} instead.

2)	Jonathan

	MAKSYM - Replaces C++ version formerly in e32tools. Changes are: 
	1)	Added support for GNU ld version 2.9-psion-98r2. Can still parse map
	  	files produced by ld 2.6.
	2)	0-length functions/labels are eliminated from the output file. This is 
	  	probably a defect rather than a feature.
	3)	The last function in the .text segment has its length calculated
	  	correctly when using ld 2.9 map files, and fairly correctly when
	  	using ld 2.6 map files.


Version 0.01.113
================
(Made by Alastair, 21.7.99)

1)	Alastair

	MAKMAKE
	1)	Refined checkgcc.pm so that it doesn't object to GCC being installed
		on a substituted drive under Windows95/98.

	2)	Changed MAKEWORK<build> target in command-line makefiles so that it is
		depended upon by the RESOURCE<build> target rather than the <build>
		target so that the work directories are created even if just the
		RESOURCE<build> target is being created.

	3)	Fixed SGCA platform so that it's ASSP is MCGA rather than MEIG.

	4)	Changed BITMAP keyword .MMP processing so that the order of source
		bitmaps as specified in the .MMP file is preserved.


Version 0.01.112
================
(Made by Alastair, 15.7.99)

1)	Alastair

	MAKMAKE
	1)	Added TARGETPATH statement syntax to START BITMAP ... END blocks.  If a
		path is specified with this keyword, it will be added to
		\EPOC32\Release\WINS\<build>\Z\ and act as the location for the target
		bitmap.  If this statement is not used then the bitmap will be created
		in the directory specified by the main .MMP TARGETPATH statement as
		before.

	2)	Changed pre-link step in MSVC makefiles for DLLs so that, rather than
		having several pre-link step calls to equivalent commands in command-
		line makefiles, there is one call to nmake on <project>.sup.make, which
		contains the command-line equivalent commands.  If this nmake call
		fails, then the export object that these commands might create is
		deleted so that the second-stage link fails rather that misleadingly 
		reporting no errors.
		Also defined $(PATH) in <project>.sup.make so that the path here is the
		same as the path was when Makmake generated the file - this should solve
		problems relating to MSVC's strange concept of paths in custom-build
		steps.

	3)	Added post-build step in MSVC makefiles to create the import library
		from the frozen .DEF file so that MSVC build behaviour is the same as
		command-line build behaviour in this respect.

	4)	Changed resource building in MSVC so that most of the work is done in
		<project>.sup.make rather than in the error-prone custom-build step.

	5)	Added -pipe switch to GCC calls in arm makefiles.  This flag should
		speed up compilation by having GCC use pipes rather than temporary files
		to communicate between the various stages of compilation.

	6)	Changed testing of LINK.EXE version number so that a warning about
		needing MSVC5 Service Pack 3 is not generated when using MSVC6.

	7)	Changed CLEANBUILD targets in WINS command-line makefiles so that
		incremental linker files in the RELEASE directory are deleted too.

	8)	Re-implemented mechanism for defining macros on the NMAKE command-
		line using the $(USERDEFS) NMAKE macro due to popular demand.


	MAKEDEF
	1)	Changed warning about frozen exports not being found in the object files
		into an error so that it stops the build after a new .DEF file is
		generated.

	2)	Re-organised error and warning reporting so that clicking on the output
		message in the MSDEV output window will bring up the relevant frozen or
		generated .DEF file at the appropriate line number.


	BLDMAKE
	1)	Removed terminating backslash from directory name where tests are applied
		to check that the directory exists, because some older versions of
		Perl like build 307 can't cope with that.

	2)	Disable check for duplicate platforms specified in BLD.INF files in
		case bld.inf files #include bld.inf files from sub-components.

	GENERAL
	1)	Changed system for building E32TOOLP so that it's more Windows95/98
		friendly.


Version 0.01.111
================
(Made by Alastair, 12.7.99)

1)	Alastair

	MAKMAKE
	1)	Added new RESOURCE<build> targets to generated makefiles.

	2)	Added temporary change so that WINC static libraries are built and linked
		against in directory \EPOC32\Release\WINC rather that
		\EPOC32\Release\WINS.


	BLDMAKE
	1)	Added option to BLD.PL, -RESOURCE, which will invoke the new RESOURCE<build>
		targets in Makmake-generated makefiles.  In other words, this option will build
		just the bitmaps, aifs and resource files for a component and no
		binaries or import libraries.
		Any custom-build makefiles incorporated into the Bldmake system with the BLD.INF
		MAKEFILE keyword will need to add RESOURCE: targets or errors will be reported.
		
	2)	Changed default build for BLD.PL with no options specified or the -savespace
		option specified.  The default used to be DEB for WINS and REL for MARM.
		It's now ALL whatever the platform.

	3)	Bldmake relfiles command can now handle multiple releasables listed on
		the same line by Makmake's -rel flag or custom-build makefiles'
		RELEASABLES target.  The command splits on whitespace unless spaces
		occur within quotation marks.



Version 0.01.110
================
(Made by Alastair, 6.7.99)

1)	Alastair

	MAKMAKE
	1)	Generated command-line makefiles now contain comments providing the name
		of the .MMP file, the target, target type and general target type.
	2)	Fixed CLEAN targets for resource files so that they now delete XXX.R* 
		files rather than XXX.R.* files.
	3)	Updated -REL flag to include releasables for resources, bitmaps and
		aifs in the list of releasables produced.
	4)	Changed AIF handling so that colour depth settings and bitmaps are
		optional parameters rather than mandatory.


	BLDMAKE
	1)	Changed bldmake bldfiles so that a perl file BLD.PL is no longer
		generated.  Instead, there is just one BLD.PL in \EPOC32\Tools which is
		invoked by the respective \<project>\group\bld.bat files with a path to
		the generated bldmake files.  Among these generated files is
		PLATFORM.PM, which contains information about the platforms that a
		particular project supports; this module is loaded by BLD.PL at run-
		time.
	2)	Fixed erroneous assumption that bld.inf files won't list .MMP files in
		another top-level directory which was causing makmake and bldmake to
		disagree about the destination of makefiles generated with the -D switch.
	3)	Changed BLDMAKE so that it will fail if not called from the directory
		containing the BLD.INF file.
	4)	Changed BLDMAKE output directory so that if the BLD.INF directory is not
		a two-level directory the second-level directory of which is called
		"GROUP" then the output directory will be
			\EPOC32\Bldmake\<full-path to BLD.INF file>\ rather than
			\EPOC32\Bldmake\<first-level directory of BLD.INF path>\.  This is a
		temporary move to support developers external to Symbian.

	GENERAL
	1)	Added fetcher definition file, E32TOOLP.FTC, to the group directory.


Version 0.01.109
================
(Made by Alastair 29.6.99)

WARNINGS
1)	EBLD commands may be broken by change (11) to MAKMAKE below, if such a
	command invokes MAKMAKE with the -D switch.

1)	Alastair

	MAKMAKE
	1)	Updated Cl-arm.pm to be switchable between the current version of the
		gcc compiler we use and the newer Gcc29.
	2)	Removed a "t", standing for thumb, from one of the new Gcc29 plain ARM
		flags.
	3)	Added CLEANBUILDALL target as a synonym for CLEANBUILD in command-line
		makefiles.
	4)	Removed warning about NARROW .DEF files not being found.
	5)	.MMP files are now included in generated IDE makefiles as source documents
		by default.  You'll now get a warning if you're already
		specifying your .MMP files with the DOCUMENT keyword.
	6)	Added warning when creating Win32 makefiles which appears if MSVC5
		Service Pack 3 is not installed.
	7)	Added new .MMP keyword, MACRO, for specifying user-defined macros for
		source code preprocessing.  Letters in MACROS will always be upper-
		cased.  It's no longer possible to define macros on the NMAKE command-
		line using the $(USERDEFS) NMAKE macro.
	8)	.MMP files now support bitmaps.  .MMP syntax is
			START BITMAP <target>
			{HEADER}
			SOURCEPATH	<source path>
			SOURCE		<colour depth> <list of source .BMP files>
			END
		SOURCE and SOURCEPATH statements can be repeated any number of times -
		the directory specified with the SOURCEPATH statement will apply for all
		subsequent SOURCE statements.  There is no support for localisation of
		bitmaps.  Colour and black-and-white bitmaps should be specified as
		separate entities.  There is currently no support for building bitmaps
		within the MSVC IDE.
		A lot of source files appear to incorrectly user #include generated
		headers rather that system #include them with angle brackets.
	9)	.MMP files now support application information files.  .MMP syntax is
			AIF	<target> <source path> <resource> \
				<colour depth> <list of source .BMP files>
		Colour and black-and-white .AIF files should be specified as separate
		entities.  Only one colour depth may be specified for all source .BMP
		files.  There is no support for localisation of .AIF files and currently
		no support for building .AIF files within the MSVC IDE.
	10)	Fixed problem with building resources in the MSVC IDE - include paths
		for .RSS file preprocessing are now specified relative to the .DSP file
		rather than relative to the working directory where the command to
		create the .DSP file was invoked.
	11)	Changed MAKMAKE -D switch so that makefiles are created in
		 \EPOC32\Make\<project>\<platform>\ rather than
		 \EPOC32\Make\<platform>\.  This change is to prevent clashes during
		overnight builds where different components have .MMP files with the
		same name.
	12)	Added --thumb-entry LD.EXE flag for THUMB builds.
	13)	Changed build and release directories for static libraries so that,
		for example, static libraries will always build into
		\EPOC32\Release\MARM... rather than \EPOC32\Release\MAWD.  This change
		may have to be redressed should code for static libraries need to
		differ for different ASSPs or between single and multi-process versions
		of EPOC, though this is not currently the case.

		
	MAKMAKE & BLDMAKE
	1)	GENERIC_WINS is now defined for preprocessing of .MMP files and BLD.INF
		files for platforms WINS and VC5, while GENERIC_MARM is defined for
		platform MARM - this macro effectively means "just MARM", as opposed to
		MAWD, MEIG, MISA, etc. all of which define the MARM macro too.


	BLDMAKE
	1)	Updated BLDMAKE.PL with a few of William's suggestions to check for
		missing/duplicate exported files, create .MAKE files rather than .MAK
		files and other bits and bobs.  Also,  if the BLD.INF file for your
		component isn't in a subdirectory called "Group" then BLDMAKE generates
		it's work files into \EPOC32\Bldmake\<full path to BLD.INF dir>\ rather
		than \EPOC32\Bldmake\<component>\.
	2)	Added option -savespace to generated BLD.BAT for building as normal
		except that if the build is successful then the intermediate files will
		be deleted from the build directories.
	3)	Changed "TEST" command-line argument so it needn't be specified before
		any of the available options, it still needs to be the first of the
		argments though.
	4)	Bldmake bldfiles now always creates meta-makefiles for exports, programs
		and test programs.  If these makefiles have nothing to do when they are
		invoked they report the fact.
	5)	Added syntax for specifying custom-build makefiles.  Specify these in
		the PRJ_MMPFILES section of BLD.INF with keyword MAKEFILE.  All
		subsequent arguments are the same as for .MMP files.  See
		\e32toolp\bldmake\egmak.fil for an example custom-build makefile.
	6)	Changed BLD.BAT help so that it's printed to STDOUT rather than STDERR
		so that it doesn't scroll off the screen with 'bld |more'.
	7)	Changed BLDMAKE.PL so that BLD.INF is not preprocessed for VC5 and WINS
		platforms everytime.


	OTHER
	1)	Removed superseded EVALID.CMD.

Version 0.01.108
================
(Made by Alastair, 9.6.99)

This release requires VC5 Service Pack 3 to be installed.

You can tell if VC5 SP3 is installed by typing link without any arguments and 
checking the version number.  If the version is 5.10.7303 you have SP3 installed.  
You can get SP3 from directory "\\sentinel-main\ualastrb\VS97_SP3".

EXTRA INFORMATION
	0)	Some of the changes below have been adjusted so that this version of
		E32TOOLP will continue to work with projects which depend upon E32
		version 186 and earlier versions.
	1)	\EPOC32\LINK\ has been renamed \EPOC32\RELEASE\ for temporary backwards
		compatability.  The UNICODE sub-directory has been renamed UDEB under
		WINS and UREL under MARM, the NARROW sub-directory has been renamed DEB
		under WINS and REL under MARM.
	2)	Targets will attempt to link to [EDLL|EEXE].o under MARM and
		[EDLL|EEXE].obj under WINS for the moment.
	3)	Flag -undef will not yet be used in gcc calls because an extra #define
		is required in the E32 source code for this to work.

MAKMAKE
	0)	Renamed zip file in S:\e32toolp\zip\ from E32TOOLP.<ver> to TOOLS.<ver>.
		The files within this zip file now also have full pathnames so ensure
		you unzip them into the root of your EPOC drive with any flags required
		to recreate the directory structure.

	1)	Changed makefiles so that import libraries can be generated separately
		from dlls, direct from the frozen .DEF file.  Import libraries are now
		generated into directory \Epoc32\Link\[platform]\[NARROW|UNICODE]\. 
		nmake /f [makefile] [LIB|LIBUNICODE|LIBNARROW] can be used to generate
		the import libraries, though the libraries will be generated anyway during
		command-line builds.  This change means that new exports you add to your
		component won't appear in the component's import libraries until the new
		exports are frozen.

	2)	Changed DEFFILE .MMP keyword so that, whether the keyword is used or not,
		the default .DEF file name, \[project]\B[platform]\[target basename].DEF,
		will be applied if no other filename is specified.  If a .DEF file does
		not exist for DLL or EXEDLL targets, warnings will be issued about the 
		project not being frozen.

	3)	Added new makefile targets to command-line makefiles to make freezing
		easier - FREEZE, FREEZEUNICODE and FREEZENARROW.  Use
			nmake /f [makefile] [target]
		to freeze a component.  The makefile will call perl on EFREEZE.PL to
		compare the frozen .DEF file, if it exists, with the new one and insert
		any new exports into the frozen .DEF file.  Once the project has been
		frozen, regenerate the makefile so that it won't produce warnings and
		will reference the frozen .DEF file in the right places.  The .MMP file
		need not be altered to include a DEFFILE statement as with previous
		versions of E32TOOLP.
		Use xcopy /e *.def *.frz or a similar command if you wish to back up
		your .DEF files before freezing.
		ARM targets will take the new .DEF files from the REL and UREL build
		directories, while Win32 targets will take the new .DEF files from the
		DEB and UDEB build directories.

	4)	Changed build directory to
			\EPOC32\Build\[Project]\[Target basename]\[platform]\[build]\.

	5)	Removed LONGBLDPATH keyword.

	6)	Removed NOBROWSEINFO keyword, which was specific tocommand-line Win32
		makefiles.

	7)	Removed support for MSVC4 makefiles.

	8)	Remove -CLEAN and -MAKEWORK flags.  Using NMAKE on the clean and makework
		targets in the generated makefiles to carry out these tasks is more versatile 
		and more efficient.

	9)	Changed targettype LIB so that it builds static libraries properly.
		DLLs and EXEs will now link to EDLL.LIB and EEXE.LIB respectively,
		rather than EDLL.OBJ and EEXE.OBJ.  This change means that components
		built with this version of E32TOOLP will require the latest version of
		E32, and won't be able to build using the latest version of E32 and old
		versions of E32TOOLP.

	10)	Static libraries are now generated into
		\Epoc32\Link\[platform]\[build]\.

	11)	Added new .MMP keyword, STATICLIBRARY, for specifying that a target
		links to static libraries.

	12)	Removed OBJECT keyword, for linking a target to pre-compiled objects.
		This keyword wasn't working under ARM builds anyway. If your project
		links to pre-compiled objects you can list them as static libraries
		using the new STATICLIBRARY keyword instead - and preferably get them
		supplied as static libraries rather than object files.

	13)	Changed VC5 makefiles to use a pre-link command which calls link.exe,
		dumpbin.exe, makedef.pl, and lib.exe as command-line makefiles do.
		This should mean that DLLs built in VC5 are generated in exactly the 
		same way as DLLs built with command-line makefiles, though the import
		libraries will not be generated.  This procedure also avoids the
		warnings about exports being defined multiple times.

	14)	Added custom build step for building resources within the VC5 IDE.  This
		change addresses EDN934964
		"MAKMAKE should integrate EIKRS as a custom build step".  All resources
		specified for a project should be compiled automatically for all
		languages specified.  Strangely, VC5 seems not to be able to find
		rcomp.exe and fc4bat.exe if these tools are invoked without a path,
		but has no problems with CPP.EXE - even if no system path to CPP.EXE is
		set.
		Unfortunately, if a .RSC file is custom-built within the IDE, MSVC assumes
		it is a Windows resource file and tries to link it with the main target,
		which causes an error.  To avoid this problem a change	 has been applied so
		that, if building a resource file for language SC, the output file as far as
		MSVC is concerned is a .RSC.dummy file, which is created whenever the .RSC
		file is created.

	15)	Added new targettypes for some types of polymorphic dll.  These are
			ANI	- animation dlls
			CTL - system controls
			FEP - front end processors
			MDA - media server plug-ins
			MDL - mime recognisers
			OPX - OPL extensions
			PDL - printer drivers
			RDL - recognisers
		If any of these targettypes is specified and no deffile is specified
		then makmake will ensure the correct functions are exported at ordinal
		1, and, in some cases, ordinal 2.  Makmake will also put in the correct
		second uid if no uids are specified.

	16)	If a polymorphic dll of recognised type has the wrong second uid a
		warning will now be issued.  Note that if such a dll, e.g. an APP,
		specifies the second uid as zero ("0" or "0x00000000") the correct
		second uid for that polymorphic dll will be applied.  This is useful
		when you want makmake to handle the second uid but you want to specify
		an additional third uid.

	17)	Added command-line flag, /PLAT [platform] which displays platform-
		specific .MMP file syntax.

	18)	Removed __PSISOFT32__ macro now that we have __SYMBIAN32__ defined for
		all projects.

	19)	Removed __XCON__ macro which had been defined for __WINC__ builds.

	20)	Default .DEF file directory for __WINC__ .DEF files is now
		\[project]\BWINS rather than \[project]\BWINC.

	21)	Added new module, E32PLAT.PM, which replaces WINS.PM, MARM.PM, etc,
		containing data about all the platforms currently supported by Epoc.
		Current platform defines are now as follows:
		(all these macros begin and end with a pair of underscores).

		All		__SYMBIAN32__ __PSISOFT32__

		MARM	__GCC32__ __EPOC32__ __MARM__
		MAWD	__GCC32__ __EPOC32__ __MARM__ __MAWD__
		MCGA	__GCC32__ __EPOC32__ __MARM__ __MCGA__
		MEIG	__GCC32__ __EPOC32__ __MARM__ __MEIG__
		MISA	__GCC32__ __EPOC32__ __MARM__ __MISA__
		MMAD	__GCC32__ __EPOC32__ __MARM__ __MMAD__
		SARM	__GCC32__ __EPOC32__ __MARM__          __SINGLE__
		SEIG	__GCC32__ __EPOC32__ __MARM__ __MEIG__ __SINGLE__
		SROS	__GCC32__ __EPOC32__ __MARM__ __MROS__ __SINGLE__
		SCGA	__GCC32__ __EPOC32__ __MARM__ __MCGA__ __SINGLE__
		MX86	__VC32__  __EPOC32__ __MX86__
		WINS	__VC32__  __WINS__
		WINC	__VC32__  __WINS__   __WINC__

		The major change here is that __MARM__ now represents the CPU-type being
		used while __MAWD__, __MEIG__, etc denote the ASSP (Application Specific
		Standard Product).  This change will affect few releaseables apart from
		the base team's, since most people's MARM releaseables should run on
		all the ARM ASSPs without modification.

	22)	Added new .MMP keyword, ASSPEXPORTS.  If this keyword is specified
		makmake by default will look for an ASSP-specific deffile rather than a
		CPU-specific one.  In other words, if you're building EKERN.EXE for MISA
		and specify ASSPEXPORTS and deffile EKERN.DEF without a path makmake will
		select a deffile from \E32\BMISA rather than \E32\BMARM.

	23)	Replaced FIRSTOBJECT keyword with FIRSTLIB.  This keyword takes the full
		name, rather than the basename, of the first library in the link to replace
		EEXE.LIB or EDLL.LIB.

	24)	Changed MAKMAKE.PL and BLDMAKE.PL so additional .PM modules are searched
		for in whichever directory in the system path the .PL module is first
		found, rather than the first /^(\w:)?\\EPOC32\\TOOLS\\?$/io style
		directory found in the path.

	25)	Added -s flag to first call to linker 'LD' in gcc makefiles.  This option
		strips symbolic information from the output file and specifying it will
		speed up linking very slightly.

	26)	Fixed EDN870985 "VC5 should put strings into read-only memory".  By
		specifying the CL.EXE command-line option /GF strings are pooled and
		placed in read-only memory, thus EPOC builds are emulated more closely.
		This change applies for WINC too, and applies for MSVC builds as well as
		command-line builds.

	27)	Added /List option to makmake command-line.  This option will generate a
		makefile which will produce assembler code listing files, one for each
		source file, in the build directory during compilation.  This option is
		only supported for ARM builds at the moment.  These files will have the
		extension ".S".

	28)	Added -undef switch to GCC calls in ARM makefiles and to CPP calls
		during dependency generation.  This switch means 
		"Do not predefine any nonstandard macros.  (Including architecture flags)."

	29)	Added code to module Platform\Cl_arm.pm to create
		makefiles compatible with Cygnus' latest release of GCC.

	30)	Added code to replace forward slashes with backslashes in data read from
		environment variables to assist those running makmake in unix shells.

	31)	Removed CL.EXE flag /Ob1 and LINK.EXE flag /incremental:yes from
		Win32 makefiles because the respective tools apply these by default.

	32)	\EPOC32\Include\E32uid.h is now searched for LDD and PDD narrow and
		UNICODE second uid values so there is no need for these values to be
		updated in Makmake everytime the kernel interface changes.
		\E32\Inc\E32uid.h is searched instead if PROJECT is specified as E32.

	33)	Removed MAKSYS.PM.  Moved function to apply the, now reduced, number of
		patches required for building E32 into MAKMAKE.PL.

	34)	Added pseudotarget ALL: to command-line makefiles which will build all
		variants of a target, DEB, REL, UDEB and UREL.

	35)	Removed IMPLIB targettype for generating import libraries - this targettype
		should no longer be required now that import libraries can be generated
		separately.

	36)	Added new flag to makmake, -REL, which will display a list of
		releasables for a component.  This flag is intended for use by BLDMAKE
		for generating lists of releasables.

	37)	Added support for building Win32 tools.  The platform name is "TOOLS",
		and makefiles created using "makmake <.MMP basename> tools" will not
		link to eexe.obj and will link to the Win32 standard libraries by
		default.  For examples look at the source for the latest E32TOOLS, which
		has been converted to use makmake.  EXEs will be copied to
		\Epoc32\Tools\ once built.

	38)	Added new keyword, ASSPLIBRARY, with the same syntax as LIBRARY
		statements.  This statement is for specifying a target links to import
		libraries which differ for different ASSPs.  EKERN.LIB is such a
		library, which differs between MEIG, MAWD and MISA.  EUSER.LIB, on the
		other hand, presents the same interface under MEIG, MAWD and MISA though 
		EUSER.DLL is different under each platform.  This keyword should only
		need to be used in .MMP files for device drivers.

	39)	If the ASSPEXPORTS keyword is not specified and if a DLL is built under
		an ASSP platform such as MEIG or MAWD, rather than MARM, then the import
		library for the DLL will be built into \Epoc32\Link\MARM rather than
		\Epoc32\Link\MAWD.  This change shouldn't affect any projects outside of
		the Base team though a side-effect of this change is that WINC import
		libraries will be created in \Epoc32\Link\WINS - this shouldn't be a
		problem since WINS and WINC should be binary compatible anyway.

EVALID
	1)	Fixed EDN704662 "EVALID should change the order of it's logging".
	2)	Fixed EDN650568 "EVALID wins-lib is no good with VC++6.0".
	3)	Included William's new improved Evalid - Evalid.bat will be used in
		preference to Evalid.cmd if invoked "evalid".  I haven't removed
		superseded Evalid.cmd so that the fixes I've already made are archived.

EFREEZE
	1)	Added new batch file, EFREEZE.BAT to create frozen
		.DEF files for the first time or to maintain currently existing frozen
		.DEF files.  Perl is called on EFREEZE.PL in makmake-generated makefiles
		to read exports out of the frozen .DEF file and the new .DEF
		file, check and compare them, and append any new exports to the end
		of the frozen .DEF file.
		EFREEZE.BAT syntax is 
			EFREEZE {-Compare} [frozen .DEF file] [new .DEF file]
		If the -compare option is specified then the frozen .DEF file will not
		be changed, but information about differences between the files will be
		generated as in standard EFREEZE operation.

MAKEDEF
	1)	Added new perl script, MAKEDEF.PL, which replaces DEFMAKE.EXE and
		DEFTOOL.EXE from E32TOOLS.  Perl is called on this script in makmake-
		generated makefiles to reorder exports during a build according to which
		of these exports are already frozen.  Under Win32 platforms, DUMPBIN is
		called on the import library generated after the first stage of linking
		to create a list of exports which MAKEDEF.PL can read.  Under EPOC
		platforms, DLLTOOL is used to generate an interim .DEF file as before.
		Generated .DEF files follow the .DEF file layout style used in the .DEF
		files that DLLTOOL generates for all platforms, even WINS.  This makes a
		WINDIFF comparison of old frozen .DEF files and .DEF files generated by
		MAKEDEF difficult, though EFREEZE.BAT can be used to do the comparison
		instead.  If you change the name/parameters of any exported function in
		source code then updating the freeze file is slightly tricky since
		EFREEZE.BAT will refuse to do the comparison because of the missing
		export in the generated .DEF file, though the new mangled name of the
		export will still appear as a new export at the end of the generated .DEF
		file.  Some improvements in this area will follow shortly.

BLDMAKE
	1)	Just one project file, BLD.INF, is now processed by BLDMAKE, rather
		than several B[platform].PRJ files.  Use #defines as in .MMP files to 
		specify that certain releasables should only be built for certain
		platforms.
		Type BLDMAKE without any parameters for help.
		The BLD.INF file for your project should reside in the project's 
		group directory.
		Type "BLDMAKE INF" for basic BLD.INF syntax.
		When "BLDMAKE BLDFILES" is typed, BLD.BAT is created in the project's
		group directory which will call \EPOC32\Bldmake\<project>\BLD.PL.
		BLD.PL will make calls to nmake to do it's building.  For each platform
		supported by the project there will be a makefile in
		\EPOC32\Bldmake\<project>\ controlling building for that platform.
		There will be a separate makefile for each platform for any test programs.
		There will also be a makefile to control the exporting of headers.
		BLD.BAT syntax is much the same as before, except that PREPARING and
		CLEANING are controlled by passing parameters -MAKMAKE and -CLEAN
		respectively rather than using separate batch files.  Building of Import
		Libraries can be controlled separately by using the -LIB and -CLEANLIB
		flags.  If build commands are to refer to test programs then "TEST" must
		be the first parameter specified to BLD.BAT, even if the project only
		contains test programs - e32test is such a component.

GENERAL
	1)	Changed MNT.BAT to MNT.CMD so that use can be made of SETLOCAL and
		ENDLOCAL.
	2)	Removed all li.prj files - these can now be generated by our CVS system.



Version 0.01.107
================
(Made by Alastair, 17/5/99)

Alastair
	1)	Made the new import libary-building targets dependent upon .DEF files
		so that libraries are only built if out-of-date with respect to the .DEF
		files rather than every time.


Version 0.01.106
================
(Made by Alastair, 17/5/99)

Alastair
	1)	Added new targets for building .LIB files directly from .DEF files.
		Targets are LIB<build> where build is DEB, REL, UDEB or UREL.


Version 0.01.105
================
(Made by Alastair, 14/5/99)

Alastair
	1)	Added MCGA.PM and updated MAKSYS.PM (both provided by Simon) for the
		COGENT port.


Version 0.01.100
================
(Made by Alastair, 1.2.99)

GENERAL
	1)	Boiler-plated source.
	2)	Replaced hard-coded R: with %s% in MNT.BAT.


Version 0.01.099
================
(Made by Alastair, 21.12.98)

MAKMAKE
	1)	Changed narrow and unicode second UID defaults for LDD targettypes,
		following corresponding changes to E32 version 159.


Version 0.01.098
================
(Made by Alastair, 27.11.98)

GENERAL
	1)	Added EBLD.BAT, previously released as part of EIKTOOLS, to E32TOOLP's
		releasables.

MAKMAKE
	1)	Makmake now creates \Epoc32\Release\Wins\App.def when creating a VC4 or
		VC5 makefile for an app, and does similar things for LDD and PDD
		targettypes.
	2)	New file system target, FSY, incorporated, which automates the second uid
		and the first ordinal export for file system builds in the same way this
		is accomplished for other supported polymorphic dll targettypes.
	3)	Added new .MMP keyword, EPOCFIXEDPROCESS, which will pass on the -fixed
		switch to petran.
	4)	Removed /LANG command-line flag which used to allow a language to be
		specified on the command-line.
	5)	Changed LANG .MMP keyword so that it can take a list of languages, so
		a resource file will be compiled multiple times, once for each language
		specified.  If no language lists are specified the language list will
		default to just SC.  Fixes Epoc S/W problem 228,
			"mmp fileas doesn't allow compiling 2 language variants".
	6)	Added extra build stage for command-line wins builds which calls lib.exe
		to generate an import library and export object from the dll's deffile
		created by defmake.  The VC5 linker running with Service pack 3 will now
		no longer produce warnings about multiple exports - though you'll still 
		get them if you build within the VC5 IDE.
	7)	RESOURCE and SYSTEMRESOURCE keywords can now take a list of resources.
		This fixes Epoc S/W problem 300,
			"Makmake should support multiple resource files".
		Each resource file will be built for each language specified.
	8)	Added warnings if duplicate sources, languages, systeminclude paths,
		userinclude paths, resources or libraries are specified in .MMP files.
		The duplicates are not listed in the makefile.
		This fixes Epoc S/W problem 366
			"MAKMAKE doesn't spot duplicate SOURCE files".
	9)	Added SROS.PM from Malcolm, and updated MAKSYS.PM accordingly.
	10)	Changed CL_WIN.PM so that the preprocessing stage for resource files in
		command-line WINS makefiles always lists the directory containing the
		source as the first user include directory.  This was an omission from 
		change #3 in E32TOOLP version 097.

BLDMAKE
	1)	Created batch files, except those in the group directory, are now
		created in directory \Epoc32\Bldmake\<project>\<platform>\ rather than in
		the \<project>\B<plat>\ directories.
	2)	Batch files created in the group directory are set to be read-only.


Version 0.01.097
================
(Made by Alastair, 12.11.98)

MAKMAKE
	1)	VC5 .dsw generated files are no longer all hardwired to point to
		Euser.dsp.
	2)	Removed RELGDB configuration for ARM builds.
	3)	Fixed Epoc S/W problem 277 -
		'Cannot specify "current directory" as a USERINCLUDE path in MAKMAKE'.
		The directory containing the source file is now always searched for
		user-included dependencies (thats #include "<dep>").  This brings
		dependency-generation by MAKMAKE and MARM makefiles into line with WINS
		makefiles, where CL.EXE has always searched the directory containing the
		source (except for the fact that CL.EXE makes no user/system
		distinction).
	4)	__SYMBIAN32__ is now defined for all builds.  __PSISOFT32__ is still
		defined for backward compatibility.
	5)	New keyword, FIRSTOBJECT, which takes the base name of an object to
		replace EEXE or EDLL as the first object to be linked.
	6)	Removed change to link some functions in EKERN by name rather than by
		ordinal.
	7)	Fixed Epoc S/W problem 216 - "MAKMAKE's "clean" targets are noisy".
		Clean targets are now silent (under Windows_NT, at least).
	8)	Changed the directory which MAKMAKE searches for it's .PM modules to be the
		first /^(\w:)?\\EPOC32\\TOOLS\\?$/io style directory found in the path
		environment variable, rather than assuming \EPOC32\TOOLS\ unless
		<drive>:\EPOC32\TOOLS exists in the path.  
	9)	Added \E32TOOLP\E32UTIL\Checkgcc.pm, which checks that the first executable
		version of CPP found in the system path is CPP.EXE and is found in a
		/^(\w:)?\\EPOC32\\GCC\\BIN\\?$/io style directory.
	10)	Removed SARMBE.PM, and big-endian hacks from CL_ARM.PM.

BLDMAKE
	1)	Fix to make sure WINC release directories are created before WINS
		releaseables that WINC uses are copied across.
	2)	Change to make sure VC5 batch files are created by bldmake all.
	3)	OS environment variable is now checked, and output redirection to log
		files is only attempted if the OS is set to Windows_NT so that bldmake-
		generated batch files are Windows95 friendly.
	4)	Warning put in batch files to the effect that bldmake has generated the
		file and it shouldn't be edited.


Version 0.01.096
================
(Made by Alastair, 26.10.98)

MAKMAKE
	1)	No longer carrying out the autouid keyword behaviour for targettypes LIB
		and IMPLIB.
	2)	Fixed bug whereby if an EXEDLL target is specified with a lower-
		case .exe extension the extension wouldn't be changed to .dll for WINS
		builds.

Version 0.01.095
================
(Made by Alastair, 22.10.98)

GENERAL
	1)	Symbianised Perl source files.

MAKMAKE
	1)	Added code to handle forward slash file separator which is used in
		filenames returned by function "cwd" from library Cwd.pm in perl
		versions 5.005+.  Fixes Epoc S/W problem SW1-215.
	2)	EXEDLL targets specified without an extension will have the correct extension
		(.DLL or .EXE) added depending whether the makefile is for a single or
		multi-process build.
		Fixes Epoc Software Problem SW1-11.
	3)	VC5 module now creates .DSW file to save a couple of clicks in the MSVC5
		workspace.
	4)	Removed 'D' basename suffix for debug deffiles, both those makmake
		references as 'freeze' files and those it creates, under all platforms.
		MARM debug and release builds should already be interoperable, this
		change is designed to "encourage" the interoperability of WINS debug and
		release builds, starting with E32.
	5)	Added new keyword, UNICODEUID, to be used for the specification of
		second and third unicode uids.  A warning will be generated and no
		unicode targets provided in the makefile if a second ascii uid is
		specified but a second unicode uid isn't.
	6)	Made WINS AUTOUID keyword behaviour compulsory, so every WINS project
		gets the UIDs it specifies in the .MMP compiled into WINS automatically.
		This means that current users of the AUTOUID keyword will need to remove
		it from their .MMP files to avoid a warning.  Those Luddites not
		already using this keyword will have to remove the #pragma data_seg(".E32_UID")
 		section used to specify WINS uids from their code if their project is to link
		correctly.
	7)	Added new keyword, EPOCPROCESSPRIORITY, for the specification of process
		priority for executables.  This keyword will be ignored under Win32
		platforms.  Specify low,background,foreground,high,windowserver,fileserver,
		realtimeserver or supervisor.  The value specified will be passed to
		petran via its -priority switch.
	8)	Fixed Epoc S/W problem 274 
			"Problems with include paths containing spaces[MAKMAKE]".

EVALID
	1)	Added William Roberts' updated EVALID.CMD.  Fixes Epoc S/W problem 151 
		'EVALID does not support "wins-exe"'.


Version 0.01.094
================
(Made by Alastair, 22.10.98)

BLDMAKE
	1)	Batch files created by BLDMAKE are now more Windows95-friendly, but will
		still fall over due to the 2> syntax in these files.
	2)	Prepare.bat no longer creates any directories - there was never any need
		to do this since MAKMAKE did it anyway.


Version 0.01.093
================
(Made by Petteri, 14.07.98)

MAKMAKE

1)  Fixed SW1-62. (Unicode flags added for resource files in unicode builds.)

2)  Fixed a problem related to capitalisation of filenames when analysing
    dependencies. 

EVALID

1)  Integrated Andrew Tholke's validation tool. He writes:

  The basic syntax is

  EVALID type file1 file2

  where type specifies the object type, and is one of:

  text, binary
  wins-dll, wins-lib
  marm-dll, marm-exe, marm-lib, marm-map

  and file1 and file2 are the two files to be compared, e.g.
 
  evalid marm-dll edbms.dll \epoc32\release\marm\rel\edbms.dll

  EVALID defaults to appending its output to the file .\evalid.lis. 
  Prior to validating a component set, this file should be deleted. 
  To force the output to the console, the "-c" switch should be specified before the type, e.g.

  evalid -c wins-lib edbms.lib \epoc32\release\wins\deb\edbms.lib

  To direct the output to a different logfile "-l <logfile>" should be used before the type, e.g.

  evalid -l valid.log marm-map edbms.map \epoc32\release\marm\rel\edbms.map


Version 0.01.092
================
(Made by Petteri, 10.06.98)

MAKMAKE

1)  Added a new module MAKSYS.PM which handles various base related exceptions
    to MAKMAKE rules.

2)  Changed OBJECT keyword to look for the files in the target directory rather 
    than in the build directory.

3)  For Win95 compatibility 'del file1 file2' commands are no longer used.

4)  EXEDLL UIDs are now correct under WINS.

5)  Extension .mmp can now be included in the MMP-file name when starting MAKMAKE.

6)  Two new platform modules have been added. MAWD is for Windermere architecture
    and MMAD is for MAD Linda.

7)  Filenames in makefiles are no longer automatically turned upper case. Most of
    the time the capitalisation used in MMP-files is preserved.

8)  Added a new keyword EPOCHEAPSIZE. It can be used to set the minimum and
    maximum size of the heap in ARM builds.

9)  The following keywords have been moved out of the START MARM ... END block
    and their names have been changed:
      ALLOWDLLDATA       is now EPOCALLOWDLLDATA
      CALLDLLENTRYPOINTS        EPOCCALLDLLENTRYPOINTS
      DATALINKADDRESS           EPOCDATALINKADDRESS
      STACKSIZE                 EPOCSTACKSIZE


Version 0.01.091
================
(Made by Alastair, 18th February, 1998)

This new component contains perl programs that were previously
contained in component E32TOOLS.  Currently E32TOOLP contains
MAKMAKE and BLDMAKE which will be removed from the next release
of E32TOOLS.

Changes from programs in E32TOOLS(090)

MAKMAKE

1)  Added -u flag for calls to rcomp in command-line unicode builds so that
    the resource file is built with wide strings.

2)  Added new START MARM .. END block keyword, CALLDLLENTRYPOINTS, which will
    suppress the passing of flag -nocall to PETRAN.  This keyword takes
    no parameters.

3)  Added new LINKAS keyword. This keyword is platform-independent and replaces
    the platform-specific START MARM .. END block keyword DLLNAME.  Use LINKAS
    to specify the full name of the dll you are building if that name is to be
    different from the name specified by the TARGET keyword for linking
    purposes.  This keyword currently has no effect for Win32 platforms.  For
    MARM platforms, the name specified will have the third uid for the executable
    inserted before its extension and will then be passed to PETRAN as a parameter
    for the -dllname flag.

4)  For EXEDLL targettypes, if the name specified with the TARGET keyword has
    the extension .EXE, this will be changed to .DLL within single-process
    platform makefiles such as WINS makefiles.

5)  For EXEDLL targettypes, extension changes will be applied to names specified
    with the LINKAS keyword as they are for names specified with the TARGET keyword.
    So, for single-process platforms (eg WINS), .EXE extensions will become .DLL, and
    for multi-process platforms (eg MARM), the extension .EXE will be applied whatever
    extension is specified for the name in the MMPFILE.
  
7)  Added new module, OUTPUT.PM, to enable MAKMAKE to wrap long lines neatly
    within makefiles where appropriate.

8)  Renamed E32TVER.PM E32TPVER.PM.

9)  Changed header information on all files to
    # Copyright (c) 1998 Psion Software plc
    # All rights reserved


BLDMAKE

1)  Changed BLDMAKE's batch file so it doesn't produce the help for the 'CALL'
    batch file command if invoked BLDMAKE /?.



