1) Updating the .hgignore to exclude Raptor's built binaries
authormikek
Thu, 13 May 2010 19:18:16 +0100
changeset 9 67f8bb81b054
parent 8 b260811257d2
child 10 b2a53d442fd6
1) Updating the .hgignore to exclude Raptor's built binaries 2) Updating the baseline patch file.
.hgignore
cross-plat-dev-utils/patch-files/diffs/patch-0f5e3a7fb6af.patch
--- a/.hgignore	Thu May 13 18:52:55 2010 +0100
+++ b/.hgignore	Thu May 13 19:18:16 2010 +0100
@@ -3,4 +3,6 @@
 *.o
 *.so
 *.pyc
+*linux-*-libc*
 
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cross-plat-dev-utils/patch-files/diffs/patch-0f5e3a7fb6af.patch	Thu May 13 19:18:16 2010 +0100
@@ -0,0 +1,3340 @@
+## diff generated by diff_upstream.pl
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/bintools/checklib/library/library.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/bintools/checklib/library/library.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/bintools/checklib/library/library.cpp	2010-05-13 19:14:19.380581789 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/bintools/checklib/library/library.cpp	2010-05-12 14:13:31.601098351 +0100
+@@ -25,6 +25,7 @@
+ #include <iostream>
+ #include <iomanip>
+ #include <cstdlib>
++#include <cstring>
+ 
+ namespace
+ {
+@@ -52,7 +53,7 @@
+     m_mem_p = new char[size];
+ 
+     file.seekg(0, std::ios::beg);
+-    file.read( const_cast<char*>(m_mem_p), size );
++	file.read(m_mem_p, size );
+ 
+     file.close();
+ 
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/bintools/checklib/library/library.h /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/bintools/checklib/library/library.h
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/bintools/checklib/library/library.h	2010-05-13 19:14:19.380581789 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/bintools/checklib/library/library.h	2010-05-12 14:13:33.625600203 +0100
+@@ -39,11 +39,12 @@
+     const char* _eat_obj_header(const char*, const char*, unsigned long*, const char* = 0) const;
+ 
+ private:
+-    const char* m_mem_p;
++	char * m_mem_p;
+ 
+     const char* m_first_p;
+     const char* m_last_p;
+ 
++
+     mutable std::vector<const char*> m_symbols;
+     mutable std::vector< std::pair<const char*, const char*> > m_objects;
+ };
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/bintools/checklib/main.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/bintools/checklib/main.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/bintools/checklib/main.cpp	2010-05-13 19:14:19.380581789 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/bintools/checklib/main.cpp	2010-05-08 15:36:26.000000000 +0100
+@@ -22,6 +22,7 @@
+ #include <sstream>
+ #include <iostream>
+ #include <stdexcept>
++#include <cstring>
+ 
+ 
+ const char SELF_NAME[] = "checklib";
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/bintools/checklib/object/coff_object.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/bintools/checklib/object/coff_object.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/bintools/checklib/object/coff_object.cpp	2010-05-13 19:14:19.384582019 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/bintools/checklib/object/coff_object.cpp	2010-05-08 15:38:08.000000000 +0100
+@@ -21,6 +21,7 @@
+ 
+ #include <algorithm>
+ #include <functional>
++#include <cstring>
+ 
+ Coff_object::Coff_object(const char* p1, const char* p2)
+ {
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/bintools/checklib/object/elf_object.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/bintools/checklib/object/elf_object.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/bintools/checklib/object/elf_object.cpp	2010-05-13 19:14:19.384582019 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/bintools/checklib/object/elf_object.cpp	2010-05-08 15:37:34.000000000 +0100
+@@ -22,6 +22,7 @@
+ 
+ #include <algorithm>
+ #include <functional>
++#include <cstring>
+ 
+ Elf_object::Elf_object(const char* p1, const char* p2)
+ {
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/bintools/rcomp/src/localise.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/bintools/rcomp/src/localise.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/bintools/rcomp/src/localise.cpp	2010-05-13 19:14:19.424582009 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/bintools/rcomp/src/localise.cpp	2010-05-08 15:38:52.000000000 +0100
+@@ -27,9 +27,11 @@
+ #pragma warning( disable : 4530 )	// function not inlined.
+ #endif
+ 
+-#include <stdio.h>   
++#include <cstdio>
+ #include <iostream>
+ #include "ERRORHAN.H"
++#include <cstring>
++#include <cstdlib>
+ 
+ #if defined(__MSVCDOTNET__) || defined(__TOOLS2__)
+ using std::ifstream;
+@@ -1787,8 +1789,16 @@
+ 	const char * fileName = SourceFileName.GetAssertedNonEmptyBuffer();
+ 	ifstream iFile(fileName);
+ 
++#ifdef __LINUX__
++	char LocalisationOutputFileName[sizeof("/tmp/rcomp_temp_XXXXXX")];
++	strcpy(LocalisationOutputFileName,"/tmp/rcomp_temp_XXXXXX");
++	int fd = mkstemp(LocalisationOutputFileName); close(fd);
++#endif
++#ifdef WIN32
+ 	char * LocalisationOutputFileName;
+ 	LocalisationOutputFileName = tmpnam(NULL);
++#endif
++
+ 	ofstream outputFile(LocalisationOutputFileName);
+ 
+ 	String fileLine("");
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/bintools/rcomp/src/rcomp.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/bintools/rcomp/src/rcomp.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/bintools/rcomp/src/rcomp.cpp	2010-05-13 19:14:19.428582169 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/bintools/rcomp/src/rcomp.cpp	2010-05-08 15:41:18.000000000 +0100
+@@ -90,8 +90,8 @@
+ #pragma warning( disable : 4244 ) // C4244: '=' : conversion from 'int' to 'short', possible loss of data
+ #endif //__VC32__
+ 
+-#include "resource.h"
+-#include "parser.h"
++#include "RESOURCE.H"
++#include "Parser.h"
+ 
+ int yylex();
+ void yyerror(const char* string, ...);
+@@ -100,14 +100,14 @@
+ extern int yylineno;
+ 
+ #include "rcomp.hpp"
+-#include "datatype.h"
+-#include "mem.h"
+-#include "rcbinstr.h"
+-#include "rcscan.h"
+-#include "errorhan.h"
+-#include "fileacc.h"
+-#include "version.h"
+-#include "ctable.h"
++#include "DATATYPE.H"
++#include "MEM.H"
++#include "RCBINSTR.H"
++#include "RCSCAN.H"
++#include "ERRORHAN.H"
++#include "FILEACC.H"
++#include "VERSION.H"
++#include "CTABLE.H"
+ #include "localise.h"
+ #include "main.h"
+ 
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/bintools/rcomp/src/rcompl.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/bintools/rcomp/src/rcompl.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/bintools/rcomp/src/rcompl.cpp	2010-05-13 19:14:19.428582169 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/bintools/rcomp/src/rcompl.cpp	2010-05-08 15:40:00.000000000 +0100
+@@ -662,8 +662,8 @@
+ #include <limits.h>
+ #include <string.h>
+ #include "main.h"
+-#include "structst.h"
+-#include "parser.h"
++#include "STRUCTST.H"
++#include "Parser.h"
+ #include "localise.h"
+ 
+ #define YY_SKIP_YYWRAP 1
+@@ -696,7 +696,7 @@
+ }
+ 
+ #include "rcomp.hpp"
+-#include "fileline.h"
++#include "FILELINE.H"
+ 
+ #define VALUE_LEN   (1024*8)	// must match sizeof(YYSTYPE.Value)
+ char buf[VALUE_LEN];
+@@ -734,7 +734,7 @@
+ #pragma warning( disable : 4505 )
+ #endif //__VC32__
+ 
+-#include "errorhan.h"
++#include "ERRORHAN.H"
+ 
+ #define REGISTER_LINE	ErrorHandler::Register(pFileLineHandler->GetCurrentFile(), pFileLineHandler->GetErrorLine(* pCurrentLineNumber))
+ 
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/bintools/rcomp/src/RCOMP.LEX /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/bintools/rcomp/src/RCOMP.LEX
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/bintools/rcomp/src/RCOMP.LEX	2010-05-13 19:14:19.420582828 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/bintools/rcomp/src/RCOMP.LEX	2010-05-08 15:45:48.000000000 +0100
+@@ -20,9 +20,9 @@
+ #include <limits.h>
+ #include <string.h>
+ #include "main.h"
+-#include "structst.h"
+-#include "parser.h"
+-#include "localise.h"
++#include "STRUCTST.H"
++#include "PARSER.H"
++#include "LOCALISE.H"
+ 
+ #define YY_SKIP_YYWRAP 1
+ #define YY_NEVER_INTERACTIVE 1
+@@ -92,7 +92,7 @@
+ #pragma warning( disable : 4505 )
+ #endif //__VC32__
+ 
+-#include "errorhan.h"
++#include "ERRORHAN.H"
+ 
+ #define REGISTER_LINE	ErrorHandler::Register(pFileLineHandler->GetCurrentFile(), pFileLineHandler->GetErrorLine(* pCurrentLineNumber))
+ 
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/bintools/rcomp/src/RCOMP.YACC /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/bintools/rcomp/src/RCOMP.YACC
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/bintools/rcomp/src/RCOMP.YACC	2010-05-13 19:14:19.424582009 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/bintools/rcomp/src/RCOMP.YACC	2010-05-08 15:47:00.000000000 +0100
+@@ -35,8 +35,8 @@
+ #pragma warning( disable : 4244 ) // C4244: '=' : conversion from 'int' to 'short', possible loss of data
+ #endif //__VC32__
+ 
+-#include "resource.h"
+-#include "parser.h"
++#include "RESOURCE.H"
++#include "PARSER.H"
+ 
+ int yylex();
+ void yyerror(const char* string, ...);
+@@ -45,14 +45,14 @@
+ extern int yylineno;
+ 
+ #include "rcomp.hpp"
+-#include "datatype.h"
+-#include "mem.h"
+-#include "rcbinstr.h"
+-#include "rcscan.h"
+-#include "errorhan.h"
+-#include "fileacc.h"
+-#include "version.h"
+-#include "ctable.h"
++#include "DATATYPE.H"
++#include "MEM.H"
++#include "RCBINSTR.H"
++#include "RSCAN.H"
++#include "ERRORHAN.H"
++#include "FILEACC.H"
++#include "VERSION.H"
++#include "CTABLE.H"
+ #include "localise.h"
+ #include "main.h"
+ 
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/buildtoolguides/romtoolsguide/group/bld.inf /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/buildtoolguides/romtoolsguide/group/bld.inf
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/buildtoolguides/romtoolsguide/group/bld.inf	2010-05-13 19:14:22.500584966 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/buildtoolguides/romtoolsguide/group/bld.inf	2010-05-08 15:41:44.000000000 +0100
+@@ -1,3 +1,3 @@
+ 
+ PRJ_EXPORTS
+-../com.nokia.rombuild_0.1.jar /plugins/com.nokia.rombuild_0.1.jar
+\ No newline at end of file
++../com.nokia.rombuild_0.1.jar ../../plugins/com.nokia.rombuild_0.1.jar 
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/buildtoolguides/sbsv2guide/group/bld.inf /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/buildtoolguides/sbsv2guide/group/bld.inf
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/buildtoolguides/sbsv2guide/group/bld.inf	2010-05-13 19:14:22.504583518 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/buildtoolguides/sbsv2guide/group/bld.inf	2010-05-08 15:42:04.000000000 +0100
+@@ -1,3 +1,3 @@
+ 
+ PRJ_EXPORTS
+-../com.nokia.sysbuild_0.1.jar /plugins/com.nokia.sysbuild_0.1.jar
+\ No newline at end of file
++../com.nokia.sysbuild_0.1.jar ../../plugins/com.nokia.sysbuild_0.1.jar
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/e32lib/e32image/deflate/deflate.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/e32lib/e32image/deflate/deflate.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/e32lib/e32image/deflate/deflate.cpp	2010-05-13 19:14:22.504583518 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/e32lib/e32image/deflate/deflate.cpp	2010-05-08 14:35:02.000000000 +0100
+@@ -87,7 +87,7 @@
+ 
+ inline HDeflateHash* HDeflateHash::NewLC(TInt aLinks)
+ 	{
+-	return new(HMem::Alloc(0,_FOFF(HDeflateHash,iOffset[Min(aLinks,KDeflateMaxDistance)]))) HDeflateHash;
++	return new(HMem::Alloc(0,_FOFF(HDeflateHash,iOffset[0]) + (sizeof(TOffset) * Min(aLinks,KDeflateMaxDistance)))) HDeflateHash;
+ 	}
+ 
+ inline TInt HDeflateHash::Hash(const TUint8* aPtr)
+Only in /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/e32lib/e32image: Makefile.elftran.bak
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/e32lib/group/seclib.mmp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/e32lib/group/seclib.mmp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/e32lib/group/seclib.mmp	2010-05-13 19:14:22.512581742 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/e32lib/group/seclib.mmp	2010-05-08 14:34:04.000000000 +0100
+@@ -45,8 +45,11 @@
+ userinclude     ../setcap 
+ userinclude     ../../e32lib/e32image/inc
+ systeminclude   /epoc32/include
++systeminclude    /epoc32/include/platform
+ 
+ OPTION          GCC -w
++option 	GCC -w
++
+ 
+ //macro __PLACEMENT_NEW_INLINE
+ //macro __PLACEMENT_VEC_NEW_INLINE
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/group/elf2e32.mmp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/group/elf2e32.mmp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/group/elf2e32.mmp	2010-05-13 19:14:22.512581742 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/group/elf2e32.mmp	2010-05-08 14:17:32.000000000 +0100
+@@ -28,7 +28,9 @@
+ source	 	byte_pair.cpp  pagedcompress.cpp checksum.cpp stdexe_target.cpp
+ 
+ systeminclude    /epoc32/include  /epoc32/include/tools  
++systeminclude    /epoc32/include/platform
+ userinclude		../source ../include
++userinclude ../../../bintools/elftools/inc
+ 
+ option 	GCC -w
+ 
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source/deffile.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/source/deffile.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source/deffile.cpp	2010-05-13 19:14:22.516582251 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/source/deffile.cpp	2010-05-08 14:31:46.000000000 +0100
+@@ -18,9 +18,11 @@
+ //
+ 
+ //
+-#include <stdio.h>
++#include <cstdio>
++#include <cstring>
+ #include <iostream>
+-#include <stdlib.h>
++#include <cstdlib>
++
+ 
+ #include "pl_symbol.h"
+ #include "deffile.h"
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source/deflatecompress.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/source/deflatecompress.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source/deflatecompress.cpp	2010-05-13 19:14:22.516582251 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/source/deflatecompress.cpp	2010-05-08 14:25:12.000000000 +0100
+@@ -126,7 +126,8 @@
+ inline HDeflateHash* HDeflateHash::NewLC(TInt aLinks)
+ {
+ 	//return new(HMem::Alloc(0,_FOFF(HDeflateHash,iOffset[Min(aLinks,KDeflateMaxDistance)]))) HDeflateHash;
+-	return new(new char[_FOFF(HDeflateHash,iOffset[Min(aLinks,KDeflateMaxDistance)])]) HDeflateHash;
++	return new(new char[_FOFF(HDeflateHash,iOffset[0]) + 
++		(sizeof(TOffset) * Min(aLinks,KDeflateMaxDistance))]) HDeflateHash;
+ }
+ 
+ /**
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source/e32exporttable.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/source/e32exporttable.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source/e32exporttable.cpp	2010-05-13 19:14:22.516582251 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/source/e32exporttable.cpp	2010-05-08 14:18:16.000000000 +0100
+@@ -18,6 +18,7 @@
+ #include "pl_elfexports.h"
+ #include "pl_dllsymbol.h"
+ #include "pl_elflocalrelocation.h"
++#include <cstring>
+ 
+ /**
+ Destructor for E32ExportTable class.
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source/e32imagefile.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/source/e32imagefile.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source/e32imagefile.cpp	2010-05-13 19:14:22.520581921 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/source/e32imagefile.cpp	2010-05-08 14:20:20.000000000 +0100
+@@ -21,6 +21,7 @@
+ 
+ // get E32ImageHeader class...
+ #define INCLUDE_E32IMAGEHEADER_IMPLEMENTATION
++#include <cstdio>
+ #define RETURN_FAILURE(_r) return (fprintf(stderr, "line %d\n", __LINE__),_r)
+ //#define E32IMAGEHEADER_TRACE(_t) printf _t
+ #include "e32imagefile.h"
+@@ -40,11 +41,9 @@
+ #include <iostream>
+ #ifndef __LINUX__ 
+     #include <io.h>
+-#else
+-    #include <time.h>
+ #endif 
+-#include <time.h>
+-#include <stdio.h>
++#include <ctime>
++
+ 
+ using namespace std;
+ 
+@@ -365,7 +364,7 @@
+ 	iImportSectionSize = aTotalSize;
+ 	iImportSection = (uint32 *)new char[aTotalSize];
+ 	memset(iImportSection, 0, aTotalSize);
+-	memcpy(iImportSection, aImportSection.begin(), aImportSectionSize);
++	memcpy(iImportSection, &*aImportSection.begin(), aImportSectionSize);
+ 	char * strTab = ((char *)iImportSection) + aImportSectionSize;
+ 	memcpy(strTab, aStrTab.data(), aStrTab.size());
+ 
+@@ -1922,7 +1921,7 @@
+ 	memcpy(aInfo, (void*)&aSymInf, sizeof(aSymInf));
+ 
+ 	TUint aPos = aSymInf.iSymbolTblOffset;
+-	memcpy(aInfo+aPos, iSymAddrTab.begin(), iSymAddrTab.size()*sizeof(uint32));
++	memcpy(aInfo+aPos, &*iSymAddrTab.begin(), iSymAddrTab.size()*sizeof(uint32));
+ 
+ 	aPos += iSymAddrTab.size()*aSizeofNames;
+ 	aPos += iSymNameOffTab.size()*aSizeofNames;
+@@ -1933,13 +1932,13 @@
+ 	if(aSymInf.iFlags & 1)
+ 		aOffLen=4;
+ 	while(Iter != iSymNameOffTab.end()){
+-		memcpy( ((void*)(aInfo+aPos)), ((void*)Iter), aOffLen);
++		memcpy( ((void*)(aInfo+aPos)), &*Iter, aOffLen);
+ 		aPos += aOffLen;
+ 		Iter++;
+ 	}
+ 
+ 	aPos = aSymInf.iStringTableOffset;
+-	memcpy(aInfo+aPos, iSymbolNames.begin(), iSymbolNames.size());
++	memcpy(aInfo+aPos, &*iSymbolNames.begin(), iSymbolNames.size());
+ 
+ 	// At the end, the dependencies are listed. They remain zeroes and shall be fixed up
+ 	// while relocating.
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source/elffilesupplied.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/source/elffilesupplied.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source/elffilesupplied.cpp	2010-05-13 19:14:22.520581921 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/source/elffilesupplied.cpp	2010-05-08 14:22:14.000000000 +0100
+@@ -25,7 +25,15 @@
+ 
+ #include <algorithm>
+ #include <iostream>
+-#include<hash_set>
++#if __GNUC__ < 4
++    #include <ext/hash_set>
++    #define SET_TYPE __gnu_cxx::hash_set
++    #define HASH_FUN __gnu_cxx::hash
++#else    
++    #include <unordered_set>
++    #define SET_TYPE std::unordered_set
++    #define HASH_FUN std::hash
++#endif
+ 
+ using namespace std;
+ 
+@@ -638,7 +646,7 @@
+ */ 
+ int ElfFileSupplied::UnWantedSymbolp(const char * aSymbol)
+ {
+-  static hash_set<const char*, hash<const char*>, eqstr> aSymbolSet;
++  static SET_TYPE<const char*, HASH_FUN<const char*>, eqstr> aSymbolSet;
+   int symbollistsize=sizeof(Unwantedruntimesymbols)/sizeof(Unwantedruntimesymbols[0]);
+   static bool FLAG=false;
+   while(!FLAG)
+@@ -649,7 +657,7 @@
+ 	}
+ 	FLAG=true;
+   }
+-  hash_set<const char*, hash<const char*>, eqstr>::const_iterator it
++  SET_TYPE<const char*, HASH_FUN<const char*>, eqstr>::const_iterator it
+     = aSymbolSet.find(aSymbol);
+   if(it != aSymbolSet.end())
+ 	return 1;
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source/errorhandler.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/source/errorhandler.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source/errorhandler.cpp	2010-05-13 19:14:22.520581921 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/source/errorhandler.cpp	2010-05-08 14:24:02.000000000 +0100
+@@ -26,7 +26,9 @@
+ #include "errorhandler.h"
+ #include "messagehandler.h"
+ #include <iostream>
+-#include <stdio.h>
++#include <cstdio>
++#include <cstring>
++
+ using std::cerr;
+ using std::endl;
+ 
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source/huffman.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/source/huffman.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source/huffman.cpp	2010-05-13 19:14:22.528582030 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/source/huffman.cpp	2010-05-08 14:25:08.000000000 +0100
+@@ -22,6 +22,7 @@
+ #endif
+ 
+ #include <cassert>
++#include <cstring>
+ #include "huffman.h"
+ #include "errorhandler.h"
+ #include "farray.h"
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source/h_utl.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/source/h_utl.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source/h_utl.cpp	2010-05-13 19:14:22.524582150 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/source/h_utl.cpp	2010-05-08 14:33:02.000000000 +0100
+@@ -17,8 +17,9 @@
+ // 
+ //
+ 
+-#include <stdlib.h>
+-#include <stdio.h>
++#include <cstdlib>
++#include <cstdio>
++#include <cstring>
+ #include "h_utl.h"
+ 
+ /**
+Only in /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source: h_utl.h.bak
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source/inflate.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/source/inflate.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source/inflate.cpp	2010-05-13 19:14:22.528582030 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/source/inflate.cpp	2010-05-08 14:25:46.000000000 +0100
+@@ -23,6 +23,8 @@
+ #include "farray.h"
+ #include "errorhandler.h"
+ #include<iostream>
++#include <cstring>
++
+ using std::cout;
+ 
+ /*
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source/messageimplementation.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/source/messageimplementation.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source/messageimplementation.cpp	2010-05-13 19:14:22.532582119 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/source/messageimplementation.cpp	2010-05-08 14:33:34.000000000 +0100
+@@ -23,7 +23,8 @@
+ #include<iostream>
+ #include<stdarg.h>
+ #include<string>
+-#include <stdio.h>
++#include <cstring>
++
+ 
+ using std::endl;
+ using std::cout;
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source/parametermanager.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/source/parametermanager.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source/parametermanager.cpp	2010-05-13 19:14:22.532582119 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/source/parametermanager.cpp	2010-05-12 14:24:20.025099230 +0100
+@@ -647,7 +647,7 @@
+ 			parser(this, "help", 0, 0);
+ 		}
+ 
+-		parser(this, const_cast<char*>(aName.c_str()), optval, aDesc);
++		parser(this, aName.c_str(), optval, aDesc);
+ 	}
+ }
+ 
+@@ -2247,7 +2247,7 @@
+ 		{
+ 			int len = nq;
+ 			symbol = new char[len+1];
+-			memcpy(symbol, p, len);
++			memcpy(symbol, &*p, len);
+ 			symbol[len] = 0;
+ 			q = nq+1;
+ 
+@@ -2387,7 +2387,7 @@
+ 			if (*e == '-' || *e == '+') break;
+ 		}
+ 		if (e != b)
+-			ParseCapability1(b, e, aCapabilities, invert);
++			ParseCapability1(&*b, &*e, aCapabilities, invert);
+ 
+ 		b = e;
+ 		
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source/parametermanager.h /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/source/parametermanager.h
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source/parametermanager.h	2010-05-13 19:14:22.532582119 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/source/parametermanager.h	2010-05-12 14:23:46.225599591 +0100
+@@ -81,7 +81,7 @@
+ 	typedef std::map<string, const OptionDesc *, OptionCompare> OptionMap;
+ 	typedef vector<char *> LibSearchPaths;
+ 
+-	typedef void (*ParserFn)(ParameterManager *, char *, char *, const OptionDesc *);
++	typedef void (*ParserFn)(ParameterManager *, char const *, char const *, const OptionDesc *);
+ 
+ 
+ 	#define DECLARE_PARAM_PARSER(name) \
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source/pl_elfexecutable.h /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/source/pl_elfexecutable.h
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source/pl_elfexecutable.h	2010-05-13 19:14:22.536582488 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/source/pl_elfexecutable.h	2010-05-08 14:31:06.000000000 +0100
+@@ -22,13 +22,19 @@
+ 
+ #include "pl_common.h"
+ #include <list>
+-#include <hash_map>
++#if __GNUC__ < 4
++    #include <ext/hash_map>
++    #define MAP_TYPE __gnu_cxx::hash_map
++#else
++    #include <unordered_map>
++    #define MAP_TYPE std::unordered_map
++#endif    
+ #include "pl_elfimports.h"
+ #include "pl_elfrelocations.h"
+ #include "pl_elfexports.h"
+ 
+ using std::list;
+-using std::hash_map;
++using MAP_TYPE;
+ 
+ class DllSymbol;
+ class Symbol;
+@@ -122,7 +128,7 @@
+ 	 * The dynamic symbol array.
+ 	 */
+ 	Elf32_Sym		*iElfDynSym;//The ELF symbol
+-	hash_map<PLUINT32, DllSymbol*>	iSymbolTable; //The representation
++	MAP_TYPE<PLUINT32, DllSymbol*>	iSymbolTable; //The representation
+ 
+ 	/**
+ 	 * The static symbol table.
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source/pl_elfexports.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/source/pl_elfexports.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source/pl_elfexports.cpp	2010-05-13 19:14:22.536582488 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/source/pl_elfexports.cpp	2010-05-08 14:20:44.000000000 +0100
+@@ -20,6 +20,7 @@
+ #include "pl_elfexports.h"
+ #include "pl_elfexecutable.h"
+ #include "pl_dllsymbol.h"
++#include <cstring>
+ 
+ using std::set_difference;
+ 
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source/pl_elfimports.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/source/pl_elfimports.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source/pl_elfimports.cpp	2010-05-13 19:14:22.536582488 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/source/pl_elfimports.cpp	2010-05-08 14:32:18.000000000 +0100
+@@ -19,6 +19,7 @@
+ 
+ #include "pl_elfimports.h"
+ #include "pl_elfimportrelocation.h"
++#include <cstring>
+ 
+ /**
+ Constructor for class ElfImports
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source/pl_elfproducer.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/source/pl_elfproducer.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source/pl_elfproducer.cpp	2010-05-13 19:14:22.540581739 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/source/pl_elfproducer.cpp	2010-05-08 14:23:30.000000000 +0100
+@@ -22,6 +22,7 @@
+ #include <stdio.h>
+ #include <string>
+ #include "errorhandler.h"
++#include <cstring>
+ 
+ /**
+  * Following array is indexed on the SECTION_INDEX enum 
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source/pl_symbol.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/source/pl_symbol.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/e32tools/elf2e32/source/pl_symbol.cpp	2010-05-13 19:14:22.544581968 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/e32tools/elf2e32/source/pl_symbol.cpp	2010-05-08 14:18:40.000000000 +0100
+@@ -18,6 +18,7 @@
+ //
+ 
+ #include "pl_symbol.h"
++#include <cstring>
+ 
+ 
+ /**
+Only in /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/buildrom/tools: cdf.dtd.bak
+Only in /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/buildrom/tools: featuredatabase.dtd.bak
+Only in /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/buildrom/tools: featureuids.dtd.bak
+Only in /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/buildrom/tools: imageContent.dtd.bak
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imgcheck/group/bld.inf /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imgcheck/group/bld.inf
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imgcheck/group/bld.inf	2010-05-13 19:14:22.580581863 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imgcheck/group/bld.inf	2010-05-08 15:25:20.000000000 +0100
+@@ -21,8 +21,10 @@
+ 
+ // These libraries needs to be exported
+ PRJ_EXPORTS
++#ifndef TOOLS2_LINUX
+ ../libxml/lib/libxml2.a			/epoc32/release/tools2/rel/libxml2.a
+ ../libxml/lib/libxml2.a			/epoc32/release/tools2/deb/libxml2.a
++#endif
+ ../src/imgcheck.xsl			/epoc32/tools/imgcheck.xsl
+ ./imgcheck.pl				/epoc32/tools/imgcheck.pl
+ ./imgcheck.cmd				/epoc32/tools/imgcheck.cmd
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imgcheck/group/imgcheck.mmp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imgcheck/group/imgcheck.mmp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imgcheck/group/imgcheck.mmp	2010-05-13 19:14:22.580581863 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imgcheck/group/imgcheck.mmp	2010-05-08 17:31:00.000000000 +0100
+@@ -25,17 +25,24 @@
+ SOURCE		exceptionimplementation.cpp exceptionreporter.cpp
+ SOURCE 		cmdlinewriter.cpp xmlwriter.cpp dbgflagchecker.cpp
+ USERINCLUDE ../libimgutils/inc ../inc ../../imglib/compress
++#ifndef TOOLS2_LINUX
+ USERINCLUDE   ../../imglib/boostlibrary
++#endif
+ 
+ OS_LAYER_SYSTEMINCLUDE_SYMBIAN
++#ifndef TOOLS2_LINUX
+ SYSTEMINCLUDE ../libxml ../ 
++#endif 
+ 
+ SYSTEMINCLUDE ../../imglib/inc ../../romtools/rofsbuild
+ 
+-STATICLIBRARY imgutils xml2 wsock32 stlport.5.1 patchdataprocessor
+ #ifdef TOOLS2_LINUX
+-STATICLIBRARY   boost_thread-mgw34-mt-1_39_linux
+-OPTION    GCC -pthread -O2 -Wno-uninitialized
++STATICLIBRARY imgutils patchdataprocessor
++#else
++STATICLIBRARY imgutils xml2 wsock32 patchdataprocessor
++#endif
++#ifdef TOOLS2_LINUX
++OPTION    GCC -pthread -O2 -Wno-uninitialized -isystem /usr/include/libxml2 -lxml2 -lboost_thread-mt
+ #else
+ STATICLIBRARY   boost_thread-mgw34-mt-1_39_win32
+ OPTION    GCC -mthreads -O2 -Wno-uninitialized
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imgcheck/inc/cmdlinehandler.h /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imgcheck/inc/cmdlinehandler.h
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imgcheck/inc/cmdlinehandler.h	2010-05-13 19:14:22.805083364 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imgcheck/inc/cmdlinehandler.h	2010-05-08 15:31:40.000000000 +0100
+@@ -120,7 +120,7 @@
+ @internalComponent
+ @released
+ */
+-typedef enum Suppress
++enum Suppress
+ {
+     EDep = 0x1,
+     ESid = 0x2,
+@@ -136,7 +136,7 @@
+ @internalComponent
+ @released
+ */
+-typedef enum NumberOfValue
++enum NumberOfValue
+ {
+     ENone = 0x0,
+     ESingle = 0x1,
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imgcheck/inc/common.h /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imgcheck/inc/common.h
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imgcheck/inc/common.h	2010-05-13 19:14:22.805083364 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imgcheck/inc/common.h	2010-05-08 15:30:02.000000000 +0100
+@@ -86,7 +86,7 @@
+ @internalComponent
+ @released
+ */
+-typedef enum ReturnType
++enum ReturnType
+ {
+ 	ESuccess = 0,
+ 	EQuit,
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imgcheck/inc/exceptionimplementation.h /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imgcheck/inc/exceptionimplementation.h
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imgcheck/inc/exceptionimplementation.h	2010-05-13 19:14:22.805083364 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imgcheck/inc/exceptionimplementation.h	2010-05-08 15:30:50.000000000 +0100
+@@ -91,7 +91,7 @@
+ struct Messages
+ {
+ 	int iIndex;
+-	char* iMessage;
++	char const * iMessage;
+ };
+ 
+ /**
+@@ -110,7 +110,7 @@
+ 	void Report(const String aMsg);
+ 	
+ private:
+-	ofstream iLogStream;
++	Ofstream iLogStream;
+ 	IndexVsMessageMap iMessage;
+ 	unsigned int iMsgIndex;
+ 	static unsigned int iCmdFlag;
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imgcheck/inc/xmlwriter.h /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imgcheck/inc/xmlwriter.h
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imgcheck/inc/xmlwriter.h	2010-05-13 19:14:22.809081638 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imgcheck/inc/xmlwriter.h	2010-05-08 15:32:40.000000000 +0100
+@@ -24,7 +24,12 @@
+ #define XMLWRITER_H
+ 
+ #include "reportwriter.h"
+-#include "libxml/xmlwriter.h"
++#if defined(__LINUX__)
++	#include <libxml/xmlwriter.h>
++#endif
++#if defined(WIN32)
++	#include "libxml/xmlwriter.h"
++#endif
+ #include "common.h"
+ 
+ /**
+@@ -107,7 +112,7 @@
+ 
+ private:
+ 	// File stream for xml output.
+-	ofstream iXmlFile;
++	Ofstream iXmlFile;
+ 	// Xml file name for output.
+ 	const String iXmlFileName;
+ 	// Xml Buffer pointer.
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imgcheck/libimgutils/inc/romfsentry.h /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imgcheck/libimgutils/inc/romfsentry.h
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imgcheck/libimgutils/inc/romfsentry.h	2010-05-13 19:14:22.809081638 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imgcheck/libimgutils/inc/romfsentry.h	2010-05-12 19:58:30.300831269 +0100
+@@ -32,7 +32,7 @@
+ class RomImageFSEntry 
+ {
+ public:
+-	RomImageFSEntry (char* aName) 
++	RomImageFSEntry (char const* aName) 
+ 	: iName(aName), iSibling(0), iChildren(0)
+ 	{
+ 	}
+@@ -117,7 +117,7 @@
+ class RomImageDirEntry : public RomImageFSEntry
+ {
+ public:
+-	RomImageDirEntry(char* aName) : RomImageFSEntry(aName)
++	RomImageDirEntry(char const* aName) : RomImageFSEntry(aName)
+ 	{
+ 	}
+ 	~RomImageDirEntry(void)
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imgcheck/libimgutils/inc/typedefs.h /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imgcheck/libimgutils/inc/typedefs.h
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imgcheck/libimgutils/inc/typedefs.h	2010-05-13 19:14:22.809081638 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imgcheck/libimgutils/inc/typedefs.h	2010-05-08 15:36:00.000000000 +0100
+@@ -28,8 +28,8 @@
+ 
+ #undef _L
+ 
+-#include <fstream.h>
+-#include <iostream.h>
++#include <fstream>
++#include <iostream>
+ #include <list>
+ #include <vector>
+ #include <map>
+@@ -53,10 +53,10 @@
+ @internalComponent
+ @released
+ */
+-typedef ios Ios;
++typedef std::ios Ios;
+ typedef std::string String;
+-typedef ofstream Ofstream;
+-typedef ifstream Ifstream;
++typedef std::ofstream Ofstream;
++typedef std::ifstream Ifstream;
+ typedef std::list<String> StringList;
+ typedef std::map<unsigned int, String> UintVsString;
+ typedef std::map<unsigned int, UintVsString> RomAddrVsExeName;
+@@ -95,7 +95,7 @@
+ @internalComponent
+ @released
+ */
+-typedef enum EImageType
++enum EImageType
+ {
+ 	EUnknownImage,
+ 	ERomImage,
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imgcheck/libimgutils/src/dirreader.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imgcheck/libimgutils/src/dirreader.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imgcheck/libimgutils/src/dirreader.cpp	2010-05-13 19:14:22.813082775 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imgcheck/libimgutils/src/dirreader.cpp	2010-05-08 15:34:42.000000000 +0100
+@@ -119,9 +119,9 @@
+ void DirReader::ProcessImage()
+ {
+ 	char* cwd = new char[MAXPATHLEN];
+-	getcwd(cwd,MAXPATHLEN);
++	char *cp = getcwd(cwd,MAXPATHLEN); (void)cp;
+ 	ReadDir(iImgFileName);
+-	chdir(cwd);
++	int i = chdir(cwd); (void)i;
+ 	if(cwd != NULL)
+ 		delete [] cwd;
+ 	cwd = 0;
+@@ -139,8 +139,11 @@
+ */
+ void DirReader::ReadDir(String aPath)
+ {
++#ifndef __LINUX__
+ 	int handle;
+ 	int retVal = 0; 
++#endif
++ 
+ 	E32Image* e32Image = KNull;
+ 
+ #ifdef __LINUX__
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imgcheck/src/cmdlinehandler.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imgcheck/src/cmdlinehandler.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imgcheck/src/cmdlinehandler.cpp	2010-05-13 19:14:22.856604788 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imgcheck/src/cmdlinehandler.cpp	2010-05-08 15:21:44.000000000 +0100
+@@ -25,6 +25,7 @@
+ */
+ 
+ #include "cmdlinehandler.h"
++#include <cstring>
+ 
+ /**
+ Constructor initializes the iOptionMap with short and long option names as key and
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imgcheck/src/cmdlinewriter.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imgcheck/src/cmdlinewriter.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imgcheck/src/cmdlinewriter.cpp	2010-05-13 19:14:22.856604788 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imgcheck/src/cmdlinewriter.cpp	2010-05-08 15:22:18.000000000 +0100
+@@ -24,6 +24,7 @@
+ */
+ 
+ #include "cmdlinewriter.h"
++#include <cstring>
+ 
+ /**
+ Constructor: CmdLineWriter class
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imgcheck/src/exceptionimplementation.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imgcheck/src/exceptionimplementation.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imgcheck/src/exceptionimplementation.cpp	2010-05-13 19:14:22.856604788 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imgcheck/src/exceptionimplementation.cpp	2010-05-08 15:24:58.000000000 +0100
+@@ -187,7 +187,7 @@
+     
+ 	if(iCmdFlag & KVerbose)
+ 	{
+-		cout << aMsg.c_str() << endl;
++		std::cout << aMsg.c_str() << std::endl;
+ 	}
+ }
+ 
+@@ -207,10 +207,10 @@
+ 	iLogStream <<  aMsg.c_str() << "\n";
+ 	if(aMsg.find("Success") != String::npos)
+ 	{
+-		cout << aMsg.c_str() << endl;
++		std::cout << aMsg.c_str() << std::endl;
+ 	}
+ 	else
+ 	{
+-		cerr << aMsg.c_str() << endl;
++		std::cerr << aMsg.c_str() << std::endl;
+ 	}
+ }
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imgcheck/src/sidchecker.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imgcheck/src/sidchecker.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imgcheck/src/sidchecker.cpp	2010-05-13 19:14:22.861082172 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imgcheck/src/sidchecker.cpp	2010-05-08 15:24:08.000000000 +0100
+@@ -249,8 +249,8 @@
+ 	{
+ 		exeAtt->iAttStatus = KNull;
+ 	}
+-	if((iAllExecutables 
+-		|| (exeAtt->iAttStatus == KDuplicate)) && !exeAtt->iAttStatus.empty() 
++	if(((iAllExecutables 
++		|| (exeAtt->iAttStatus == KDuplicate)) && !exeAtt->iAttStatus.empty())
+ 		|| iNoCheck)
+ 	{
+ 		aExeContainer->iExeAttList.push_back(exeAtt);
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imgcheck/src/xmlwriter.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imgcheck/src/xmlwriter.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imgcheck/src/xmlwriter.cpp	2010-05-13 19:14:22.861082172 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imgcheck/src/xmlwriter.cpp	2010-05-09 13:32:35.689287000 +0100
+@@ -24,9 +24,10 @@
+ */
+ 
+ #include "xmlwriter.h"
++#include <cstring>
+ 
+ #ifndef __LINUX__		
+-	#include "/epoc32/gcc_mingw/include/windows.h"	
++    #include <windows.h>	
+ #endif //__LINUX__
+ 
+ /**
+@@ -99,7 +100,7 @@
+ 	}
+ 	xslSourcePath.append(KXslFileName.c_str());
+ 
+-	ifstream xslSourceHandle;
++	Ifstream xslSourceHandle;
+ 	xslSourceHandle.open(xslSourcePath.c_str(), Ios::binary);
+ 	if(!xslSourceHandle)
+ 	{
+@@ -116,7 +117,7 @@
+ 	xslSourceHandle.read(filetocopy,fileSize);
+ 	xslSourceHandle.close();
+ 
+-	ofstream xslDestHandle(xslDestPath.c_str(), Ios::binary | Ios::out);
++	Ofstream xslDestHandle(xslDestPath.c_str(), Ios::binary | Ios::out);
+ 	if(!xslDestHandle)
+ 	{
+ 		delete [] filetocopy;
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/boostlibrary/boost/thread/pthread/thread_data.hpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/boostlibrary/boost/thread/pthread/thread_data.hpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/boostlibrary/boost/thread/pthread/thread_data.hpp	2010-05-13 19:14:23.441088858 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/boostlibrary/boost/thread/pthread/thread_data.hpp	2010-05-09 13:34:57.929288000 +0100
+@@ -8,7 +8,7 @@
+ #include <boost/thread/detail/config.hpp>
+ #include <boost/thread/exceptions.hpp>
+ #include <boost/shared_ptr.hpp>
+-#include <boost/enable_shared_from_this.hpp>
++#include <boost/smart_ptr/enable_shared_from_this.hpp>
+ #include <boost/thread/mutex.hpp>
+ #include <boost/optional.hpp>
+ #include <pthread.h>
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/e32image/deflate/deflate.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/e32image/deflate/deflate.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/e32image/deflate/deflate.cpp	2010-05-13 19:14:23.493081572 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/e32image/deflate/deflate.cpp	2010-05-08 14:38:16.000000000 +0100
+@@ -20,6 +20,7 @@
+ #include "deflate.h"
+ #include "h_utl.h"
+ #include "panic.h"
++#define OFFSETOF(c,f) (((TInt)&(((c *)0x1000)->f))-0x1000)
+ 
+ class HDeflateHash
+ 	{
+@@ -89,7 +90,8 @@
+ 
+ inline HDeflateHash* HDeflateHash::NewLC(TInt aLinks)
+ 	{
+-	return new(HMem::Alloc(0,_FOFF(HDeflateHash,iOffset[Min(aLinks,KDeflateMaxDistance)]))) HDeflateHash;
++	return new(new char[OFFSETOF(HDeflateHash,iOffset[0]) + 
++		(sizeof(TOffset) * Min(aLinks,KDeflateMaxDistance))]) HDeflateHash;
+ 	}
+ 
+ inline TInt HDeflateHash::Hash(const TUint8* aPtr)
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/e32image/deflate/panic.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/e32image/deflate/panic.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/e32image/deflate/panic.cpp	2010-05-13 19:14:23.497082779 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/e32image/deflate/panic.cpp	2010-05-08 14:37:24.000000000 +0100
+@@ -21,7 +21,7 @@
+ #include "h_utl.h"
+ #include <stdlib.h>
+ 
+-char* HuffmanError[]=	{
++char const * HuffmanError[]=	{
+ 						"Huffman: Too many codes\n",
+ 						"Huffman: Invalid coding\n",
+ 						"Huffman: Buffer overflow\n",
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/e32uid/uidcrc.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/e32uid/uidcrc.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/e32uid/uidcrc.cpp	2010-05-13 19:14:23.497082779 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/e32uid/uidcrc.cpp	2010-05-08 14:36:56.000000000 +0100
+@@ -55,7 +55,7 @@
+ 
+ 	for (i=1; i<4; i++)
+ 		{
+-		char* endptr = "failed";
++		char * endptr;
+ 		uids[i] = strtoul(argv[i],&endptr,0);
+ 		if (*endptr!='\0')
+ 			{
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/filesystem/include/errorhandler.h /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/filesystem/include/errorhandler.h
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/filesystem/include/errorhandler.h	2010-05-13 19:14:23.501082380 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/filesystem/include/errorhandler.h	2010-05-12 19:43:57.948831013 +0100
+@@ -36,8 +36,8 @@
+ class ErrorHandler
+ {
+ 	public:
+-		ErrorHandler(int aMessageIndex,char* aSubMessage,char* aFileName, int aLineNumber);
+-        ErrorHandler(int aMessageIndex, char* aFileName, int aLineNumber);
++		ErrorHandler(int aMessageIndex,char const * aSubMessage,char const * aFileName, int aLineNumber);
++        ErrorHandler(int aMessageIndex, char const* aFileName, int aLineNumber);
+ 		virtual ~ErrorHandler();
+ 		void Report();
+ 
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/filesystem/include/messagehandler.h /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/filesystem/include/messagehandler.h
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/filesystem/include/messagehandler.h	2010-05-13 19:14:23.501082380 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/filesystem/include/messagehandler.h	2010-05-12 19:48:35.893331147 +0100
+@@ -36,9 +36,9 @@
+     public:
+ 		static Message *GetInstance();
+ 		static void CleanUp();
+-		static void StartLogging(char *filename);
+-		static void CreateMessageFile(char *fileName);
+-		static void ReportMessage(int aMsgType, int aMsgIndex,char* aName);
++		static void StartLogging(char const *filename);
++		static void CreateMessageFile(char const *fileName);
++		static void ReportMessage(int aMsgType, int aMsgIndex,char const* aName);
+ 
+     private:
+ 		static Message* iInstance;
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/filesystem/include/messageimplementation.h /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/filesystem/include/messageimplementation.h
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/filesystem/include/messageimplementation.h	2010-05-13 19:14:23.501082380 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/filesystem/include/messageimplementation.h	2010-05-12 19:54:26.568831118 +0100
+@@ -84,7 +84,7 @@
+ 		// display message to output device
+ 		virtual void Output(const char *aName) =0;
+ 		// start logging to a file
+-		virtual void StartLogging(char *fileName)=0;
++		virtual void StartLogging(char const *fileName)=0;
+ 		virtual void ReportMessage(int aMsgType, int aMsgIndex,...)=0;
+ 		virtual void InitializeMessages()=0;
+ };
+@@ -105,7 +105,7 @@
+ 		char* GetMessageString(int errorIndex);
+ 		void Output(const char *aName);
+ 		void LogOutput(const char *aString);
+-		void StartLogging(char *fileName);
++		void StartLogging(char const *fileName);
+ 		void ReportMessage(int aMsgType, int aMsgIndex,...);
+ 		void InitializeMessages();
+     private:
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/filesystem/source/cluster.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/filesystem/source/cluster.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/filesystem/source/cluster.cpp	2010-05-13 19:14:23.505082539 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/filesystem/source/cluster.cpp	2010-05-12 14:37:01.301106883 +0100
+@@ -143,7 +143,9 @@
+ {
+ 	if(iCurrentClusterNumber >= iTotalNumberOfClusters)
+ 	{
+-    	throw ErrorHandler(IMAGESIZETOOBIG,"Occupied number of clusters count exceeded than available clusters",__FILE__,__LINE__);
++    	throw ErrorHandler(IMAGESIZETOOBIG,
++			"Occupied number of clusters count exceeded than available clusters",
++			__FILE__,__LINE__);
+ 	}
+ 	++iCurrentClusterNumber;
+ }
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/filesystem/source/dirregion.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/filesystem/source/dirregion.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/filesystem/source/dirregion.cpp	2010-05-13 19:14:23.505082539 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/filesystem/source/dirregion.cpp	2010-05-12 14:43:35.669597925 +0100
+@@ -49,7 +49,7 @@
+ 	iClusterPtr = CCluster::Instance(iClusterSize,totalClusters);
+ 	if(iClusterPtr == NULL)
+ 	{
+-		throw ErrorHandler(CLUSTERERROR,"Instance creation error", __FILE__, __LINE__);
++		throw ErrorHandler(CLUSTERERROR,"Instance creation error",__FILE__,__LINE__);
+ 	}
+ 	iClusterSize = iClusterPtr->GetClusterSize();
+ }
+@@ -117,7 +117,8 @@
+ 	aOutPutStream.flush();
+ 	if(aOutPutStream.bad())
+ 	{
+-		throw ErrorHandler(FILEWRITEERROR, __FILE__, __LINE__);
++		throw ErrorHandler(FILEWRITEERROR,__FILE__,__LINE__);
++
+ 	}
+ }
+ 
+@@ -175,7 +176,7 @@
+ 	}
+ 	else
+ 	{
+-		throw ErrorHandler(EMPTYFILENAME, __FILE__, __LINE__);
++		throw ErrorHandler(EMPTYFILENAME,__FILE__,__LINE__);
+ 	}
+ }
+ 
+@@ -247,7 +248,7 @@
+ 	if(tempString.length() == 0)
+ 	{
+ 		tempString.erase();
+-		throw ErrorHandler(EMPTYFILENAME, __FILE__, __LINE__);
++		throw ErrorHandler(EMPTYFILENAME,__FILE__,__LINE__);
+ 	}
+ 	else
+ 	{
+@@ -314,7 +315,8 @@
+ 	iInputStream.open(aEntry->GetFilePath().c_str(),Ios::binary);
+ 	if(iInputStream.fail() == true )
+ 	{
+-		throw ErrorHandler(FILEOPENERROR,(char*)aEntry->GetFilePath().c_str(),__FILE__,__LINE__);
++		throw ErrorHandler(FILEOPENERROR,aEntry->GetFilePath().c_str(),
++			__FILE__,__LINE__);
+ 	}
+ 	else
+ 	{
+@@ -324,7 +326,7 @@
+ 		char* dataBuffer = (char*)malloc((unsigned int)fileSize);
+ 		if(dataBuffer == 0)
+ 		{
+-			throw ErrorHandler(MEMORYALLOCATIONERROR, __FILE__, __LINE__);
++			throw ErrorHandler(MEMORYALLOCATIONERROR,__FILE__,__LINE__);
+ 		}
+ 		//Read the whole file in one short
+ 		iInputStream.read (dataBuffer,fileSize);
+@@ -332,7 +334,8 @@
+ 		Long64 bytesRead = (unsigned int)iInputStream.tellg();
+ 		if((iInputStream.bad()) || (bytesRead != fileSize))
+ 		{
+-			throw ErrorHandler(FILEREADERROR,(char*)aEntry->GetFilePath().c_str(), __FILE__, __LINE__);
++			throw ErrorHandler(FILEREADERROR,aEntry->GetFilePath().c_str(),
++				__FILE__, __LINE__);
+ 		}
+ 		String clusterData(dataBuffer,(unsigned int)bytesRead);
+ 		PushStringIntoClusterMap(iClusterPtr->GetCurrentClusterNumber(),clusterData,iClusterSize,aEntry->GetEntryAttribute());
+@@ -544,12 +547,12 @@
+ 		}
+ 		if(aNodeList.front()->GetEntryList()->size() <= 0)
+ 		{
+-			throw ErrorHandler(NOENTRIESFOUND, __FILE__, __LINE__);
++			throw ErrorHandler(NOENTRIESFOUND,__FILE__,__LINE__);
+ 		}
+ 	}
+ 	else
+ 	{
+-		throw ErrorHandler(ROOTNOTFOUND, __FILE__, __LINE__);
++		throw ErrorHandler(ROOTNOTFOUND,__FILE__,__LINE__);
+ 	}
+ }
+ 
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/filesystem/source/errorhandler.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/filesystem/source/errorhandler.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/filesystem/source/errorhandler.cpp	2010-05-13 19:14:23.505082539 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/filesystem/source/errorhandler.cpp	2010-05-12 19:45:04.149330876 +0100
+@@ -22,9 +22,10 @@
+ 
+ #include "errorhandler.h"
+ #include "messagehandler.h"
++#include <cstring>
+ 
+-char *errMssgPrefix="FileSystem : Error:";
+-char *Gspace=" ";
++char const *errMssgPrefix="FileSystem : Error:";
++char const *Gspace=" ";
+ 
+ /**
+ ErrorHandler constructor for doing common thing required for derived 
+@@ -41,7 +42,7 @@
+ @param aFileName - File name from where the error is thrown
+ @param aLineNumber - Line number from where the error is thrown
+ */
+-ErrorHandler::ErrorHandler(int aMessageIndex, char* aSubMessage, char* aFileName, int aLineNumber)
++ErrorHandler::ErrorHandler(int aMessageIndex, char const* aSubMessage, char const* aFileName, int aLineNumber)
+                             :iSubMessage(aSubMessage), iFileName(aFileName), iLineNumber(aLineNumber)
+ {
+ 	iMessageIndex = aMessageIndex;
+@@ -60,7 +61,7 @@
+ @param aFileName - File name from where the error is thrown
+ @param aLineNumber - Line number from where the error is thrown
+ */
+-ErrorHandler::ErrorHandler(int aMessageIndex, char* aFileName, int aLineNumber)
++ErrorHandler::ErrorHandler(int aMessageIndex, char const* aFileName, int aLineNumber)
+                             : iFileName(aFileName), iLineNumber(aLineNumber)
+ {
+ 	iMessageIndex = aMessageIndex;
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/filesystem/source/fat16bootsector.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/filesystem/source/fat16bootsector.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/filesystem/source/fat16bootsector.cpp	2010-05-13 19:14:23.505082539 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/filesystem/source/fat16bootsector.cpp	2010-05-08 14:43:40.000000000 +0100
+@@ -21,6 +21,7 @@
+ */
+ 
+ #include "fat16bootsector.h"
++#include <cstring>
+ 
+ /**
+ Constructor of the fat16 boot sector class
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/filesystem/source/fat16filesystem.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/filesystem/source/fat16filesystem.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/filesystem/source/fat16filesystem.cpp	2010-05-13 19:14:23.505082539 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/filesystem/source/fat16filesystem.cpp	2010-05-12 19:42:41.053330333 +0100
+@@ -21,7 +21,7 @@
+ */
+ 
+ #include"fat16filesystem.h"
+-
++#include <cstring>
+ 
+ /**
+ Initializes the boot sector of a FAT 16 volume
+@@ -76,45 +76,45 @@
+ 	//copying of boot sector values in to the array
+ 	iData = new unsigned char[BytesPerSector];
+ 	unsigned int pos = 0;
+-	memcpy(&iData[pos],JmpBoot,3);
++	memmove(&iData[pos],JmpBoot,3);
+ 	pos += 3;
+-	memcpy(&iData[pos],OEMName,8);
++	memmove(&iData[pos],OEMName,8);
+ 	pos += 8;
+-	memcpy(&iData[pos],&BytesPerSector,2);
++	memmove(&iData[pos],&BytesPerSector,2);
+ 	pos += 2;
+-	memcpy(&iData[pos],&SectorsPerCluster,1);
++	memmove(&iData[pos],&SectorsPerCluster,1);
+ 	pos += 1;
+-	memcpy(&iData[pos],&ReservedSectors,2);
++	memmove(&iData[pos],&ReservedSectors,2);
+ 	pos += 2;
+-	memcpy(&iData[pos],&NumFats,1);
++	memmove(&iData[pos],&NumFats,1);
+ 	pos += 1;
+-	memcpy(&iData[pos],&RootDirEntries,2);
++	memmove(&iData[pos],&RootDirEntries,2);
+ 	pos += 2;
+-	memcpy(&iData[pos],&LowSectors,2);
++	memmove(&iData[pos],&LowSectors,2);
+ 	pos += 2;
+-	memcpy(&iData[pos],&Media,1);
++	memmove(&iData[pos],&Media,1);
+ 	pos += 1;
+-	memcpy(&iData[pos],&FatSectors,2);
++	memmove(&iData[pos],&FatSectors,2);
+ 	pos += 2;
+-	memcpy(&iData[pos],&SectorPerTrack,2);
++	memmove(&iData[pos],&SectorPerTrack,2);
+ 	pos += 2;
+-	memcpy(&iData[pos],&NumberOfHeads,2);
++	memmove(&iData[pos],&NumberOfHeads,2);
+ 	pos += 2;
+-	memcpy(&iData[pos],&HiddenSectors,4);
++	memmove(&iData[pos],&HiddenSectors,4);
+ 	pos += 4;
+-	memcpy(&iData[pos],&HighSectorsCount,4);
++	memmove(&iData[pos],&HighSectorsCount,4);
+ 	pos += 4;
+-	memcpy(&iData[pos],&BootSectorDriveNumber,1);		
++	memmove(&iData[pos],&BootSectorDriveNumber,1);		
+ 	pos += 1;
+-	memcpy(&iData[pos],&ReservedByte,1);
++	memmove(&iData[pos],&ReservedByte,1);
+ 	pos += 1;
+-	memcpy(&iData[pos],&BootSignature,1);
++	memmove(&iData[pos],&BootSignature,1);
+ 	pos += 1;
+-	memcpy(&iData[pos],&VolumeId,4);
++	memmove(&iData[pos],&VolumeId,4);
+ 	pos += 4;
+-	memcpy(&iData[pos],VolumeLab,11);
++	memmove(&iData[pos],VolumeLab,11);
+ 	pos += 11;
+-	memcpy(&iData[pos],FileSysType,8);
++	memmove(&iData[pos],FileSysType,8);
+ 	pos += 8;
+ 	while(pos < BytesPerSector)
+ 	{
+@@ -133,7 +133,7 @@
+ 	ComputeClusterSizeInBytes();
+ 	ComputeRootDirSectors();
+ 	ComputeBytesPerSector();
+-	MessageHandler::ReportMessage (INFORMATION,BOOTSECTORCREATEMSG, "FAT16");
++	MessageHandler::ReportMessage (INFORMATION,BOOTSECTORCREATEMSG,"FAT16");
+ }
+ 
+ /**
+@@ -195,8 +195,8 @@
+ 		// Each FAT16 entries occupies 2 bytes, hence multiply by 2
+ 		aFatString.append((totalFatEntries - clusterCounter)*2, 0);
+ 	}
+-	MessageHandler::ReportMessage (INFORMATION,FATTABLEWRITEMSG,
+-								   "FAT16");
++
++	MessageHandler::ReportMessage (INFORMATION,FATTABLEWRITEMSG,"FAT16");
+ 	
+ 	// Write FAT table multiple times depending upon the No of FATS set.
+ 	unsigned int noOfFats = iFAT16BootSector.NumberOfFats();
+@@ -313,6 +313,6 @@
+ 	catch(...)
+ 	{
+ 		delete dirRegionPtr;
+-		throw ErrorHandler(UNKNOWNERROR, __FILE__, __LINE__);
++		throw ErrorHandler(UNKNOWNERROR,__FILE__,__LINE__);
+ 	}
+ }
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/filesystem/source/fat32bootsector.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/filesystem/source/fat32bootsector.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/filesystem/source/fat32bootsector.cpp	2010-05-13 19:14:23.505082539 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/filesystem/source/fat32bootsector.cpp	2010-05-08 14:48:14.000000000 +0100
+@@ -21,6 +21,7 @@
+ */
+ 
+ #include "fat32bootsector.h"
++#include <cstring>
+ 
+ /**
+ Constructor of the fat16 boot sector class
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/filesystem/source/fat32filesystem.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/filesystem/source/fat32filesystem.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/filesystem/source/fat32filesystem.cpp	2010-05-13 19:14:23.505082539 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/filesystem/source/fat32filesystem.cpp	2010-05-12 14:34:09.953097477 +0100
+@@ -21,6 +21,7 @@
+ */
+ 
+ #include"fat32filesystem.h"
++#include <cstring>
+ 
+ /**
+ Initializes the boot sector of a FAT 32 volume
+@@ -90,59 +91,59 @@
+ 	//copying of boot sector values in to the array
+ 	iData = new unsigned char[BytesPerSector];
+ 	unsigned int pos = 0;
+-	memcpy(&iData[pos],JmpBoot,3);
++	memmove(&iData[pos],JmpBoot,3);
+ 	pos += 3;
+-	memcpy(&iData[pos],OEMName,8);
++	memmove(&iData[pos],OEMName,8);
+ 	pos += 8;
+-	memcpy(&iData[pos],&BytesPerSector,2);
++	memmove(&iData[pos],&BytesPerSector,2);
+ 	pos += 2;
+-	memcpy(&iData[pos],&SectorsPerCluster,1);
++	memmove(&iData[pos],&SectorsPerCluster,1);
+ 	pos += 1;
+-	memcpy(&iData[pos],&ReservedSectors,2);
++	memmove(&iData[pos],&ReservedSectors,2);
+ 	pos += 2;
+-	memcpy(&iData[pos],&NumFats,1);
++	memmove(&iData[pos],&NumFats,1);
+ 	pos += 1;
+-	memcpy(&iData[pos],&RootDirEntries,2);
++	memmove(&iData[pos],&RootDirEntries,2);
+ 	pos += 2;
+-	memcpy(&iData[pos],&LowSectors,2);
++	memmove(&iData[pos],&LowSectors,2);
+ 	pos += 2;
+-	memcpy(&iData[pos],&Media,1);
++	memmove(&iData[pos],&Media,1);
+ 	pos += 1;
+-	memcpy(&iData[pos],&FatSectors,2);
++	memmove(&iData[pos],&FatSectors,2);
+ 	pos += 2;
+-	memcpy(&iData[pos],&SectorPerTrack,2);
++	memmove(&iData[pos],&SectorPerTrack,2);
+ 	pos += 2;
+-	memcpy(&iData[pos],&NumberOfHeads,2);
++	memmove(&iData[pos],&NumberOfHeads,2);
+ 	pos += 2;
+-	memcpy(&iData[pos],&HiddenSectors,4);
++	memmove(&iData[pos],&HiddenSectors,4);
+ 	pos += 4;
+-	memcpy(&iData[pos],&HighSectorsCount,4);
++	memmove(&iData[pos],&HighSectorsCount,4);
+ 	pos += 4;
+-	memcpy(&iData[pos],&FatSectors32,4);
++	memmove(&iData[pos],&FatSectors32,4);
+ 	pos += 4;
+-	memcpy(&iData[pos],&ExtFlags,2);
++	memmove(&iData[pos],&ExtFlags,2);
+ 	pos += 2;
+-	memcpy(&iData[pos],&FileSystemVersion,2);
++	memmove(&iData[pos],&FileSystemVersion,2);
+ 	pos += 2;
+-	memcpy(&iData[pos],&RootCluster,4);
++	memmove(&iData[pos],&RootCluster,4);
+ 	pos += 4;
+-	memcpy(&iData[pos],&FSInfo,2);
++	memmove(&iData[pos],&FSInfo,2);
+ 	pos += 2;
+-	memcpy(&iData[pos],&BackUpBootSector,2);
++	memmove(&iData[pos],&BackUpBootSector,2);
+ 	pos += 2;
+-	memcpy(&iData[pos],FutureReserved,12);
++	memmove(&iData[pos],FutureReserved,12);
+ 	pos += 12;
+-	memcpy(&iData[pos],&BootSectorDriveNumber,1);
++	memmove(&iData[pos],&BootSectorDriveNumber,1);
+ 	pos += 1;
+-	memcpy(&iData[pos],&ReservedByte,1);
++	memmove(&iData[pos],&ReservedByte,1);
+ 	pos += 1;
+-	memcpy(&iData[pos],&BootSignature,1);
++	memmove(&iData[pos],&BootSignature,1);
+ 	pos += 1;
+-	memcpy(&iData[pos],&VolumeId,4);
++	memmove(&iData[pos],&VolumeId,4);
+ 	pos += 4;
+-	memcpy(&iData[pos],VolumeLab,11);
++	memmove(&iData[pos],VolumeLab,11);
+ 	pos += 11;
+-	memcpy(&iData[pos],FileSystemType,8);
++	memmove(&iData[pos],FileSystemType,8);
+ 	pos += 8;
+ 	while(pos < BytesPerSector)
+ 	{
+@@ -159,7 +160,7 @@
+ 	ComputeClusterSizeInBytes();
+ 	ComputeRootDirSectors();
+ 	ComputeBytesPerSector();
+-	MessageHandler::ReportMessage (INFORMATION,BOOTSECTORCREATEMSG, "FAT32");
++	MessageHandler::ReportMessage (INFORMATION,BOOTSECTORCREATEMSG,"FAT32");
+ }
+ 
+ /**
+@@ -172,7 +173,7 @@
+ */
+ void CFat32FileSystem::WriteBootSector(ofstream& aOutPutStream)
+ {
+-	MessageHandler::ReportMessage (INFORMATION,BOOTSECTORWRITEMSG, "FAT32");
++	MessageHandler::ReportMessage (INFORMATION,BOOTSECTORWRITEMSG,"FAT32");
+ 	aOutPutStream.write(reinterpret_cast<char*>(&iData[0]),iFAT32BootSector.BytesPerSector());
+ 	aOutPutStream.flush();
+ }
+@@ -228,8 +229,9 @@
+ 		// Each FAT32 entries occupies 4 bytes, hence multiply by 4
+ 		aFatString.append((totalFatEntries - clusterCounter)*4, 0);
+ 	}
+-	MessageHandler::ReportMessage (INFORMATION,FATTABLEWRITEMSG,
+-								   "FAT32");
++
++	MessageHandler::ReportMessage (INFORMATION,FATTABLEWRITEMSG,"FAT32");
++
+ 	//Write FAT table multiple times depending on the value of No of FATS set.
+ 	unsigned int noOfFats = iFAT32BootSector.NumberOfFats();
+ 	for(unsigned int i=0; i<noOfFats; i++)
+@@ -254,19 +256,19 @@
+ 	unsigned int bytesPerSector = iFAT32BootSector.BytesPerSector();
+ 	FSinfoData = new unsigned char[bytesPerSector];
+ 	iFSInfo.SetFSInfo();
+-	memcpy(&FSinfoData[counter], &iFSInfo.FSI_LeadSign,4);
++	memmove(&FSinfoData[counter], &iFSInfo.FSI_LeadSign,4);
+ 	counter += 4;
+-	memcpy(&FSinfoData[counter], &iFSInfo.FSI_Reserved,480);
++	memmove(&FSinfoData[counter], &iFSInfo.FSI_Reserved,480);
+ 	counter += 480;
+-	memcpy(&FSinfoData[counter], &iFSInfo.FSI_StrucSig,4);
++	memmove(&FSinfoData[counter], &iFSInfo.FSI_StrucSig,4);
+ 	counter += 4;
+-	memcpy(&FSinfoData[counter], &iFSInfo.FSI_Free_Count,4);
++	memmove(&FSinfoData[counter], &iFSInfo.FSI_Free_Count,4);
+ 	counter += 4;
+-	memcpy(&FSinfoData[counter], &iFSInfo.FSI_Nxt_Free,4);
++	memmove(&FSinfoData[counter], &iFSInfo.FSI_Nxt_Free,4);
+ 	counter += 4;
+-	memcpy(&FSinfoData[counter], &iFSInfo.FSI_Reserved2,12);
++	memmove(&FSinfoData[counter], &iFSInfo.FSI_Reserved2,12);
+ 	counter += 12;
+-	memcpy(&FSinfoData[counter], &iFSInfo.FSI_TrailSig,4);
++	memmove(&FSinfoData[counter], &iFSInfo.FSI_TrailSig,4);
+ 	counter += 4;
+ 	counter += (bytesPerSector-KSizeOfFatBootSector);
+ 	aOutPutStream.write(reinterpret_cast<char*>(&FSinfoData[0]),counter);
+@@ -367,11 +369,11 @@
+  	iTotalClusters = totalDataSectors / iFAT32BootSector.SectorsPerCluster();
+ 	if(iTotalClusters < KMinimumFat32Clusters)
+ 	{
+-		throw ErrorHandler(BOOTSECTORERROR,"Low Partition Size",__FILE__, __LINE__);
++		throw ErrorHandler(BOOTSECTORERROR,"Low Partition Size",__FILE__,__LINE__);
+ 	}
+ 	else if(iTotalClusters > KMaximumFat32Clusters)
+ 	{
+-		throw ErrorHandler(BOOTSECTORERROR,"high Partition Size",__FILE__, __LINE__);
++		throw ErrorHandler(BOOTSECTORERROR,"high Partition Size",__FILE__,__LINE__);
+ 	}
+ }
+ /**
+@@ -424,7 +426,7 @@
+ 	{
+ 		delete dirRegionPtr;
+ 		dirRegionPtr = NULL;
+-		throw ErrorHandler(UNKNOWNERROR, __FILE__, __LINE__);
++		throw ErrorHandler(UNKNOWNERROR,__FILE__,__LINE__);
+ 	}
+ }
+ 
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/filesystem/source/fatbasebootsector.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/filesystem/source/fatbasebootsector.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/filesystem/source/fatbasebootsector.cpp	2010-05-13 19:14:23.505082539 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/filesystem/source/fatbasebootsector.cpp	2010-05-08 14:43:16.000000000 +0100
+@@ -22,6 +22,7 @@
+ */
+ 
+ #include "fatbasebootsector.h"
++#include <cstring>
+ 
+ /**
+ Constructor of the base boot sector class
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/filesystem/source/filesysteminterface.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/filesystem/source/filesysteminterface.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/filesystem/source/filesysteminterface.cpp	2010-05-13 19:14:23.505082539 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/filesystem/source/filesysteminterface.cpp	2010-05-12 14:36:03.421601378 +0100
+@@ -62,7 +62,7 @@
+ 		iOutputStream.open(aImageFileName,ios::out|ios::binary);
+ 		if(iOutputStream.fail() == true )
+ 		{
+-			throw ErrorHandler(FILEOPENERROR,aImageFileName,__FILE__, __LINE__);
++			throw ErrorHandler(FILEOPENERROR,aImageFileName,__FILE__,__LINE__);
+ 		}
+ 		switch(aFileSystem)
+ 		{
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/filesystem/source/longname.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/filesystem/source/longname.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/filesystem/source/longname.cpp	2010-05-13 19:14:23.509081790 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/filesystem/source/longname.cpp	2010-05-12 14:40:22.881098047 +0100
+@@ -21,6 +21,7 @@
+ 
+ 
+ #include "longname.h"
++#include <cstring>
+ 
+ 
+ /** 
+@@ -48,7 +49,7 @@
+ 	iLongNameLength = iLongName.length();
+ 	if(iLongNameLength == 0)
+ 	{
+-		throw ErrorHandler(EMPTYFILENAME, __FILE__, __LINE__);
++		throw ErrorHandler(EMPTYFILENAME,__FILE__,__LINE__);
+ 	}
+ 	FormatLongFileName(iLongName);
+ 	iShortName = GetShortEntryName();
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/filesystem/source/messagehandler.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/filesystem/source/messagehandler.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/filesystem/source/messagehandler.cpp	2010-05-13 19:14:23.509081790 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/filesystem/source/messagehandler.cpp	2010-05-12 19:48:34.396830339 +0100
+@@ -51,7 +51,7 @@
+ @param aFileName
+ Name of the Log File
+ */
+-void MessageHandler::StartLogging(char *aFileName)
++void MessageHandler::StartLogging(char const *aFileName)
+ {
+     GetInstance()->StartLogging(aFileName);
+ }
+@@ -74,7 +74,7 @@
+ @internalComponent
+ @released
+ */
+-void MessageHandler::ReportMessage(int aMsgType, int aMsgIndex,char* aName)
++void MessageHandler::ReportMessage(int aMsgType, int aMsgIndex,char const* aName)
+ {
+ 	GetInstance()->ReportMessage(aMsgType,aMsgIndex,aName);
+ }
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/filesystem/source/messageimplementation.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/filesystem/source/messageimplementation.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/filesystem/source/messageimplementation.cpp	2010-05-13 19:14:23.509081790 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/filesystem/source/messageimplementation.cpp	2010-05-12 19:52:40.993330164 +0100
+@@ -23,15 +23,17 @@
+ 
+ #include "messageimplementation.h"
+ #include "errorhandler.h"
++#include <cstring>
+ 
+ using std::endl;
+ using std::cout;
+ typedef std::string String;
+ 
+-char *errorMssgPrefix="FileSystem : Error:";
+-char *warnMssgPrefix="FileSystem : Warning:";
+-char *infoMssgPrefix="FileSystem : Information:";
+-char *Space=" ";
++char const *errorMssgPrefix="FileSystem : Error:";
++char const *warnMssgPrefix="FileSystem : Warning:";
++char const *infoMssgPrefix="FileSystem : Information:";
++char const *Space=" ";
++
+ 
+ enum MessageArraySize{MAX=16};
+ 
+@@ -202,7 +204,7 @@
+ 
+ @param aFileName - Name of the Log file
+ */
+-void MessageImplementation::StartLogging(char *aFileName)
++void MessageImplementation::StartLogging(char const *aFileName)
+ {
+ 	char logFile[1024];
+ 	FILE *fptr;
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/host/h_utl.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/host/h_utl.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/host/h_utl.cpp	2010-05-13 19:14:23.509081790 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/host/h_utl.cpp	2010-05-08 14:36:18.000000000 +0100
+@@ -177,7 +177,7 @@
+ 
+ 
+ 	TInt build=0;
+-	memset(&aVersion, sizeof(TVersion), 0);	
++	memset(&aVersion, 0, sizeof(TVersion));
+ 	TInt i;
+ 	TInt len=strlen(str);
+ 	for (i=0; i<len; i++)
+@@ -192,7 +192,7 @@
+ 		{ 
+ 		cout << "\n Warning: major version must be in range 0 - 127 \n";
+ 		}
+-	char* pMinor = strchr(str, '.');
++	char const * pMinor = strchr(str, '.');
+ 	if (pMinor)
+ 		{
+ 		pMinor++; 
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/inc/h_utl.h /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/inc/h_utl.h
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/inc/h_utl.h	2010-05-13 19:14:23.513082299 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/inc/h_utl.h	2010-05-08 14:39:00.000000000 +0100
+@@ -65,9 +65,6 @@
+ #define _stricmp strcasecmp		
+ #define strnicmp strncasecmp	
+ 
+-// to fix the linux problem: memcpy does not work with overlapped areas.
+-#define memcpy memmove
+-
+ // hand-rolled strupr function for converting a string to all uppercase
+ char* strupr(char *a);
+ 
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/parameterfileprocessor/source/parameterfileprocessor.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/parameterfileprocessor/source/parameterfileprocessor.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/imglib/parameterfileprocessor/source/parameterfileprocessor.cpp	2010-05-13 19:14:23.513082299 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/imglib/parameterfileprocessor/source/parameterfileprocessor.cpp	2010-05-08 14:35:28.000000000 +0100
+@@ -21,6 +21,7 @@
+ 
+ 
+ #include "parameterfileprocessor.h"
++#include <cstring>
+ 
+ 
+ /**
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/group/BLD.INF /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/group/BLD.INF
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/group/BLD.INF	2010-05-13 19:14:23.517082109 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/group/BLD.INF	2010-04-29 15:03:58.000000000 +0100
+@@ -15,13 +15,14 @@
+ *
+ */
+ 
++#include <productvariant.hrh>
+ 
+ PRJ_PLATFORMS
+ TOOLS2
+ 
+ PRJ_EXPORTS
+ 
+-../maksym/fixupsym.bat              /epoc32/tools/fixupsym.bat
++../maksym/fixupsym.bat              EPOCROOT_EXPORT_PATH(epoc32/tools/fixupsym.bat)
+ ../maksym/hpsym.bat                 /epoc32/tools/hpsym.bat
+ ../maksym/maksym.bat                /epoc32/tools/maksym.bat
+ ../maksym/maksymrofs.bat            /epoc32/tools/maksymrofs.bat
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/group/readimage.mmp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/group/readimage.mmp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/group/readimage.mmp	2010-05-13 19:14:23.517082109 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/group/readimage.mmp	2010-05-08 14:49:50.000000000 +0100
+@@ -45,15 +45,16 @@
+ userinclude     ..\..\imglib\compress 
+ userinclude		..\..\imglib\patchdataprocessor\include
+ userinclude		..\..\sisutils\inc
++#ifndef TOOLS2_LINUX
+ userinclude   ..\..\imglib\boostlibrary
++#endif
+ 
+ USERINCLUDE ..\..\imglib\inc
+ OS_LAYER_SYSTEMINCLUDE_SYMBIAN
+ 
+ staticlibrary 	sisutils
+ #ifdef TOOLS2_LINUX
+-STATICLIBRARY   boost_thread-mgw34-mt-1_39_linux
+-OPTION    GCC -pthread -O2 -Wno-uninitialized
++OPTION    GCC -pthread -O2 -Wno-uninitialized -lboost_thread-mt
+ #else
+ STATICLIBRARY   boost_thread-mgw34-mt-1_39_win32
+ OPTION    GCC -mthreads -O2 -Wno-uninitialized
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/readimage/inc/common.h /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/readimage/inc/common.h
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/readimage/inc/common.h	2010-05-13 19:14:23.521083525 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/readimage/inc/common.h	2010-05-12 20:12:58.285330621 +0100
+@@ -46,7 +46,7 @@
+ #define DLL_UID1	10000079
+ #define EXE_UID1	1000007a
+ 
+-typedef enum EImageType
++enum EImageType
+ {
+ 	EUNKNOWN_IMAGE,
+ 	EROM_IMAGE,
+@@ -98,7 +98,7 @@
+ 	void Report();
+ };
+ 
+-ostream& DumpInHex(char* aDesc, TUint32 aData, bool aContinue = false,TUint aDataWidth=8,\
+-				   char aFiller='0', TUint aMaxDescWidth=28);
++ostream& DumpInHex(char const * aDesc, TUint32 aData, bool aContinue = false,
++			TUint aDataWidth=8, char aFiller='0', TUint aMaxDescWidth=28);
+ 
+ #endif //__IMAGE_READER_COMMON_H_
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/readimage/inc/image_reader.h /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/readimage/inc/image_reader.h
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/readimage/inc/image_reader.h	2010-05-13 19:14:23.521083525 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/readimage/inc/image_reader.h	2010-05-08 15:02:34.000000000 +0100
+@@ -27,7 +27,19 @@
+ 
+ 
+ #include "common.h"
+-#include <direct.h>
++#if defined(WIN32)
++	#include <direct.h>
++	#define GETCWD	_getcwd
++	#define CHDIR	_chdir
++	#define MKDIR(dir)	_mkdir(dir)
++#elif defined(__LINUX__)
++	#include <sys/stat.h>
++	#include <unistd.h>
++	#define GETCWD	getcwd
++	#define CHDIR	chdir
++	#define MKDIR(dir)	mkdir((dir),S_IRWXU | S_IRWXG | S_IROTH | S_IXOTH)
++#endif
++
+ #include <map>
+ 
+ typedef struct tag_FILEINFO
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/readimage/inc/rofs_image_reader.h /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/readimage/inc/rofs_image_reader.h
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/readimage/inc/rofs_image_reader.h	2010-05-13 19:14:23.521083525 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/readimage/inc/rofs_image_reader.h	2010-05-12 14:54:55.029099961 +0100
+@@ -65,10 +65,10 @@
+ 	void DumpDirStructure();
+ 	void DumpFileAttributes();
+ 	void MarkNodes();
+-	void SetSeek(streampos aOff, ios::seek_dir aStartPos=ios::beg);
++	void SetSeek(streampos aOff, std::ios_base::seekdir aStartPos);
+ 	void ExtractImageContents();
+ 	void CheckFileExtension(char* aFileName,TRomBuilderEntry* aEntry,TRomNode* aNode,ofstream& aLogFile );
+-	void GetCompleteNodePath(TRomNode* aNode,string& aName,char* aAppStr);
++	void GetCompleteNodePath(TRomNode* aNode,string& aName,char const* aAppStr);
+ 	void WriteEntryToFile(char* aFileName,TRomNode* aNode,ofstream& aLogFile);
+ 
+ 	void GetFileInfo(FILEINFOMAP &aFileMap);
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/readimage/src/common.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/readimage/src/common.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/readimage/src/common.cpp	2010-05-13 19:14:23.521083525 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/readimage/src/common.cpp	2010-05-12 20:18:29.509331018 +0100
+@@ -40,7 +40,7 @@
+ 	*out << "Usage Error:" << iErrMessage.c_str() << endl;
+ }
+ 
+-ostream& DumpInHex(char* aDesc, TUint32 aData, bool aContinue, TUint aDataWidth, \
++ostream& DumpInHex(char const* aDesc, TUint32 aData, bool aContinue, TUint aDataWidth, \
+ 				   char aFiller, TUint aMaxDescWidth)
+ {
+ 	TUint aDescLen = strlen(aDesc);
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/readimage/src/e32_image_reader.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/readimage/src/e32_image_reader.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/readimage/src/e32_image_reader.cpp	2010-05-13 19:14:23.525082148 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/readimage/src/e32_image_reader.cpp	2010-05-12 15:03:06.013600086 +0100
+@@ -75,26 +75,26 @@
+ 	bool aContinue = true;
+ 
+ 	DumpInHex("Size", aE32Image.iSize ) << endl;
+-	DumpInHex("Uids",aE32Image.iOrigHdr->iUid1);
+-	DumpInHex(" ",aE32Image.iOrigHdr->iUid2, aContinue);
+-	DumpInHex(" ",aE32Image.iOrigHdr->iUid3, aContinue);
+-	DumpInHex(" ",aE32Image.iOrigHdr->iUidChecksum, aContinue) << endl;
++	DumpInHex("Uids", aE32Image.iOrigHdr->iUid1);
++	DumpInHex(" ", aE32Image.iOrigHdr->iUid2, aContinue);
++	DumpInHex(" ", aE32Image.iOrigHdr->iUid3, aContinue);
++	DumpInHex(" ", aE32Image.iOrigHdr->iUidChecksum, aContinue) << endl;
+ 
+ 	
+ 	DumpInHex("Entry point", aE32Image.iOrigHdr->iEntryPoint ) << endl;
+-	DumpInHex("Code start addr" ,aE32Image.iOrigHdr->iCodeBase)<< endl;
+-	DumpInHex("Data start addr" ,aE32Image.iOrigHdr->iDataBase) << endl;
+-	DumpInHex("Text size" ,aE32Image.iOrigHdr->iTextSize) << endl;
+-	DumpInHex("Code size" ,aE32Image.iOrigHdr->iCodeSize) << endl;
+-	DumpInHex("Data size" ,aE32Image.iOrigHdr->iDataSize) << endl;
+-	DumpInHex("Bss size" ,aE32Image.iOrigHdr->iBssSize) << endl;
+-	DumpInHex("Total data size" ,(aE32Image.iOrigHdr->iBssSize + aE32Image.iOrigHdr->iDataSize)) << endl;
+-	DumpInHex("Heap min" ,aE32Image.iOrigHdr->iHeapSizeMin) << endl;
+-	DumpInHex("Heap max" ,aE32Image.iOrigHdr->iHeapSizeMax) << endl;
+-	DumpInHex("Stack size" ,aE32Image.iOrigHdr->iStackSize) << endl;
+-	DumpInHex("Export directory" ,aE32Image.iOrigHdr->iExportDirOffset) << endl;
+-	DumpInHex("Export dir count" ,aE32Image.iOrigHdr->iExportDirCount) << endl;
+-	DumpInHex("Flags" ,aE32Image.iOrigHdr->iFlags) << endl;
++	DumpInHex("Code start addr", aE32Image.iOrigHdr->iCodeBase)<< endl;
++	DumpInHex("Data start addr", aE32Image.iOrigHdr->iDataBase) << endl;
++	DumpInHex("Text size", aE32Image.iOrigHdr->iTextSize) << endl;
++	DumpInHex("Code size", aE32Image.iOrigHdr->iCodeSize) << endl;
++	DumpInHex("Data size", aE32Image.iOrigHdr->iDataSize) << endl;
++	DumpInHex("Bss size", aE32Image.iOrigHdr->iBssSize) << endl;
++	DumpInHex("Total data size", (aE32Image.iOrigHdr->iBssSize + aE32Image.iOrigHdr->iDataSize)) << endl;
++	DumpInHex("Heap min", aE32Image.iOrigHdr->iHeapSizeMin) << endl;
++	DumpInHex("Heap max", aE32Image.iOrigHdr->iHeapSizeMax) << endl;
++	DumpInHex("Stack size", aE32Image.iOrigHdr->iStackSize) << endl;
++	DumpInHex("Export directory", aE32Image.iOrigHdr->iExportDirOffset) << endl;
++	DumpInHex("Export dir count", aE32Image.iOrigHdr->iExportDirCount) << endl;
++	DumpInHex("Flags", aE32Image.iOrigHdr->iFlags) << endl;
+ 
+ 	TUint aHeaderFmt = E32ImageHeader::HdrFmtFromFlags(aE32Image.iOrigHdr->iFlags);
+ 
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/readimage/src/image_handler.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/readimage/src/image_handler.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/readimage/src/image_handler.cpp	2010-05-13 19:14:23.525082148 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/readimage/src/image_handler.cpp	2010-05-12 14:59:42.797598037 +0100
+@@ -392,7 +392,7 @@
+ 	{
+ 		if(iInputFileName.empty())
+ 		{
+-			throw SisUtilsException("Usage Error", "No SIS file passed");
++			throw SisUtilsException("Usage Error","No SIS file passed");
+ 		}
+ 
+ 		iSisUtils = new Sis2Iby((char*)iInputFileName.c_str());
+@@ -409,7 +409,7 @@
+ 		}
+ 		else
+ 		{
+-			throw SisUtilsException("Error:", "Cannot create Sis2Iby object");
++			throw SisUtilsException("Error:","Cannot create Sis2Iby object");
+ 		}
+ 	}
+ }
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/readimage/src/image_reader.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/readimage/src/image_reader.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/readimage/src/image_reader.cpp	2010-05-13 19:14:23.525082148 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/readimage/src/image_reader.cpp	2010-05-08 14:57:10.000000000 +0100
+@@ -173,7 +173,7 @@
+ 
+ 
+ 	// get the current working directory and store in buffer.
+-	if( _getcwd(currWorkingDir,_MAX_BUFFER_SIZE_) == NULL )
++	if( GETCWD(currWorkingDir,_MAX_BUFFER_SIZE_) == NULL )
+ 	{
+ 		// throw an exception if unable to get current working directory information.
+ 		throw ImageReaderException((char*)ImageReader::iImgFileName.c_str(), "Failed to get the current working directory");
+@@ -191,7 +191,7 @@
+ 			changeToDrive.append(aDelimiter);
+ 			
+ 			// change the current working directory to the specified directory.
+-			if( _chdir(changeToDrive.c_str()) )
++			if( CHDIR(changeToDrive.c_str()) )
+ 			{
+ 				// throw an exception if unable to change the directory specified.
+ 				throw ImageReaderException((char*)ImageReader::iImgFileName.c_str(), "Failed to change to the directory specified");
+@@ -200,23 +200,23 @@
+ 		else
+ 		{
+ 			// if not,then create a cPtr directory. 
+-			_mkdir(cPtr);
++			MKDIR(cPtr);
+ 			// change the current working directory to cPtr.
+-			_chdir(cPtr);
++			int r = CHDIR(cPtr); (void)r;
+ 		}
+ 		// repeat till cPtr is NULL.
+ 		while (cPtr!=NULL)
+ 		{
+-			if (cPtr = strtok(NULL,aDelimiter))
++			if ((cPtr = strtok(NULL,aDelimiter)) != NULL)
+ 			{
+ 				// create the directory.
+-				_mkdir(cPtr);
++				MKDIR(cPtr);
+ 				// change current working directory.
+-				_chdir(cPtr);
++				int r = CHDIR(cPtr); (void)r;
+ 			}
+ 		}
+ 		// revert back the working directory.
+-		_chdir(currWorkingDir);
++		int r = CHDIR(currWorkingDir); (void)r;
+ 		// replace the source path with the original path information.
+ 		strcpy(aSrcPath,origPath.c_str());
+ 		delete[] currWorkingDir;
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/readimage/src/rofs_image_reader.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/readimage/src/rofs_image_reader.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/readimage/src/rofs_image_reader.cpp	2010-05-13 19:14:23.525082148 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/readimage/src/rofs_image_reader.cpp	2010-05-12 20:14:02.065330046 +0100
+@@ -42,7 +42,7 @@
+ 	delete iImageReader;
+ }
+ 
+-void RofsImageReader::SetSeek(streampos aOff, ios::seek_dir aStartPos)
++void RofsImageReader::SetSeek(streampos aOff, std::ios_base::seekdir aStartPos)
+ {
+ 	if(!iInputFile)
+ 		return;
+@@ -417,7 +417,8 @@
+ 	{
+ 		// get the complete path 
+ 		path.assign( (char*)aNode->iName );
+-		GetCompleteNodePath( aNode, path, "\\\\" );
++		GetCompleteNodePath( aNode, path,"\\\\");
++
+ 	}
+ 	else
+ 	{
+@@ -462,7 +463,7 @@
+ @param aAppStr	- string to append.
+ @return - returns full path of the given file.
+ */
+-void RofsImageReader::GetCompleteNodePath(TRomNode* aNode,string& aName,char* aAppStr)
++void RofsImageReader::GetCompleteNodePath(TRomNode* aNode,string& aName, char const* aAppStr)
+ {
+ 	// check if the entry has a parent.
+ 	TRomNode* NodeParent = aNode->GetParent();
+@@ -496,7 +497,7 @@
+ 	{
+ 		// get the complete path 
+ 		path.assign( (char*)aNode->iName );
+-		GetCompleteNodePath( aNode, path, "\\" );
++		GetCompleteNodePath( aNode, path,"\\");
+ 	}
+ 	else
+ 	{
+@@ -549,7 +550,7 @@
+ 				{
+ 					// get the complete path 
+ 					fileName.assign( (char*)currNode->iName );
+-					GetCompleteNodePath( currNode, fileName, (char*)DIR_SEPARATOR );
++					GetCompleteNodePath( currNode, fileName,DIR_SEPARATOR );
+ 				}
+ 			}
+ 			else
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/readimage/src/rom_image_reader.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/readimage/src/rom_image_reader.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/readimage/src/rom_image_reader.cpp	2010-05-13 19:14:23.525082148 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/readimage/src/rom_image_reader.cpp	2010-05-12 20:14:55.472828545 +0100
+@@ -20,6 +20,12 @@
+ #include <e32rom.h>
+ #include "rom_image_reader.h"
+ #include "r_rom.h"
++#if defined(WIN32)
++	#define ALLOCA _alloca
++#elif defined(__LINUX__)
++	#include <alloca.h>
++	#define ALLOCA alloca
++#endif
+ 
+ void InflateUnCompress(unsigned char* source, int sourcesize, unsigned char* dest, int destsize);
+ RomImageFSEntry::RomImageFSEntry (const char* aName) : iName(aName), iSibling(0), iChildren(0) {
+@@ -495,7 +502,7 @@
+ 
+ void RomImageReader::Name(string& aName, const wchar_t* aUnicodeName, TUint aLen)
+ {
+-	char* temp = (char*)_alloca((aLen << 1) + 1) ;
++	char* temp = (char*)ALLOCA((aLen << 1) + 1) ;
+ 	size_t n = wcsrtombs(temp,&aUnicodeName,aLen,NULL);
+ 	if(n == (size_t)-1){ // the unicode string can not be coverted.
+ 		aName = "???";
+@@ -695,8 +702,8 @@
+ 	*out << left << prefix;
+ 	out->width(40);	
+ 	*out << right << file->Name() << "[" ;
+-	DumpInHex( "", aRomImgEntry->iHardwareVariant, true) << "] ";
+-	DumpInHex( " DataSize=", (aRomImgEntry->iBssSize + aRomImgEntry->iDataSize), true) << endl;
++	DumpInHex("", aRomImgEntry->iHardwareVariant, true) << "] ";
++	DumpInHex(" DataSize=", (aRomImgEntry->iBssSize + aRomImgEntry->iDataSize), true) << endl;
+ 	
+ }
+ 
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/rofsbuild/r_build.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/rofsbuild/r_build.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/rofsbuild/r_build.cpp	2010-05-13 19:14:23.525082148 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/rofsbuild/r_build.cpp	2010-05-08 15:04:00.000000000 +0100
+@@ -29,7 +29,7 @@
+ 
+ #if defined(__MSVCDOTNET__) || defined(__TOOLS2__)
+ 	#include <iomanip>
+-	#include <strstream>
++	#include <sstream>
+ #else //!__MSVCDOTNET__
+ 	#include <iomanip.h>
+ #endif //__MSVCDOTNET__
+@@ -1218,22 +1218,11 @@
+ 				f.UpdateHeaderCrc();
+ 				if (overflow)
+ 					{
+-					char * buffer = new char [size];
+-					// need to check if the compressed file will fit in the image
+-   					#if defined(__LINUX__)
+- 					ostrstream os((char*)aDest, aMaxSize, (ios::openmode)(ios::out+ios::binary));
+-					#elif defined(__TOOLS2__) && defined (_STLP_THREADS)
+-  					ostrstream os((char*)buffer, size,(ios::out+ios::binary));
+-  					#elif defined( __TOOLS2__)
+-   					ostrstream os((char*)buffer, size,(ios::out+ios::binary));
+-					#else
+-					ostrstream os( (char*)buffer, size, (ios::out+ios::binary));
+-					#endif
++					ostringstream os(ios_base::out|ios_base::binary);
+ 					os << f;
+-					TUint compressedSize = os.pcount();
++					TUint compressedSize = os.str().size();
+ 					if (compressedSize <= aMaxSize)
+ 						overflow = EFalse;	
+-					delete[] buffer;
+ 					}
+ 				}
+ 			if (overflow)
+@@ -1242,15 +1231,9 @@
+ 				Print(EError, "Overflowed by approximately 0x%x bytes.\n", size - aMaxSize);
+ 				exit(667);
+ 				}
+-  			#if defined(__TOOLS2__) && defined (_STLP_THREADS)
+-  			ostrstream os((char*)aDest, aMaxSize,(ios::out+ios::binary));
+-  			#elif __TOOLS2__
+-			ostrstream os((char*)aDest, aMaxSize, (std::_Ios_Openmode)(ios::out+ios::binary));
+-			#else
+-			ostrstream os((char*)aDest, aMaxSize, (ios::out+ios::binary));
+-			#endif
++  			ostringstream os(ios_base::out|ios_base::binary);
+ 			os << f;
+-			size = os.pcount();
++			size = os.str().size();
+ 			compression = f.iHdr->CompressionType();
+ 			memcpy(&iUids[0], aDest, sizeof(iUids));
+ 			}
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/rofsbuild/r_coreimage.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/rofsbuild/r_coreimage.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/rofsbuild/r_coreimage.cpp	2010-05-13 19:14:23.525082148 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/rofsbuild/r_coreimage.cpp	2010-05-12 15:56:04.265098243 +0100
+@@ -305,7 +305,7 @@
+ @param aInfo Used by the caller to identify where the error occurred.
+ @return Error number. KErrNone is returned if there are no errors.
+ */
+-TInt RCoreImageReader::ImageError(int aItemsRead, int aExpected, char *aInfo)
++TInt RCoreImageReader::ImageError(int aItemsRead, int aExpected, char const *aInfo)
+ 	{
+ 	if (aItemsRead != aExpected)
+ 		{
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/rofsbuild/r_coreimage.h /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/rofsbuild/r_coreimage.h
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/rofsbuild/r_coreimage.h	2010-05-13 19:14:23.525082148 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/rofsbuild/r_coreimage.h	2010-05-12 15:56:07.345100720 +0100
+@@ -103,7 +103,7 @@
+ 	TText* Filename();
+ private:
+ 	TInt ReadIdentifier();
+-	TInt ImageError(int aBytesRead, int aExpected, char* aInfo);
++	TInt ImageError(int aBytesRead, int aExpected, char const* aInfo);
+ 
+ 	/** Image type of the file being read */
+ 	TImageType iImageType;
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/rofsbuild/r_driveimage.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/rofsbuild/r_driveimage.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/rofsbuild/r_driveimage.cpp	2010-05-13 19:14:23.529081888 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/rofsbuild/r_driveimage.cpp	2010-04-21 13:27:26.000000000 +0100
+@@ -254,7 +254,7 @@
+ 	fileName.append("/");
+ 
+ 	// Go through each entry
+-	while(dirEntry = readdir(dirHandler))
++	while((dirEntry = readdir(dirHandler)) != NULL)
+ 		{
+ 		if(dirEntry->d_type != DT_DIR) 
+ 			{
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/rofsbuild/r_driveutl.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/rofsbuild/r_driveutl.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/rofsbuild/r_driveutl.cpp	2010-05-13 19:14:23.529081888 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/rofsbuild/r_driveutl.cpp	2010-05-08 15:05:24.000000000 +0100
+@@ -82,7 +82,7 @@
+ /**
+ Time Stamp for Log file.
+ */ 
+-TAny GetLocalTime(TAny)
++TAny GetLocalTime()
+ 	{
+ 	struct tm *aNewTime = NULL;
+ 	time_t aTime = 0;
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/rofsbuild/r_driveutl.h /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/rofsbuild/r_driveutl.h
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/rofsbuild/r_driveutl.h	2010-05-13 19:14:23.529081888 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/rofsbuild/r_driveutl.h	2010-05-08 15:08:42.000000000 +0100
+@@ -24,6 +24,6 @@
+ #include <e32def.h>
+ 
+ TInt Getlogfile(TText *aDriveObeyFileName,TText* &aPadLogFile);
+-TAny GetLocalTime(TAny);
++TAny GetLocalTime();
+ 
+ #endif
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/rofsbuild/r_obey.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/rofsbuild/r_obey.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/rofsbuild/r_obey.cpp	2010-05-13 19:14:23.529081888 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/rofsbuild/r_obey.cpp	2010-05-12 09:50:42.805097594 +0100
+@@ -47,6 +47,7 @@
+ #include <time.h>
+ #include <assert.h>
+ #include <errno.h>
++#include <limits.h>
+ 
+ #include <e32std.h>
+ #include <e32std_private.h>
+@@ -283,7 +284,7 @@
+ 	iCurrentLine++;
+ 	iCurrentMark = ftell(iObeyFile);
+ 	iLine[0]='\0';
+-	fgets((char*)iLine,imaxLength+1,iObeyFile);
++	char *cp = fgets((char*)iLine,imaxLength+1,iObeyFile); (void)cp;
+ 	iCurrentObeyStatement = new TText[imaxLength+1];
+ 	strcpy((char*)iCurrentObeyStatement,(char*)iLine);
+ 	iNumWords = Parse();
+@@ -646,13 +647,7 @@
+ 		{
+ 		  if (keyword == EKeywordCoreImage)
+ 			  {
+-  			  #if defined(__TOOLS2__) && defined (_STLP_THREADS)
+-  			  istringstream val(iReader.Word(1),(ios_base::in+ios_base::out));	  
+-  			  #elif __TOOLS2__
+-  			  istringstream val(iReader.Word(1),(std::_Ios_Openmode)(ios_base::in+ios_base::out));
+-			  #else
+-			  istrstream val(iReader.Word(1),strlen(iReader.Word(1)));
+-			  #endif
++			istringstream val(iReader.Word(1),ios_base::in|ios_base::out);	  
+ 			  iReader.CopyWord(1, coreImageFileName);
+ 			  iReader.MarkNext(); // ready for processing extension
+ 			  break;
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/rofsbuild/rofsbuild.mmp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/rofsbuild/rofsbuild.mmp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/rofsbuild/rofsbuild.mmp	2010-05-13 19:14:23.533081838 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/rofsbuild/rofsbuild.mmp	2010-05-08 15:07:32.000000000 +0100
+@@ -43,15 +43,16 @@
+ USERINCLUDE   ../../imglib/inc ../../imglib/compress ../../imglib/filesystem/include 
+ USERINCLUDE   ../../imglib/patchdataprocessor/include ../../imglib/parameterfileprocessor/include
+ USERINCLUDE	  ../../imglib/memmap/include
++#ifndef TOOLS2_LINUX
+ USERINCLUDE   ../../imglib/boostlibrary/
++#endif
+ 
+ STATICLIBRARY 	filesystem 
+ STATICLIBRARY   patchdataprocessor
+ STATICLIBRARY   parameterfileprocessor
+ STATICLIBRARY	memmap
+ #ifdef TOOLS2_LINUX
+-STATICLIBRARY   boost_thread-mgw34-mt-1_39_linux
+-OPTION    GCC -pthread -O2 -Wno-uninitialized
++OPTION    GCC -pthread -O2 -Wno-uninitialized -lboost_thread-mt
+ #else
+ STATICLIBRARY   boost_thread-mgw34-mt-1_39_win32
+ OPTION    GCC -mthreads -O2 -Wno-uninitialized
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/rofsbuild/r_rofs.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/rofsbuild/r_rofs.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/rofsbuild/r_rofs.cpp	2010-05-13 19:14:23.529081888 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/rofsbuild/r_rofs.cpp	2010-05-08 15:08:18.000000000 +0100
+@@ -584,9 +584,10 @@
+ 			coffhead[0x54] = 0x20;
+ 
+ 			// now fill in the text segment size
+-			*(TUint32 *) (&coffhead[0x18]) = ALIGN4K(iSizeUsed);
+-			*(TUint32 *) (&coffhead[0x40]) = ALIGN4K(iSizeUsed);
+-
++			TUint32 * p0x18 = reinterpret_cast<TUint32 *>(&coffhead[0x18]);
++			*p0x18 = ALIGN4K(iSizeUsed);
++			TUint32 * p0x40 = reinterpret_cast<TUint32 *>(&coffhead[0x40]);
++			*p0x40 = ALIGN4K(iSizeUsed);
+ 			os.write(reinterpret_cast<char *>(coffhead), sizeof(coffhead));
+ 			}
+ 		break;
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/rombuild/r_areaset.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/rombuild/r_areaset.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/rombuild/r_areaset.cpp	2010-05-13 19:14:23.533081838 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/rombuild/r_areaset.cpp	2010-05-12 14:47:03.881119838 +0100
+@@ -47,7 +47,7 @@
+ Area::~Area()
+ 	{
+ 	ReleaseAllFiles();
+-	free(const_cast<char*>(iName));	// allocated with strdup()
++	free(iName);	// allocated with strdup()
+ 	}
+ 
+ 
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/rombuild/r_areaset.h /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/rombuild/r_areaset.h
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/rombuild/r_areaset.h	2010-05-13 19:14:23.533081838 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/rombuild/r_areaset.h	2010-05-12 14:47:02.317600179 +0100
+@@ -104,7 +104,7 @@
+ public:
+ 	TRomBuilderEntry* iFirstPagedCode; // For PagedRom only
+ private:
+-	const char* iName;
++	char* iName;
+ 	TLinAddr iDestBaseAddr;
+ 	TLinAddr iSrcBaseAddr;
+ 	TLinAddr iSrcLimitAddr;
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/rombuild/r_obey.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/rombuild/r_obey.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/rombuild/r_obey.cpp	2010-05-13 19:14:23.537081787 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/rombuild/r_obey.cpp	2010-05-08 14:50:44.000000000 +0100
+@@ -301,7 +301,7 @@
+ 	iCurrentLine++;
+ 	iCurrentMark = ftell(iObeyFile);
+ 	iLine[0]='\0';
+-	fgets((char*)iLine,imaxLength+1,iObeyFile);
++	char * cp = fgets((char*)iLine,imaxLength+1,iObeyFile); (void)cp;
+ 	iNumWords = Parse();
+ 	return KErrNone;
+ 	}
+@@ -2973,13 +2973,7 @@
+ 	{
+ 		if (keyword == EKeywordCoreImage)
+ 		{
+-#if defined(__TOOLS2__) && defined (_STLP_THREADS)
+-			istringstream val(iReader.Word(1),(ios_base::in+ios_base::out));	  
+-#elif __TOOLS2__
+-			istringstream val(iReader.Word(1),(std::_Ios_Openmode)(ios_base::in+ios_base::out));
+-#else
+-			istrstream val(iReader.Word(1),strlen(iReader.Word(1)));
+-#endif
++			istringstream val(iReader.Word(1),ios_base::in|ios_base::out);
+ 			iReader.CopyWord(1, coreImageFileName);
+ 			break;
+ 		}
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/rombuild/rombuild.mmp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/rombuild/rombuild.mmp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/rombuild/rombuild.mmp	2010-05-13 19:14:23.541082016 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/rombuild/rombuild.mmp	2010-05-08 14:52:22.000000000 +0100
+@@ -41,7 +41,9 @@
+ userinclude	../../imglib/compress 	../../imglib/inc 
+ userinclude	../../imglib/patchdataprocessor/include ../../imglib/parameterfileprocessor/include
+ userinclude ../../imglib/memmap/include
++#ifndef TOOLS2_LINUX
+ userinclude	../../imglib/boostlibrary/
++#endif
+ 
+ OS_LAYER_SYSTEMINCLUDE_SYMBIAN
+ 
+@@ -50,8 +52,7 @@
+ staticlibrary 	memmap
+ 
+ #ifdef TOOLS2_LINUX
+-STATICLIBRARY   boost_thread-mgw34-mt-1_39_linux
+-OPTION    GCC -O2 -Wno-uninitialized -pthread
++OPTION    GCC -pthread -O2 -Wno-uninitialized -lboost_thread-mt
+ #else
+ STATICLIBRARY   boost_thread-mgw34-mt-1_39_win32
+ OPTION    GCC -O2 -Wno-uninitialized -mthreads
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/rombuild/r_rom.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/rombuild/r_rom.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/romtools/rombuild/r_rom.cpp	2010-05-13 19:14:23.541082016 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/romtools/rombuild/r_rom.cpp	2010-05-08 14:51:46.000000000 +0100
+@@ -1835,7 +1835,7 @@
+ 			TRomFile** l=rf->iPDeps;
+ 			FindMarked(MARK_EXE, MARK_EXE, l);
+ 			TInt nx=l-rf->iPDeps;
+-			if (!e->IsDll() && (nx>1 || nx==1 && l[-1]!=rf))
++			if (!e->IsDll() && (nx>1 || (nx==1 && l[-1]!=rf)))
+ 				{
+ 				Print(EError,"EXE %s links to the following other EXEs:\n", e->iFileName);
+ 				TInt j;
+@@ -2198,8 +2198,11 @@
+ 			coffhead[0x54] = 0x20;
+ 
+ 			// now fill in the text segment size
+-			*(TUint32 *) (&coffhead[0x18]) = ALIGN4K(iSizeUsed);
+-			*(TUint32 *) (&coffhead[0x40]) = ALIGN4K(iSizeUsed);
++			TUint32 * p0x18 = reinterpret_cast<TUint32 *>(&coffhead[0x18]);
++			*p0x18 = ALIGN4K(iSizeUsed);
++			TUint32 * p0x40 = reinterpret_cast<TUint32 *>(&coffhead[0x40]);
++			*p0x40 = ALIGN4K(iSizeUsed);
++
+ 
+ 			os.write(reinterpret_cast<char *>(coffhead), sizeof(coffhead));
+ 			}
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/sisutils/inc/pkgfileparser.h /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/sisutils/inc/pkgfileparser.h
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/sisutils/inc/pkgfileparser.h	2010-05-13 19:14:23.545083223 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/sisutils/inc/pkgfileparser.h	2010-05-12 19:15:05.824830894 +0100
+@@ -33,6 +33,10 @@
+ 
+ #include "pkglanguage.h"
+ 
++int CompareTwoString(wchar_t const * string ,wchar_t const * option);
++int CompareNString(wchar_t const * string ,wchar_t const * option, int len);
++
++
+ typedef class PkgParser PKGPARSER, *PPKGPARSER;
+ 
+ //Data structures for pkg file parsing
+@@ -147,7 +151,7 @@
+ 	int OpenFile();
+ 	void DeleteAll();
+ 
+-	HANDLE iPkgHandle;
++	FILE * iPkgHandle;
+ 
+ 	LANGUAGE_LIST iLangList;
+ 	PKG_HEADER iPkgHeader;
+@@ -162,7 +166,7 @@
+ 	void GetNextChar();
+ 	void GetNextToken();
+ 	bool GetStringToken();
+-	WORD ParseEscapeChars();
++	unsigned short ParseEscapeChars();
+ 	void GetAlphaNumericToken();
+ 	bool IsNumericToken();
+ 	void GetNumericToken();
+@@ -193,12 +197,12 @@
+ 	VARIANTVAL m_tokenValue;
+ 	int m_nLineNo;
+ 
+-	void ParserError(char* msg);
++	void ParserError(char const* msg);
+ 
+ 	friend String wstring2string (const std::wstring& aWide);
+ 	friend std::wstring string2wstring (const String& aNarrow);
+-	friend int CompareTwoString(wchar_t* string ,wchar_t* option);
+-	friend int CompareNString(wchar_t* string ,wchar_t* option, int len);
++    friend int CompareTwoString(wchar_t const * string ,wchar_t const * option);
++    friend int CompareNString(wchar_t const * string ,wchar_t const * option, int len);
+ };
+ 
+ #endif //__PKGFILEPARSER_H__
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/sisutils/inc/pkglanguage.h /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/sisutils/inc/pkglanguage.h
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/sisutils/inc/pkglanguage.h	2010-05-13 19:14:23.545083223 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/sisutils/inc/pkglanguage.h	2010-05-08 15:21:16.000000000 +0100
+@@ -26,7 +26,7 @@
+ 
+ typedef struct
+ {
+-	wchar_t*		iName;
++	wchar_t const *		iName;
+ 	unsigned long	iId;
+ } SKeyword;
+ 
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/sisutils/inc/sis2iby.h /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/sisutils/inc/sis2iby.h
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/sisutils/inc/sis2iby.h	2010-05-13 19:14:23.545083223 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/sisutils/inc/sis2iby.h	2010-05-12 20:09:01.404831073 +0100
+@@ -38,7 +38,7 @@
+ class Sis2Iby : public SisUtils
+ {
+ public:
+-	Sis2Iby(char* aFile);
++	Sis2Iby(char const* aFile);
+ 	~Sis2Iby();
+ 
+ 	void ProcessSisFile();
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/sisutils/inc/sisutils.h /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/sisutils/inc/sisutils.h
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/sisutils/inc/sisutils.h	2010-05-13 19:14:23.545083223 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/sisutils/inc/sisutils.h	2010-05-12 20:03:18.901331124 +0100
+@@ -40,6 +40,9 @@
+ #ifdef WIN32
+ #define PATHSEPARATOR  "\\"
+ #endif
++#ifdef __LINUX__
++#define PATHSEPARATOR  "/"
++#endif
+ 
+ //typedefs
+ typedef std::string String;
+@@ -53,7 +56,7 @@
+ class SisUtils
+ {
+ public:
+-	SisUtils(char* aFile);
++	SisUtils(char const* aFile);
+ 	virtual ~SisUtils();
+ 
+ 	void SetVerboseMode();
+@@ -81,7 +84,7 @@
+ class SisUtilsException
+ {
+ public:
+-	SisUtilsException(char* aFile, char* aErrMessage);
++	SisUtilsException(char const* aFile, char const* aErrMessage);
+ 	virtual ~SisUtilsException();
+ 	virtual void Report();
+ 
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/sisutils/src/pkgfileparser.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/sisutils/src/pkgfileparser.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/sisutils/src/pkgfileparser.cpp	2010-05-13 19:14:23.545083223 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/sisutils/src/pkgfileparser.cpp	2010-05-12 19:35:03.692828442 +0100
+@@ -18,13 +18,15 @@
+ 
+ #include "sisutils.h"
+ #include "pkgfileparser.h"
++#include <vector>
++#include <wchar.h>
+ 
+ // Parse options lookups
+ #define MAXTOKENLEN	30
+ struct SParseToken
+ {
+-	WCHAR pszOpt[MAXTOKENLEN];
+-	DWORD dwOpt;
++	wchar_t pszOpt[MAXTOKENLEN];
++	unsigned dwOpt;
+ };
+ 
+ const SParseToken KTokens[] =
+@@ -46,6 +48,10 @@
+ };
+ #define NUMPARSETOKENS (sizeof(KTokens)/sizeof(SParseToken))
+ 
++std::wstring string2wstring (const String& aNarrow);
++String wstring2string (const std::wstring& aWide);
++
++
+ /**
+ Constructor: PkgParser class
+ Initilize the parameters to data members.
+@@ -68,9 +74,9 @@
+ */
+ PkgParser::~PkgParser()
+ {
+-	if(iPkgHandle != INVALID_HANDLE_VALUE)
++	if(iPkgHandle)
+ 	{
+-		::CloseHandle(iPkgHandle);
++		std::fclose(iPkgHandle);
+ 	}
+ 
+ 	DeleteAll();
+@@ -84,9 +90,14 @@
+ */
+ int PkgParser::OpenFile()
+ {
+-	iPkgHandle = ::CreateFileW(string2wstring(iPkgFile).data(),GENERIC_READ,0,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);
++#ifdef WIN32
++	iPkgHandle = _wfopen(string2wstring(iPkgFile).c_str(),L"r");
++#else
++	// *nix fopen doesn't care about the filename encoding, as long as its NULL-terminated.
++	iPkgHandle = std::fopen(iPkgFile.c_str(),"r");
++#endif
++	return iPkgHandle ? 1 : 0;
+ 	
+-	return (iPkgHandle != INVALID_HANDLE_VALUE) ? 1 : 0;
+ }
+ 
+ /**
+@@ -164,7 +175,7 @@
+ {
+ 	if(!OpenFile())
+ 	{
+-		throw SisUtilsException((char*)iPkgFile.data(), "Could not open file");
++		throw SisUtilsException(iPkgFile.c_str(),"Could not open file");
+ 	}
+ 
+ 	GetNextChar();
+@@ -273,7 +284,7 @@
+ 	
+ 	// process application names
+ 	ExpectToken('{');
+-	for (WORD wNumLangs = 0; wNumLangs < iLangList.size(); wNumLangs++)
++	for (unsigned short wNumLangs = 0; wNumLangs < iLangList.size(); wNumLangs++)
+ 	{
+ 		GetNextToken ();
+ 		ExpectToken(QUOTED_STRING_TOKEN);
+@@ -771,7 +782,7 @@
+ */
+ void PkgParser::ParseOptionsBlockL()
+ {
+-	WORD wNumLangs;
++	unsigned short wNumLangs;
+ 	
+ 	ExpectToken('(');
+ 	GetNextToken ();
+@@ -838,7 +849,7 @@
+ void PkgParser::ParseVendorNameL()
+ {
+ 	ExpectToken('{');
+-	for (WORD wNumLangs = 0; wNumLangs < iLangList.size(); wNumLangs++)
++	for (unsigned short wNumLangs = 0; wNumLangs < iLangList.size(); wNumLangs++)
+ 	{
+ 		GetNextToken ();
+ 		ExpectToken(QUOTED_STRING_TOKEN);
+@@ -990,14 +1001,8 @@
+ */
+ void PkgParser::GetNextChar()
+ {
+-#ifdef WIN32
+-	DWORD dwBytesRead;
+-	if (!::ReadFile(iPkgHandle, (LPVOID)&m_pkgChar, sizeof(WCHAR), &dwBytesRead, NULL) ||
+-		dwBytesRead!=sizeof(wchar_t))
+-		m_pkgChar='\0';
+-#else
+-#error "TODO: Implement this function under other OS than Windows"
+-#endif
++	wint_t wch = std::fgetwc(iPkgHandle);
++	m_pkgChar = (wch == WEOF) ? 0 : wch;
+ }
+ 
+ /**
+@@ -1105,10 +1110,10 @@
+ */
+ bool PkgParser::GetStringToken()
+ {
+-	DWORD wCount = 0;
++	unsigned wCount = 0;
+ 	bool done=false;
+ 	bool finished=false;
+-	DWORD escapeChars = 0;
++	unsigned escapeChars = 0;
+ 	
+ 	while (!finished)
+ 	{
+@@ -1153,15 +1158,16 @@
+ @internalComponent
+ @released
+ */
+-WORD PkgParser::ParseEscapeChars()
++unsigned short PkgParser::ParseEscapeChars()
+ {
+-	WORD found=0;
+-	WCHAR temp[MAX_STRING];
+-#ifdef WIN32
++	unsigned short found=0;
++	wchar_t temp[MAX_STRING];
++
+ 	while (m_pkgChar == '<')
+ 	{
+ 		wcscpy(temp,m_tokenValue.pszString);
+-		DWORD fileOffset=::SetFilePointer(iPkgHandle, 0L, NULL, FILE_CURRENT);
++		std::fpos_t foff;
++		std::fgetpos(iPkgHandle,&foff);
+ 		try
+ 		{
+ 			GetNextChar();
+@@ -1170,32 +1176,29 @@
+ 				found++;
+ 			else
+ 			{
+-				::SetFilePointer(iPkgHandle, fileOffset, NULL, FILE_BEGIN);
++				std::fsetpos(iPkgHandle,&foff);
+ 				break;
+ 			}
+ 		}
+ 		catch (...)
+ 		{
+ 			wcscpy(m_tokenValue.pszString,temp);
+-			::SetFilePointer(iPkgHandle, fileOffset, NULL, FILE_BEGIN);
++			std::fsetpos(iPkgHandle,&foff);
+ 			break;
+ 		}
+-		DWORD num=m_tokenValue.dwNumber;
++		unsigned num=m_tokenValue.dwNumber;
+ 		// watch for CP1252 escapes which aren't appropriate for UNICODE
+ 		if (num>=0x80 && num<=0x9F) ParserError("Invalid Escape");
+-		DWORD len=wcslen(temp);
++		unsigned len=wcslen(temp);
+ 		wcscpy(m_tokenValue.pszString,temp);
+ 		if (len+2<=MAX_STRING)
+ 		{
+-			m_tokenValue.pszString[len]=(WCHAR)num;
++			m_tokenValue.pszString[len]=(wchar_t)num;
+ 			len++;
+ 			m_tokenValue.pszString[len]='\0';
+ 		}
+ 		GetNextChar();
+ 	}
+-#else
+-#error "TODO: Implement this function under other OS than Windows"
+-#endif 
+ 	return found;
+ }
+ 
+@@ -1207,7 +1210,7 @@
+ */
+ void PkgParser::GetAlphaNumericToken()
+ {
+-	WORD wCount = 0;
++	unsigned short wCount = 0;
+ 	while(m_pkgChar && (isalnum(m_pkgChar) || ((m_pkgChar) == '_')))
+ 	{
+ 		if(wCount < (MAX_STRING - 1))
+@@ -1232,12 +1235,13 @@
+ 	{
+ 		// we may have a number but we must look ahead one char to be certain
+ 		
+-		WCHAR oldChar = m_pkgChar;
+-		DWORD fileOffset=::SetFilePointer(iPkgHandle, 0L, NULL, FILE_CURRENT);
++		wchar_t oldChar = m_pkgChar;
++		std::fpos_t foff;
++		std::fgetpos(iPkgHandle,&foff);
+ 		GetNextChar();
+ 		lexemeIsNumber = iswdigit(m_pkgChar) != FALSE;
+ 		m_pkgChar = oldChar;
+-		::SetFilePointer(iPkgHandle,fileOffset,NULL,FILE_BEGIN);
++		std::fsetpos(iPkgHandle,&foff);
+ 	}
+ 	
+ 	return lexemeIsNumber;
+@@ -1251,23 +1255,30 @@
+ */
+ void PkgParser::GetNumericToken()
+ {
+-	WCHAR temp[MAX_STRING];
+-	LPWSTR end;
++	wchar_t temp[MAX_STRING];
++	wchar_t * end;
+ 	bool hexString = false;
+-	DWORD dwBytesRead;
+-	DWORD fileOffset=::SetFilePointer(iPkgHandle, 0L, NULL, FILE_CURRENT);
++	std::fpos_t foff;
++	std::fgetpos(iPkgHandle,&foff);
+ 	
+ 	temp[0]=m_pkgChar;
+-	if (!::ReadFile(iPkgHandle, &temp[1], (MAX_STRING-2)*sizeof(WCHAR), &dwBytesRead, NULL) ||
+-		dwBytesRead==0)
++	unsigned wchRead = fread(&temp[1],sizeof(wchar_t),MAX_STRING - 2,iPkgHandle);
++	if (!wchRead)
++	{ 
+ 		ParserError("Read failed");
+-	temp[1+dwBytesRead/sizeof(WCHAR)]='\0';
+-	hexString = (!CompareNString(temp, L"0x", 2) || !CompareNString(&temp[1], L"0x", 2));
++	}
++	temp[1+wchRead] = 0;
++	hexString = (!CompareNString(temp,L"0x", 2) ||
++		!CompareNString(&temp[1],L"0x", 2));
+ 	
+ 	m_tokenValue.dwNumber = wcstoul(temp, &end, (hexString) ? 16 : 10);
+ 	
+-	if (end==temp) ParserError("Read failed"); 
+-	::SetFilePointer(iPkgHandle, fileOffset+(end-temp-1)*sizeof(WCHAR), NULL, FILE_BEGIN);
++	if (end==temp)
++	{
++		ParserError("Read failed");
++	}
++	std::fsetpos(iPkgHandle,&foff);
++	std::fseek(iPkgHandle,(end-temp-1) * sizeof(wchar_t),SEEK_CUR);		
+ 	GetNextChar();
+ }
+ 
+@@ -1338,13 +1349,13 @@
+ 
+ @param msg - error message to be thrown
+ */
+-void PkgParser::ParserError(char* msg)
++void PkgParser::ParserError(char const* msg)
+ {
+ 	std::ostringstream str;
+ 
+ 	str << (char*)iPkgFile.data() << "(" << m_nLineNo << "): " << msg;
+ 
+-	throw SisUtilsException("PakageFile-Parser Error", (char*)(str.str()).data());
++	throw SisUtilsException("PackageFile-Parser Error",str.str().c_str());
+ }
+ 
+ /**
+@@ -1357,22 +1368,13 @@
+ */
+ String wstring2string (const std::wstring& aWide)
+ {
+-	int max = ::WideCharToMultiByte(CP_OEMCP,0,aWide.c_str(),aWide.length(),0,0,0,0);
+-	String reply;
+-	if (max > 0 )
+-	{
+-		char* buffer = new char [max];
+-		try
++	std::vector<char> buffer((aWide.length() * sizeof(wchar_t)) + 1, '\0');
++	size_t nchars = wcstombs(&buffer[0],aWide.c_str(),buffer.size());
++	if (nchars == (size_t)-1)
+ 		{
+-			::WideCharToMultiByte(CP_OEMCP,0,aWide.c_str(),aWide.length(),buffer,max,0,0);
+-			reply = String (buffer, max);
+-		}
+-		catch (...)
+-		{
+-			throw SisUtilsException("ParserError", "wstring to string conversion failed");
+-		}
+-		delete [] buffer;
++		throw SisUtilsException("ParserError","wstring to string conversion failed");
+ 	}
++	String reply(&buffer[0]);
+ 	return reply;
+ }
+ 
+@@ -1386,22 +1388,13 @@
+ */
+ std::wstring string2wstring (const String& aNarrow)
+ {
+-	int max = ::MultiByteToWideChar(CP_OEMCP,0,aNarrow.c_str(),aNarrow.length(),0,0);
+-	std::wstring reply;
+-	if (max > 0 )
++	std::vector<char> buffer(mblen(aNarrow.c_str(),aNarrow.length()) + 2, '\0');
++	size_t nchars = mbstowcs((wchar_t *)&buffer[0],aNarrow.c_str(),buffer.size());
++	if (nchars == (size_t)-1)
+ 	{
+-		wchar_t* buffer = new wchar_t [max];
+-		try
+-		{
+-			::MultiByteToWideChar(CP_OEMCP,0,aNarrow.c_str(),aNarrow.length(),buffer,max);
+-			reply = std::wstring (buffer, max);
+-		}
+-		catch (...)
+-		{
+-			throw SisUtilsException("ParserError", "string to wstring conversion failed");
+-		}
+-		delete [] buffer;
++		throw SisUtilsException("ParserError","string to wstring conversion failed");
+ 	}
++	std::wstring reply((wchar_t *)&buffer[0]);
+ 	return reply;
+ }
+ 
+@@ -1414,9 +1407,13 @@
+ @param string - first string
+ @param option - second string
+ */
+-int CompareTwoString(wchar_t* string ,wchar_t* option)
++int CompareTwoString(wchar_t const * string ,wchar_t const * option)
+ {
++#if defined(WIN32)
+ 	return wcsicmp(string,option);
++#elif defined(__LINUX__)
++	return wcscasecmp(string,option);
++#endif
+ }
+ 
+ /**
+@@ -1429,7 +1426,7 @@
+ @param option - second string
+ @param len - no of wide characters to be compared
+ */
+-int CompareNString(wchar_t* string ,wchar_t* option, int len)
++int CompareNString(wchar_t const * string ,wchar_t const * option, int len)
+ {
+-	return wcsnicmp(string,option,len);
++	return wmemcmp(string,option,len);
+ }
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/sisutils/src/sis2iby.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/sisutils/src/sis2iby.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/sisutils/src/sis2iby.cpp	2010-05-13 19:14:23.545083223 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/sisutils/src/sis2iby.cpp	2010-05-12 20:09:54.737329069 +0100
+@@ -28,7 +28,7 @@
+ 
+ @param aFile	- SIS file name
+ */
+-Sis2Iby::Sis2Iby(char* aFile) : SisUtils(aFile)
++Sis2Iby::Sis2Iby(char const* aFile) : SisUtils(aFile)
+ {
+ }
+ 
+@@ -70,7 +70,7 @@
+ 
+ 	if(IsVerboseMode())
+ 	{
+-		std::cout << "Processing " << (char*)sisFile.data() << std::endl;
++		std::cout << "Processing " << sisFile.c_str() << std::endl;
+ 	}
+ 
+ 	if(IsFileExist(sisFile))
+@@ -86,12 +86,12 @@
+ 			break;
+ 		case STAT_FAILURE:
+ 			{
+-				throw SisUtilsException((char*)sisFile.data(), "Failed to extract SIS file");
++				throw SisUtilsException(sisFile.c_str(),"Failed to extract SIS file");
+ 			}
+ 		}
+ 	}
+ 	else
+-		throw SisUtilsException((char*)sisFile.data(), "File not found");
++		throw SisUtilsException(sisFile.c_str(),"File not found");
+ }
+ 
+ /**
+@@ -128,18 +128,18 @@
+ 	ibyFile.append(".iby");
+ 
+ 	if( !MakeDirectory(iOutputPath) )
+-		throw SisUtilsException((char*)iOutputPath.data(), "Failed to create path");
++		throw SisUtilsException(iOutputPath.c_str(),"Failed to create path");
+ 
+ 	if(IsVerboseMode())
+ 	{
+-		std::cout << "Generating IBY file " << (char*)ibyFile.data() << std::endl;
++		std::cout << "Generating IBY file " << ibyFile.c_str() << std::endl;
+ 	}
+ 
+ 	ibyHandle.open((char*)ibyFile.data(),(std::ios::out));
+ 
+ 	if(!ibyHandle.good())
+ 	{
+-		throw SisUtilsException((char*)ibyFile.data(), "Failed to create IBY file");
++		throw SisUtilsException(ibyFile.c_str(),"Failed to create IBY file");
+ 	}
+ 
+ 	// Generating Header
+@@ -239,10 +239,10 @@
+ 			}
+ 		}
+ 		else
+-			throw SisUtilsException((char*)pkgFileName.data(), "Could not create parser object");
++			throw SisUtilsException(pkgFileName.c_str(),"Could not create parser object");
+ 	}
+ 	else
+-		throw SisUtilsException((char*)pkgFileName.data(), "File not found");
++		throw SisUtilsException(pkgFileName.c_str(),"File not found");
+ }
+ 
+ /**
+@@ -551,7 +551,12 @@
+ 		aFile.assign(fPath);
+ 	}
+ #else
+-#error "TODO: Implement this function under other OS than Windows"
++	char fPath[FILENAME_MAX];
++	if (realpath(aFile.c_str(),fPath))
++	{
++		aFile.assign(fPath);
++	}
++
+ #endif
+ 	return;
+ }
+@@ -652,7 +657,7 @@
+ 
+ 	if( !aIfs.is_open() )
+ 	{
+-		throw SisUtilsException((char*)aFile.data(), "Cannot open file");
++		throw SisUtilsException(aFile.c_str(),"Cannot open file");
+ 	}
+ 
+ 	aIfs.seekg(0,std::ios::end);
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/sisutils/src/sisutils.cpp /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/sisutils/src/sisutils.cpp
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/imgtools/sisutils/src/sisutils.cpp	2010-05-13 19:14:23.549082823 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/imgtools/sisutils/src/sisutils.cpp	2010-05-12 20:02:59.113330633 +0100
+@@ -20,6 +20,13 @@
+ #include <windows.h>
+ #include <direct.h>
+ #endif
++#ifdef __LINUX__
++#include <vector>
++#include <cerrno>
++#include <sys/wait.h>
++#include <sys/stat.h>
++#endif
++
+ 
+ #include "sisutils.h"
+ 
+@@ -33,7 +40,7 @@
+ @param aFile	- Name of the file
+ @param aErrMessage - Error message
+ */
+-SisUtilsException::SisUtilsException(char* aFile, char* aErrMessage) : \
++SisUtilsException::SisUtilsException(char const* aFile, char const* aErrMessage) : \
+ 	iSisFileName(aFile), iErrMessage(aErrMessage)
+ {
+ }
+@@ -72,7 +79,7 @@
+ 
+ @param aFile	- Name of the SIS file
+ */
+-SisUtils::SisUtils(char* aFile) :  iVerboseMode(EFalse),iSisFile(aFile)
++SisUtils::SisUtils(char const* aFile) :  iVerboseMode(EFalse),iSisFile(aFile)
+ {
+ }
+ 
+@@ -201,9 +208,47 @@
+ 	::CloseHandle( pi.hProcess );
+ 	::CloseHandle( pi.hThread );
+ #else
+-#error "TODO: Implement this function under other OS than Windows"
++	String::iterator pch = cmd.begin();
++	String::iterator end = cmd.end();
++	char *token = NULL;
++	std::vector<char *> args;
++	for ( ;pch != end; ++pch)
++	{
++		if (isspace(*pch))
++		{
++			*pch = '\0';
++			if (token) {
++				token = NULL;
++			}
++		}
++		else if (!token)
++		{
++			token = &*pch;
++			args.push_back(token);
++		}  
++	}
++	args.push_back(NULL);
++    pid_t pid = fork();
++    if (pid == 0)
++	{
++        execv(args[0],&args[0]);
++    }
++    else if (pid < 0)
++	{
++        iExitCode = static_cast<TUint32>(STAT_FAILURE);
++    }
++    else
++	{
++		int rtc;
++        pid_t ws = waitpid( pid, &rtc, 0);
++        if (ws != pid) {
++            iExitCode = static_cast<TUint32>(STAT_FAILURE);
++        }
++		else {
++			iExitCode = rtc;
++		}
++    }
+ #endif
+-
+ 	return iExitCode;
+ }
+ 
+@@ -281,7 +326,13 @@
+ 			}
+ 		}
+ #else
+-#error "TODO: Implement this function under other OS than Windows"
++		if(mkdir(dir.data(),777) != 0)
++		{
++			if(errno != EEXIST)
++			{
++				status = EFalse;
++			}
++		}
+ #endif
+ 		if(status == EFalse)
+ 			break;
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/sbsv2/cpp-raptor/group/exports.inf /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/sbsv2/cpp-raptor/group/exports.inf
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/sbsv2/cpp-raptor/group/exports.inf	2010-05-13 19:14:23.549082823 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/sbsv2/cpp-raptor/group/exports.inf	2010-05-09 13:37:03.425787000 +0100
+@@ -15,6 +15,6 @@
+ *
+ */
+ 
+-../win32/bin/cpp.exe /tools/sbs/win32/bv/bin/cpp.exe
+-../win32/i686-pc-mingw32/bin/cc1.exe /tools/sbs/win32/bv/i686-pc-mingw32/bin/cc1.exe
+-../win32/i686-pc-mingw32/bin/libiconv-2.dll /tools/sbs/win32/bv/i686-pc-mingw32/bin/libiconv-2.dll
++../win32/bin/cpp.exe ../../tools/sbs/win32/bv/bin/cpp.exe
++../win32/i686-pc-mingw32/bin/cc1.exe ../../tools/sbs/win32/bv/i686-pc-mingw32/bin/cc1.exe
++../win32/i686-pc-mingw32/bin/libiconv-2.dll ../../tools/sbs/win32/bv/i686-pc-mingw32/bin/libiconv-2.dll
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/sbsv2/raptor/group/exports.inf /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/sbsv2/raptor/group/exports.inf
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/sbsv2/raptor/group/exports.inf	2010-05-13 19:14:25.269082351 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/sbsv2/raptor/group/exports.inf	2010-05-09 13:36:29.473288000 +0100
+@@ -15,209 +15,209 @@
+ *
+ */
+ 
+-../RELEASE-NOTES.txt /tools/sbs/RELEASE-NOTES.txt
+-../bin/sbs /tools/sbs/bin/sbs
+-../bin/fixmeta.py /tools/sbs/bin/fixmeta.py
+-../bin/codetest_osbuild.sh /tools/sbs/bin/codetest_osbuild.sh
+-../bin/countbinaries.sh /tools/sbs/bin/countbinaries.sh
+-../bin/gethost.sh /tools/sbs/bin/gethost.sh
+-../bin/failedstats.py /tools/sbs/bin/failedstats.py
+-../bin/sbs.bat /tools/sbs/bin/sbs.bat
+-../bin/unsplitdirs.py /tools/sbs/bin/unsplitdirs.py
+-../bin/buildstats.py /tools/sbs/bin/buildstats.py
+-../bin/speedtest_osbuild.sh /tools/sbs/bin/speedtest_osbuild.sh
+-../bin/sbsv2cache.py /tools/sbs/bin/sbsv2cache.py
+-../bin/whatsource.py /tools/sbs/bin/whatsource.py
+-../bin/oby2linux.py /tools/sbs/bin/oby2linux.py
+-../bin/createrfifile.pl /tools/sbs/bin/createrfifile.pl
+-../bin/vartoxml.py /tools/sbs/bin/vartoxml.py
+-../bin/readme.txt /tools/sbs/bin/readme.txt
+-../bin/squashlog.py /tools/sbs/bin/squashlog.py
+-../bin/statcollate.py /tools/sbs/bin/statcollate.py
+-../bin/createvmap.py /tools/sbs/bin/createvmap.py
+-../bin/raptorlog.py /tools/sbs/bin/raptorlog.py
+-../bin/osbuild.sh /tools/sbs/bin/osbuild.sh
+-../bin/setup_user.sh /tools/sbs/bin/setup_user.sh
+-../bin/msvcr71.dll /tools/sbs/bin/msvcr71.dll
+-../bin/install_raptor.sh /tools/sbs/bin/install_raptor.sh
+-../bin/mkgetfailed.py /tools/sbs/bin/mkgetfailed.py
+-../examples/os_properties.xml /tools/sbs/examples/os_properties.xml
+-../examples/sbs_init.xml /tools/sbs/examples/sbs_init.xml
+-../lib/flm/e32abiv2stdexe.flm /tools/sbs/lib/flm/e32abiv2stdexe.flm
+-../lib/flm/user/default.flm_ex /tools/sbs/lib/flm/user/default.flm_ex
+-../lib/flm/user/globals.mk_ex /tools/sbs/lib/flm/user/globals.mk_ex
+-../lib/flm/e32abiv2dll.flm /tools/sbs/lib/flm/e32abiv2dll.flm
+-../lib/flm/tracecompiler.mk /tools/sbs/lib/flm/tracecompiler.mk
+-../lib/flm/win32exe.flm /tools/sbs/lib/flm/win32exe.flm
+-../lib/flm/template_ext.flm /tools/sbs/lib/flm/template_ext.flm
+-../lib/flm/e32abiv2ani.flm /tools/sbs/lib/flm/e32abiv2ani.flm
+-../lib/flm/converged-comms/createcommdbs.flm /tools/sbs/lib/flm/converged-comms/createcommdbs.flm
+-../lib/flm/converged-comms/installdefaultcommdb.flm /tools/sbs/lib/flm/converged-comms/installdefaultcommdb.flm
+-../lib/flm/win32plugin.flm /tools/sbs/lib/flm/win32plugin.flm
+-../lib/flm/win32klib.flm /tools/sbs/lib/flm/win32klib.flm
+-../lib/flm/extensions.xml /tools/sbs/lib/flm/extensions.xml
+-../lib/flm/stack.mk /tools/sbs/lib/flm/stack.mk
+-../lib/flm/globals.mk /tools/sbs/lib/flm/globals.mk
+-../lib/flm/win32stdexe.flm /tools/sbs/lib/flm/win32stdexe.flm
+-../lib/flm/e32abiv2lib.flm /tools/sbs/lib/flm/e32abiv2lib.flm
+-../lib/flm/win32resource.flm /tools/sbs/lib/flm/win32resource.flm
+-../lib/flm/config/default.flm /tools/sbs/lib/flm/config/default.flm
+-../lib/flm/win32lib.flm /tools/sbs/lib/flm/win32lib.flm
+-../lib/flm/null.flm /tools/sbs/lib/flm/null.flm
+-../lib/flm/tools/test_command_diff.sh /tools/sbs/lib/flm/tools/test_command_diff.sh
+-../lib/flm/tools/stlport.flm /tools/sbs/lib/flm/tools/stlport.flm
+-../lib/flm/tools/buildstubsis.flm /tools/sbs/lib/flm/tools/buildstubsis.flm
+-../lib/flm/msvctools.xml /tools/sbs/lib/flm/msvctools.xml
+-../lib/flm/tools2lib.flm /tools/sbs/lib/flm/tools2lib.flm
+-../lib/flm/win32ldd.flm /tools/sbs/lib/flm/win32ldd.flm
+-../lib/flm/tools.xml /tools/sbs/lib/flm/tools.xml
+-../lib/flm/metaflm.mk /tools/sbs/lib/flm/metaflm.mk
+-../lib/flm/e32abiv2ldd.flm /tools/sbs/lib/flm/e32abiv2ldd.flm
+-../lib/flm/e32abiv2pdl.flm /tools/sbs/lib/flm/e32abiv2pdl.flm
+-../lib/flm/e32abiv2stdlib.flm /tools/sbs/lib/flm/e32abiv2stdlib.flm
+-../lib/flm/config.xml /tools/sbs/lib/flm/config.xml
+-../lib/flm/win32stddll.flm /tools/sbs/lib/flm/win32stddll.flm
+-../lib/flm/gccxmlresource.flm /tools/sbs/lib/flm/gccxmlresource.flm
+-../lib/flm/e32abiv2textnotifier2.flm /tools/sbs/lib/flm/e32abiv2textnotifier2.flm
+-../lib/flm/e32abiv2implib.flm /tools/sbs/lib/flm/e32abiv2implib.flm
+-../lib/flm/e32abiv2exe.flm /tools/sbs/lib/flm/e32abiv2exe.flm
+-../lib/flm/win32pdl.flm /tools/sbs/lib/flm/win32pdl.flm
+-../lib/flm/win32.flm /tools/sbs/lib/flm/win32.flm
+-../lib/flm/base.xml /tools/sbs/lib/flm/base.xml
+-../lib/flm/grouping.flm /tools/sbs/lib/flm/grouping.flm
+-../lib/flm/e32abiv2.flm /tools/sbs/lib/flm/e32abiv2.flm
+-../lib/flm/e32abiv2exexp.flm /tools/sbs/lib/flm/e32abiv2exexp.flm
+-../lib/flm/e32abiv2defaults.mk /tools/sbs/lib/flm/e32abiv2defaults.mk
+-../lib/flm/e32abiv2fsy.flm /tools/sbs/lib/flm/e32abiv2fsy.flm
+-../lib/flm/final.mk /tools/sbs/lib/flm/final.mk
+-../lib/flm/none.flm /tools/sbs/lib/flm/none.flm
+-../lib/flm/analysis.xml /tools/sbs/lib/flm/analysis.xml
+-../lib/flm/e32abiv2var2.flm /tools/sbs/lib/flm/e32abiv2var2.flm
+-../lib/flm/msvctools.flm /tools/sbs/lib/flm/msvctools.flm
+-../lib/flm/win32kdll.flm /tools/sbs/lib/flm/win32kdll.flm
+-../lib/flm/win32ani.flm /tools/sbs/lib/flm/win32ani.flm
+-../lib/flm/e32abiv2plugin.flm /tools/sbs/lib/flm/e32abiv2plugin.flm
+-../lib/flm/win32bitmap.flm /tools/sbs/lib/flm/win32bitmap.flm
+-../lib/flm/tools2common.flm /tools/sbs/lib/flm/tools2common.flm
+-../lib/flm/win32fsy.flm /tools/sbs/lib/flm/win32fsy.flm
+-../lib/flm/readme.txt /tools/sbs/lib/flm/readme.txt
+-../lib/flm/e32abiv2kext.flm /tools/sbs/lib/flm/e32abiv2kext.flm
+-../lib/flm/e32abiv2stddll.flm /tools/sbs/lib/flm/e32abiv2stddll.flm
+-../lib/flm/win32exexp.flm /tools/sbs/lib/flm/win32exexp.flm
+-../lib/flm/stringtable.flm /tools/sbs/lib/flm/stringtable.flm
+-../lib/flm/utils/utility.xml /tools/sbs/lib/flm/utils/utility.xml
+-../lib/flm/utils/prebuilt.flm /tools/sbs/lib/flm/utils/prebuilt.flm
+-../lib/flm/utils/copydir.flm /tools/sbs/lib/flm/utils/copydir.flm
+-../lib/flm/win32pdd.flm /tools/sbs/lib/flm/win32pdd.flm
+-../lib/flm/taggedrules.mk /tools/sbs/lib/flm/taggedrules.mk
+-../lib/flm/booleanlogic.mk /tools/sbs/lib/flm/booleanlogic.mk
+-../lib/flm/emulator.xml /tools/sbs/lib/flm/emulator.xml
+-../lib/flm/win32kext.flm /tools/sbs/lib/flm/win32kext.flm
+-../lib/flm/test/exeabiv2_2/test.cpp /tools/sbs/lib/flm/test/exeabiv2_2/test.cpp
+-../lib/flm/test/exeabiv2_2/test_function.cpp /tools/sbs/lib/flm/test/exeabiv2_2/test_function.cpp
+-../lib/flm/test/exeabiv2_2/exeabiv2_2.mk /tools/sbs/lib/flm/test/exeabiv2_2/exeabiv2_2.mk
+-../lib/flm/test/templateext/temex.mk /tools/sbs/lib/flm/test/templateext/temex.mk
+-../lib/flm/test/templateext/Makefile /tools/sbs/lib/flm/test/templateext/Makefile
+-../lib/flm/test/Makefile /tools/sbs/lib/flm/test/Makefile
+-../lib/flm/test/exeabiv2_4/test.cpp /tools/sbs/lib/flm/test/exeabiv2_4/test.cpp
+-../lib/flm/test/exeabiv2_4/exeabiv2_4.mk /tools/sbs/lib/flm/test/exeabiv2_4/exeabiv2_4.mk
+-../lib/flm/test/exeabiv2_4/test_big.cpp /tools/sbs/lib/flm/test/exeabiv2_4/test_big.cpp
+-../lib/flm/test/flmtests.mk /tools/sbs/lib/flm/test/flmtests.mk
+-../lib/flm/test/ciaabiv2_1/uc_exe.cia /tools/sbs/lib/flm/test/ciaabiv2_1/uc_exe.cia
+-../lib/flm/test/ciaabiv2_1/uc_exe.cpp /tools/sbs/lib/flm/test/ciaabiv2_1/uc_exe.cpp
+-../lib/flm/test/ciaabiv2_1/ciaabiv2_1.mk /tools/sbs/lib/flm/test/ciaabiv2_1/ciaabiv2_1.mk
+-../lib/flm/test/export1/Makefile /tools/sbs/lib/flm/test/export1/Makefile
+-../lib/flm/test/export1/t1e.h /tools/sbs/lib/flm/test/export1/t1e.h
+-../lib/flm/test/export1/t4e.h /tools/sbs/lib/flm/test/export1/t4e.h
+-../lib/flm/test/export1/t2e.h /tools/sbs/lib/flm/test/export1/t2e.h
+-../lib/flm/test/export1/t3e.h /tools/sbs/lib/flm/test/export1/t3e.h
+-../lib/flm/test/dllabiv2_1/test.cpp /tools/sbs/lib/flm/test/dllabiv2_1/test.cpp
+-../lib/flm/test/dllabiv2_1/dllabiv2_1.mk /tools/sbs/lib/flm/test/dllabiv2_1/dllabiv2_1.mk
+-../lib/flm/test/raptorglue/raptorglue.mk /tools/sbs/lib/flm/test/raptorglue/raptorglue.mk
+-../lib/flm/test/dllbasictests.mk /tools/sbs/lib/flm/test/dllbasictests.mk
+-../lib/flm/test/exeabiv2_1/test.cpp /tools/sbs/lib/flm/test/exeabiv2_1/test.cpp
+-../lib/flm/test/exeabiv2_1/exeabiv2_1.mk /tools/sbs/lib/flm/test/exeabiv2_1/exeabiv2_1.mk
+-../lib/flm/test/dllabiv2_defaults.mk /tools/sbs/lib/flm/test/dllabiv2_defaults.mk
+-../lib/flm/test/exeperftests.mk /tools/sbs/lib/flm/test/exeperftests.mk
+-../lib/flm/test/ciatests.mk /tools/sbs/lib/flm/test/ciatests.mk
+-../lib/flm/test/environment/pvm/pvmtest.mk /tools/sbs/lib/flm/test/environment/pvm/pvmtest.mk
+-../lib/flm/test/environment/make/test_variable_restore.mk /tools/sbs/lib/flm/test/environment/make/test_variable_restore.mk
+-../lib/flm/test/exebasictests.mk /tools/sbs/lib/flm/test/exebasictests.mk
+-../lib/flm/test/exeabiv2_defaults.mk /tools/sbs/lib/flm/test/exeabiv2_defaults.mk
+-../lib/flm/test/exeabiv2_3/exeabiv2_3.mk /tools/sbs/lib/flm/test/exeabiv2_3/exeabiv2_3.mk
+-../lib/flm/test/exeabiv2_3/test_big.cpp /tools/sbs/lib/flm/test/exeabiv2_3/test_big.cpp
+-../lib/flm/win32stdlib.flm /tools/sbs/lib/flm/win32stdlib.flm
+-../lib/flm/win32var2.flm /tools/sbs/lib/flm/win32var2.flm
+-../lib/flm/win32implib.flm /tools/sbs/lib/flm/win32implib.flm
+-../lib/flm/bitmap.flm /tools/sbs/lib/flm/bitmap.flm
+-../lib/flm/build.flm /tools/sbs/lib/flm/build.flm
+-../lib/flm/build.xml /tools/sbs/lib/flm/build.xml
+-../lib/flm/tools2exe.flm /tools/sbs/lib/flm/tools2exe.flm
+-../lib/flm/e32abiv2klib.flm /tools/sbs/lib/flm/e32abiv2klib.flm
+-../lib/flm/standard.xml /tools/sbs/lib/flm/standard.xml
+-../lib/flm/win32var.flm /tools/sbs/lib/flm/win32var.flm
+-../lib/flm/e32abiv2pdd.flm /tools/sbs/lib/flm/e32abiv2pdd.flm
+-../lib/flm/e32abiv2none.flm /tools/sbs/lib/flm/e32abiv2none.flm
+-../lib/flm/romfile.mk /tools/sbs/lib/flm/romfile.mk
+-../lib/flm/win32textnotifier2.flm /tools/sbs/lib/flm/win32textnotifier2.flm
+-../lib/flm/resource.flm /tools/sbs/lib/flm/resource.flm
+-../lib/flm/flmtools.mk /tools/sbs/lib/flm/flmtools.mk
+-../lib/flm/gnumakefile.flm /tools/sbs/lib/flm/gnumakefile.flm
+-../lib/flm/e32abiv2kdll.flm /tools/sbs/lib/flm/e32abiv2kdll.flm
+-../lib/flm/e32abiv2var.flm /tools/sbs/lib/flm/e32abiv2var.flm
+-../lib/flm/win32dll.flm /tools/sbs/lib/flm/win32dll.flm
+-../lib/flm/gccxml.flm /tools/sbs/lib/flm/gccxml.flm
+-../lib/flm/e32postlink.mk /tools/sbs/lib/flm/e32postlink.mk
+-../lib/config/default.xml /tools/sbs/lib/config/default.xml
+-../lib/config/build.xml /tools/sbs/lib/config/build.xml
+-../lib/config/interfaces.xml /tools/sbs/lib/config/interfaces.xml
+-../lib/config/gcc.xml /tools/sbs/lib/config/gcc.xml
+-../lib/config/variants.xml /tools/sbs/lib/config/variants.xml
+-../lib/config/coverity.xml /tools/sbs/lib/config/coverity.xml
+-../lib/config/meta.xml /tools/sbs/lib/config/meta.xml
+-../lib/config/locations.xml /tools/sbs/lib/config/locations.xml
+-../lib/config/gccxml.xml /tools/sbs/lib/config/gccxml.xml
+-../lib/config/carbide.xml /tools/sbs/lib/config/carbide.xml
+-../lib/config/msvc.xml /tools/sbs/lib/config/msvc.xml
+-../lib/config/make.xml /tools/sbs/lib/config/make.xml
+-../lib/config/root.xml /tools/sbs/lib/config/root.xml
+-../lib/config/winscw.xml /tools/sbs/lib/config/winscw.xml
+-../lib/config/arm.xml /tools/sbs/lib/config/arm.xml
+-../lib/config/gcce.xml /tools/sbs/lib/config/gcce.xml
+-../lib/config/rvct.xml /tools/sbs/lib/config/rvct.xml
+-../python/raptor_makefile.py /tools/sbs/python/raptor_makefile.py
+-../python/filter_interface.py /tools/sbs/python/filter_interface.py
+-../python/raptor_start.py /tools/sbs/python/raptor_start.py
+-../python/pyparsing.py /tools/sbs/python/pyparsing.py
+-../python/raptor_cli.py /tools/sbs/python/raptor_cli.py
+-../python/raptor_cache.py /tools/sbs/python/raptor_cache.py
+-../python/raptor_meta.py /tools/sbs/python/raptor_meta.py
+-../python/raptor_xml.py /tools/sbs/python/raptor_xml.py
+-../python/raptor_version.py /tools/sbs/python/raptor_version.py
+-../python/generic_path.py /tools/sbs/python/generic_path.py
+-../python/raptor_make.py /tools/sbs/python/raptor_make.py
+-../python/plugins/filter_logfile.py /tools/sbs/python/plugins/filter_logfile.py
+-../python/plugins/filter_terminal.py /tools/sbs/python/plugins/filter_terminal.py
+-../python/plugins/filter_carbide.py /tools/sbs/python/plugins/filter_carbide.py
+-../python/plugins/filter_what.py /tools/sbs/python/plugins/filter_what.py
+-../python/plugins/dummyplugin.py /tools/sbs/python/plugins/dummyplugin.py
+-../python/plugins/filter_clean.py /tools/sbs/python/plugins/filter_clean.py
+-../python/plugins/filter_squashlog.py /tools/sbs/python/plugins/filter_squashlog.py
+-../python/plugins/filter_checksource.py /tools/sbs/python/plugins/filter_checksource.py
+-../python/plugins/filter_splitlog.py /tools/sbs/python/plugins/filter_splitlog.py
+-../python/sbs_dist.py /tools/sbs/python/sbs_dist.py
+-../python/raptor_utilities.py /tools/sbs/python/raptor_utilities.py
+-../python/pluginbox.py /tools/sbs/python/pluginbox.py
+-../python/dos2unix.py /tools/sbs/python/dos2unix.py
+-../python/raptor_data.py /tools/sbs/python/raptor_data.py
+-../python/filter_list.py /tools/sbs/python/filter_list.py
+-../python/raptor.py /tools/sbs/python/raptor.py
+-../python/mmpparser.py /tools/sbs/python/mmpparser.py
+-../python/filter_utils.py /tools/sbs/python/filter_utils.py
+-../schema/build/2_0.xsd /tools/sbs/schema/build/2_0.xsd
+-../schema/build/log/1_0.xsd /tools/sbs/schema/build/log/1_0.xsd
+-../schema/build/1_0.xsd /tools/sbs/schema/build/1_0.xsd
+-../win32/bin/ransleep.exe /tools/sbs/win32/bin/ransleep.exe
+-../win32/bin/sbs_descramble.exe /tools/sbs/win32/bin/sbs_descramble.exe
+-../win32/bin/talonctl.exe /tools/sbs/win32/bin/talonctl.exe
+-../win32/bin/talon.exe /tools/sbs/win32/bin/talon.exe
++../RELEASE-NOTES.txt ../../tools/sbs/RELEASE-NOTES.txt
++../bin/sbs ../../tools/sbs/bin/sbs
++../bin/fixmeta.py ../../tools/sbs/bin/fixmeta.py
++../bin/codetest_osbuild.sh ../../tools/sbs/bin/codetest_osbuild.sh
++../bin/countbinaries.sh ../../tools/sbs/bin/countbinaries.sh
++../bin/gethost.sh ../../tools/sbs/bin/gethost.sh
++../bin/failedstats.py ../../tools/sbs/bin/failedstats.py
++../bin/sbs.bat ../../tools/sbs/bin/sbs.bat
++../bin/unsplitdirs.py ../../tools/sbs/bin/unsplitdirs.py
++../bin/buildstats.py ../../tools/sbs/bin/buildstats.py
++../bin/speedtest_osbuild.sh ../../tools/sbs/bin/speedtest_osbuild.sh
++../bin/sbsv2cache.py ../../tools/sbs/bin/sbsv2cache.py
++../bin/whatsource.py ../../tools/sbs/bin/whatsource.py
++../bin/oby2linux.py ../../tools/sbs/bin/oby2linux.py
++../bin/createrfifile.pl ../../tools/sbs/bin/createrfifile.pl
++../bin/vartoxml.py ../../tools/sbs/bin/vartoxml.py
++../bin/readme.txt ../../tools/sbs/bin/readme.txt
++../bin/squashlog.py ../../tools/sbs/bin/squashlog.py
++../bin/statcollate.py ../../tools/sbs/bin/statcollate.py
++../bin/createvmap.py ../../tools/sbs/bin/createvmap.py
++../bin/raptorlog.py ../../tools/sbs/bin/raptorlog.py
++../bin/osbuild.sh ../../tools/sbs/bin/osbuild.sh
++../bin/setup_user.sh ../../tools/sbs/bin/setup_user.sh
++../bin/msvcr71.dll ../../tools/sbs/bin/msvcr71.dll
++../bin/install_raptor.sh ../../tools/sbs/bin/install_raptor.sh
++../bin/mkgetfailed.py ../../tools/sbs/bin/mkgetfailed.py
++../examples/os_properties.xml ../../tools/sbs/examples/os_properties.xml
++../examples/sbs_init.xml ../../tools/sbs/examples/sbs_init.xml
++../lib/flm/e32abiv2stdexe.flm ../../tools/sbs/lib/flm/e32abiv2stdexe.flm
++../lib/flm/user/default.flm_ex ../../tools/sbs/lib/flm/user/default.flm_ex
++../lib/flm/user/globals.mk_ex ../../tools/sbs/lib/flm/user/globals.mk_ex
++../lib/flm/e32abiv2dll.flm ../../tools/sbs/lib/flm/e32abiv2dll.flm
++../lib/flm/tracecompiler.mk ../../tools/sbs/lib/flm/tracecompiler.mk
++../lib/flm/win32exe.flm ../../tools/sbs/lib/flm/win32exe.flm
++../lib/flm/template_ext.flm ../../tools/sbs/lib/flm/template_ext.flm
++../lib/flm/e32abiv2ani.flm ../../tools/sbs/lib/flm/e32abiv2ani.flm
++../lib/flm/converged-comms/createcommdbs.flm ../../tools/sbs/lib/flm/converged-comms/createcommdbs.flm
++../lib/flm/converged-comms/installdefaultcommdb.flm ../../tools/sbs/lib/flm/converged-comms/installdefaultcommdb.flm
++../lib/flm/win32plugin.flm ../../tools/sbs/lib/flm/win32plugin.flm
++../lib/flm/win32klib.flm ../../tools/sbs/lib/flm/win32klib.flm
++../lib/flm/extensions.xml ../../tools/sbs/lib/flm/extensions.xml
++../lib/flm/stack.mk ../../tools/sbs/lib/flm/stack.mk
++../lib/flm/globals.mk ../../tools/sbs/lib/flm/globals.mk
++../lib/flm/win32stdexe.flm ../../tools/sbs/lib/flm/win32stdexe.flm
++../lib/flm/e32abiv2lib.flm ../../tools/sbs/lib/flm/e32abiv2lib.flm
++../lib/flm/win32resource.flm ../../tools/sbs/lib/flm/win32resource.flm
++../lib/flm/config/default.flm ../../tools/sbs/lib/flm/config/default.flm
++../lib/flm/win32lib.flm ../../tools/sbs/lib/flm/win32lib.flm
++../lib/flm/null.flm ../../tools/sbs/lib/flm/null.flm
++../lib/flm/tools/test_command_diff.sh ../../tools/sbs/lib/flm/tools/test_command_diff.sh
++../lib/flm/tools/stlport.flm ../../tools/sbs/lib/flm/tools/stlport.flm
++../lib/flm/tools/buildstubsis.flm ../../tools/sbs/lib/flm/tools/buildstubsis.flm
++../lib/flm/msvctools.xml ../../tools/sbs/lib/flm/msvctools.xml
++../lib/flm/tools2lib.flm ../../tools/sbs/lib/flm/tools2lib.flm
++../lib/flm/win32ldd.flm ../../tools/sbs/lib/flm/win32ldd.flm
++../lib/flm/tools.xml ../../tools/sbs/lib/flm/tools.xml
++../lib/flm/metaflm.mk ../../tools/sbs/lib/flm/metaflm.mk
++../lib/flm/e32abiv2ldd.flm ../../tools/sbs/lib/flm/e32abiv2ldd.flm
++../lib/flm/e32abiv2pdl.flm ../../tools/sbs/lib/flm/e32abiv2pdl.flm
++../lib/flm/e32abiv2stdlib.flm ../../tools/sbs/lib/flm/e32abiv2stdlib.flm
++../lib/flm/config.xml ../../tools/sbs/lib/flm/config.xml
++../lib/flm/win32stddll.flm ../../tools/sbs/lib/flm/win32stddll.flm
++../lib/flm/gccxmlresource.flm ../../tools/sbs/lib/flm/gccxmlresource.flm
++../lib/flm/e32abiv2textnotifier2.flm ../../tools/sbs/lib/flm/e32abiv2textnotifier2.flm
++../lib/flm/e32abiv2implib.flm ../../tools/sbs/lib/flm/e32abiv2implib.flm
++../lib/flm/e32abiv2exe.flm ../../tools/sbs/lib/flm/e32abiv2exe.flm
++../lib/flm/win32pdl.flm ../../tools/sbs/lib/flm/win32pdl.flm
++../lib/flm/win32.flm ../../tools/sbs/lib/flm/win32.flm
++../lib/flm/base.xml ../../tools/sbs/lib/flm/base.xml
++../lib/flm/grouping.flm ../../tools/sbs/lib/flm/grouping.flm
++../lib/flm/e32abiv2.flm ../../tools/sbs/lib/flm/e32abiv2.flm
++../lib/flm/e32abiv2exexp.flm ../../tools/sbs/lib/flm/e32abiv2exexp.flm
++../lib/flm/e32abiv2defaults.mk ../../tools/sbs/lib/flm/e32abiv2defaults.mk
++../lib/flm/e32abiv2fsy.flm ../../tools/sbs/lib/flm/e32abiv2fsy.flm
++../lib/flm/final.mk ../../tools/sbs/lib/flm/final.mk
++../lib/flm/none.flm ../../tools/sbs/lib/flm/none.flm
++../lib/flm/analysis.xml ../../tools/sbs/lib/flm/analysis.xml
++../lib/flm/e32abiv2var2.flm ../../tools/sbs/lib/flm/e32abiv2var2.flm
++../lib/flm/msvctools.flm ../../tools/sbs/lib/flm/msvctools.flm
++../lib/flm/win32kdll.flm ../../tools/sbs/lib/flm/win32kdll.flm
++../lib/flm/win32ani.flm ../../tools/sbs/lib/flm/win32ani.flm
++../lib/flm/e32abiv2plugin.flm ../../tools/sbs/lib/flm/e32abiv2plugin.flm
++../lib/flm/win32bitmap.flm ../../tools/sbs/lib/flm/win32bitmap.flm
++../lib/flm/tools2common.flm ../../tools/sbs/lib/flm/tools2common.flm
++../lib/flm/win32fsy.flm ../../tools/sbs/lib/flm/win32fsy.flm
++../lib/flm/readme.txt ../../tools/sbs/lib/flm/readme.txt
++../lib/flm/e32abiv2kext.flm ../../tools/sbs/lib/flm/e32abiv2kext.flm
++../lib/flm/e32abiv2stddll.flm ../../tools/sbs/lib/flm/e32abiv2stddll.flm
++../lib/flm/win32exexp.flm ../../tools/sbs/lib/flm/win32exexp.flm
++../lib/flm/stringtable.flm ../../tools/sbs/lib/flm/stringtable.flm
++../lib/flm/utils/utility.xml ../../tools/sbs/lib/flm/utils/utility.xml
++../lib/flm/utils/prebuilt.flm ../../tools/sbs/lib/flm/utils/prebuilt.flm
++../lib/flm/utils/copydir.flm ../../tools/sbs/lib/flm/utils/copydir.flm
++../lib/flm/win32pdd.flm ../../tools/sbs/lib/flm/win32pdd.flm
++../lib/flm/taggedrules.mk ../../tools/sbs/lib/flm/taggedrules.mk
++../lib/flm/booleanlogic.mk ../../tools/sbs/lib/flm/booleanlogic.mk
++../lib/flm/emulator.xml ../../tools/sbs/lib/flm/emulator.xml
++../lib/flm/win32kext.flm ../../tools/sbs/lib/flm/win32kext.flm
++../lib/flm/test/exeabiv2_2/test.cpp ../../tools/sbs/lib/flm/test/exeabiv2_2/test.cpp
++../lib/flm/test/exeabiv2_2/test_function.cpp ../../tools/sbs/lib/flm/test/exeabiv2_2/test_function.cpp
++../lib/flm/test/exeabiv2_2/exeabiv2_2.mk ../../tools/sbs/lib/flm/test/exeabiv2_2/exeabiv2_2.mk
++../lib/flm/test/templateext/temex.mk ../../tools/sbs/lib/flm/test/templateext/temex.mk
++../lib/flm/test/templateext/Makefile ../../tools/sbs/lib/flm/test/templateext/Makefile
++../lib/flm/test/Makefile ../../tools/sbs/lib/flm/test/Makefile
++../lib/flm/test/exeabiv2_4/test.cpp ../../tools/sbs/lib/flm/test/exeabiv2_4/test.cpp
++../lib/flm/test/exeabiv2_4/exeabiv2_4.mk ../../tools/sbs/lib/flm/test/exeabiv2_4/exeabiv2_4.mk
++../lib/flm/test/exeabiv2_4/test_big.cpp ../../tools/sbs/lib/flm/test/exeabiv2_4/test_big.cpp
++../lib/flm/test/flmtests.mk ../../tools/sbs/lib/flm/test/flmtests.mk
++../lib/flm/test/ciaabiv2_1/uc_exe.cia ../../tools/sbs/lib/flm/test/ciaabiv2_1/uc_exe.cia
++../lib/flm/test/ciaabiv2_1/uc_exe.cpp ../../tools/sbs/lib/flm/test/ciaabiv2_1/uc_exe.cpp
++../lib/flm/test/ciaabiv2_1/ciaabiv2_1.mk ../../tools/sbs/lib/flm/test/ciaabiv2_1/ciaabiv2_1.mk
++../lib/flm/test/export1/Makefile ../../tools/sbs/lib/flm/test/export1/Makefile
++../lib/flm/test/export1/t1e.h ../../tools/sbs/lib/flm/test/export1/t1e.h
++../lib/flm/test/export1/t4e.h ../../tools/sbs/lib/flm/test/export1/t4e.h
++../lib/flm/test/export1/t2e.h ../../tools/sbs/lib/flm/test/export1/t2e.h
++../lib/flm/test/export1/t3e.h ../../tools/sbs/lib/flm/test/export1/t3e.h
++../lib/flm/test/dllabiv2_1/test.cpp ../../tools/sbs/lib/flm/test/dllabiv2_1/test.cpp
++../lib/flm/test/dllabiv2_1/dllabiv2_1.mk ../../tools/sbs/lib/flm/test/dllabiv2_1/dllabiv2_1.mk
++../lib/flm/test/raptorglue/raptorglue.mk ../../tools/sbs/lib/flm/test/raptorglue/raptorglue.mk
++../lib/flm/test/dllbasictests.mk ../../tools/sbs/lib/flm/test/dllbasictests.mk
++../lib/flm/test/exeabiv2_1/test.cpp ../../tools/sbs/lib/flm/test/exeabiv2_1/test.cpp
++../lib/flm/test/exeabiv2_1/exeabiv2_1.mk ../../tools/sbs/lib/flm/test/exeabiv2_1/exeabiv2_1.mk
++../lib/flm/test/dllabiv2_defaults.mk ../../tools/sbs/lib/flm/test/dllabiv2_defaults.mk
++../lib/flm/test/exeperftests.mk ../../tools/sbs/lib/flm/test/exeperftests.mk
++../lib/flm/test/ciatests.mk ../../tools/sbs/lib/flm/test/ciatests.mk
++../lib/flm/test/environment/pvm/pvmtest.mk ../../tools/sbs/lib/flm/test/environment/pvm/pvmtest.mk
++../lib/flm/test/environment/make/test_variable_restore.mk ../../tools/sbs/lib/flm/test/environment/make/test_variable_restore.mk
++../lib/flm/test/exebasictests.mk ../../tools/sbs/lib/flm/test/exebasictests.mk
++../lib/flm/test/exeabiv2_defaults.mk ../../tools/sbs/lib/flm/test/exeabiv2_defaults.mk
++../lib/flm/test/exeabiv2_3/exeabiv2_3.mk ../../tools/sbs/lib/flm/test/exeabiv2_3/exeabiv2_3.mk
++../lib/flm/test/exeabiv2_3/test_big.cpp ../../tools/sbs/lib/flm/test/exeabiv2_3/test_big.cpp
++../lib/flm/win32stdlib.flm ../../tools/sbs/lib/flm/win32stdlib.flm
++../lib/flm/win32var2.flm ../../tools/sbs/lib/flm/win32var2.flm
++../lib/flm/win32implib.flm ../../tools/sbs/lib/flm/win32implib.flm
++../lib/flm/bitmap.flm ../../tools/sbs/lib/flm/bitmap.flm
++../lib/flm/build.flm ../../tools/sbs/lib/flm/build.flm
++../lib/flm/build.xml ../../tools/sbs/lib/flm/build.xml
++../lib/flm/tools2exe.flm ../../tools/sbs/lib/flm/tools2exe.flm
++../lib/flm/e32abiv2klib.flm ../../tools/sbs/lib/flm/e32abiv2klib.flm
++../lib/flm/standard.xml ../../tools/sbs/lib/flm/standard.xml
++../lib/flm/win32var.flm ../../tools/sbs/lib/flm/win32var.flm
++../lib/flm/e32abiv2pdd.flm ../../tools/sbs/lib/flm/e32abiv2pdd.flm
++../lib/flm/e32abiv2none.flm ../../tools/sbs/lib/flm/e32abiv2none.flm
++../lib/flm/romfile.mk ../../tools/sbs/lib/flm/romfile.mk
++../lib/flm/win32textnotifier2.flm ../../tools/sbs/lib/flm/win32textnotifier2.flm
++../lib/flm/resource.flm ../../tools/sbs/lib/flm/resource.flm
++../lib/flm/flmtools.mk ../../tools/sbs/lib/flm/flmtools.mk
++../lib/flm/gnumakefile.flm ../../tools/sbs/lib/flm/gnumakefile.flm
++../lib/flm/e32abiv2kdll.flm ../../tools/sbs/lib/flm/e32abiv2kdll.flm
++../lib/flm/e32abiv2var.flm ../../tools/sbs/lib/flm/e32abiv2var.flm
++../lib/flm/win32dll.flm ../../tools/sbs/lib/flm/win32dll.flm
++../lib/flm/gccxml.flm ../../tools/sbs/lib/flm/gccxml.flm
++../lib/flm/e32postlink.mk ../../tools/sbs/lib/flm/e32postlink.mk
++../lib/config/default.xml ../../tools/sbs/lib/config/default.xml
++../lib/config/build.xml ../../tools/sbs/lib/config/build.xml
++../lib/config/interfaces.xml ../../tools/sbs/lib/config/interfaces.xml
++../lib/config/gcc.xml ../../tools/sbs/lib/config/gcc.xml
++../lib/config/variants.xml ../../tools/sbs/lib/config/variants.xml
++../lib/config/coverity.xml ../../tools/sbs/lib/config/coverity.xml
++../lib/config/meta.xml ../../tools/sbs/lib/config/meta.xml
++../lib/config/locations.xml ../../tools/sbs/lib/config/locations.xml
++../lib/config/gccxml.xml ../../tools/sbs/lib/config/gccxml.xml
++../lib/config/carbide.xml ../../tools/sbs/lib/config/carbide.xml
++../lib/config/msvc.xml ../../tools/sbs/lib/config/msvc.xml
++../lib/config/make.xml ../../tools/sbs/lib/config/make.xml
++../lib/config/root.xml ../../tools/sbs/lib/config/root.xml
++../lib/config/winscw.xml ../../tools/sbs/lib/config/winscw.xml
++../lib/config/arm.xml ../../tools/sbs/lib/config/arm.xml
++../lib/config/gcce.xml ../../tools/sbs/lib/config/gcce.xml
++../lib/config/rvct.xml ../../tools/sbs/lib/config/rvct.xml
++../python/raptor_makefile.py ../../tools/sbs/python/raptor_makefile.py
++../python/filter_interface.py ../../tools/sbs/python/filter_interface.py
++../python/raptor_start.py ../../tools/sbs/python/raptor_start.py
++../python/pyparsing.py ../../tools/sbs/python/pyparsing.py
++../python/raptor_cli.py ../../tools/sbs/python/raptor_cli.py
++../python/raptor_cache.py ../../tools/sbs/python/raptor_cache.py
++../python/raptor_meta.py ../../tools/sbs/python/raptor_meta.py
++../python/raptor_xml.py ../../tools/sbs/python/raptor_xml.py
++../python/raptor_version.py ../../tools/sbs/python/raptor_version.py
++../python/generic_path.py ../../tools/sbs/python/generic_path.py
++../python/raptor_make.py ../../tools/sbs/python/raptor_make.py
++../python/plugins/filter_logfile.py ../../tools/sbs/python/plugins/filter_logfile.py
++../python/plugins/filter_terminal.py ../../tools/sbs/python/plugins/filter_terminal.py
++../python/plugins/filter_carbide.py ../../tools/sbs/python/plugins/filter_carbide.py
++../python/plugins/filter_what.py ../../tools/sbs/python/plugins/filter_what.py
++../python/plugins/dummyplugin.py ../../tools/sbs/python/plugins/dummyplugin.py
++../python/plugins/filter_clean.py ../../tools/sbs/python/plugins/filter_clean.py
++../python/plugins/filter_squashlog.py ../../tools/sbs/python/plugins/filter_squashlog.py
++../python/plugins/filter_checksource.py ../../tools/sbs/python/plugins/filter_checksource.py
++../python/plugins/filter_splitlog.py ../../tools/sbs/python/plugins/filter_splitlog.py
++../python/sbs_dist.py ../../tools/sbs/python/sbs_dist.py
++../python/raptor_utilities.py ../../tools/sbs/python/raptor_utilities.py
++../python/pluginbox.py ../../tools/sbs/python/pluginbox.py
++../python/dos2unix.py ../../tools/sbs/python/dos2unix.py
++../python/raptor_data.py ../../tools/sbs/python/raptor_data.py
++../python/filter_list.py ../../tools/sbs/python/filter_list.py
++../python/raptor.py ../../tools/sbs/python/raptor.py
++../python/mmpparser.py ../../tools/sbs/python/mmpparser.py
++../python/filter_utils.py ../../tools/sbs/python/filter_utils.py
++../schema/build/2_0.xsd ../../tools/sbs/schema/build/2_0.xsd
++../schema/build/log/1_0.xsd ../../tools/sbs/schema/build/log/1_0.xsd
++../schema/build/1_0.xsd ../../tools/sbs/schema/build/1_0.xsd
++../win32/bin/ransleep.exe ../../tools/sbs/win32/bin/ransleep.exe
++../win32/bin/sbs_descramble.exe ../../tools/sbs/win32/bin/sbs_descramble.exe
++../win32/bin/talonctl.exe ../../tools/sbs/win32/bin/talonctl.exe
++../win32/bin/talon.exe ../../tools/sbs/win32/bin/talon.exe
+diff -u -r -b -B -E -x '*.hg*' -x '*cross-plat-dev-utils*' -x '*baseline.txt' -x '*README' -x '*TODO' -x '*NEWS' -x '*.pyc' -x '*~' -x '*linux-unknown-libc2_11*' /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/sbsv2/raptor/lib/config/gcc.xml /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/sbsv2/raptor/lib/config/gcc.xml
+--- /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/sbsv2/raptor/lib/config/gcc.xml	2010-05-13 19:14:25.273081672 +0100
++++ /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/sbsv2/raptor/lib/config/gcc.xml	2010-05-08 13:35:13.030060000 +0100
+@@ -26,7 +26,7 @@
+ 		<!-- used by FLM code -->
+ 		<set name='COMPILER' value='$(GCC) -c' type='tool' versionCommand='$(GCC) -v' versionResult='gcc version (3.[456])|(4.[0-9])'/>
+ 
+-		<set name='CFLAGS' value='-fdefer-pop -fmerge-constants -fthread-jumps -floop-optimize -fif-conversion -fif-conversion2 -fguess-branch-probability -fcprop-registers -foptimize-sibling-calls -fstrength-reduce -fcse-follow-jumps -fcse-skip-blocks -frerun-cse-after-loop -frerun-loop-opt -fgcse -fgcse-lm -fgcse-sm -fgcse-las -fdelete-null-pointer-checks -fexpensive-optimizations -fregmove -fschedule-insns -fschedule-insns2 -fsched-interblock -fsched-spec -fcaller-saves -fpeephole2 -freorder-blocks -freorder-functions -fstrict-aliasing -funit-at-a-time -falign-functions -falign-jumps -falign-loops -falign-labels -fcrossjumping -pipe -Wall -Wno-ctor-dtor-privacy -Wno-unknown-pragmas -m32'/>
++		<set name='CFLAGS' value='-std=c++0x -fdefer-pop -fmerge-constants -fthread-jumps -floop-optimize -fif-conversion -fif-conversion2 -fguess-branch-probability -fcprop-registers -foptimize-sibling-calls -fstrength-reduce -fcse-follow-jumps -fcse-skip-blocks -frerun-cse-after-loop -frerun-loop-opt -fgcse -fgcse-lm -fgcse-sm -fgcse-las -fdelete-null-pointer-checks -fexpensive-optimizations -fregmove -fschedule-insns -fschedule-insns2 -fsched-interblock -fsched-spec -fcaller-saves -fpeephole2 -freorder-blocks -freorder-functions -fstrict-aliasing -funit-at-a-time -falign-functions -falign-jumps -falign-loops -falign-labels -fcrossjumping -pipe -Wall -Wno-ctor-dtor-privacy -Wno-unknown-pragmas -m32'/>
+ 
+ 		<!-- msys based programs sometimes don't search the path properly.
+ 		COMPILER_PATH can be set to tell gcc where to find
+@@ -45,7 +45,7 @@
+ 		<set name='CDEFS.WIN32' value='$(CDEFS.DEFAULT) _WIN32 WIN32 _WINDOWS __TOOLS2_WINDOWS__'/>
+ 		<set name='CDEFS.LINUX' value='$(CDEFS.DEFAULT) __LINUX__ __TOOLS2_LINUX__'/>
+ 
+-		<set name='INC.COMPILER' value='$(EPOCINCLUDE)/gcc_mingw/gcc_mingw_3_4_2.h'/>
++		<set name='INC.COMPILER' value='$(EPOCINCLUDE)/gcc/gcc.h'/>
+ 
+ 		<set name='OPT.D' value='-D'/>
+ 		<set name='OPT.L' value='-L'/>
+@@ -55,12 +55,11 @@
+ 		<set name='OPT.SYSTEMINCLUDE' value='-isystem '/>
+ 		<set name='OPT.USERINCLUDE' value='-I '/>
+ 
+-		<!-- always use stlport headers -->
+-		<set name='SYSTEMINCLUDE' value='$(EPOCINCLUDE)/tools/stlport'/>
++		<set name='SYSTEMINCLUDE' value=''/>
+ 
+ 		<set name='LINKER' value='$(GCC)'/>
+ 		<set name='LFLAGS' value=''/>
+-		<set name='STATICLIBRARY' value='stlport.5.1'/>
++		<set name='STATICLIBRARY' value=''/>
+ 		<set name='LIBS' value=''/>
+ 		<set name='LIBS.WIN32' value='$(LIBS)'/>
+ 		<set name='LIBS.LINUX' value='$(LIBS) pthread'/>
+Only in /home/imk/symbian/epocroot-pdk-3.0.h/latest_build/build/sbsv2/raptor/python: raptor_version.py.bak
+Only in /home/imk/symbian/epocroot-pdk-3.0.h/linux_build/sbsv2/raptor/util: build