--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv1/abld/group/release.txt Fri Jun 25 17:29:25 2010 +0800
@@ -0,0 +1,3899 @@
+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 /?.
+
+
+