1) Make prep_env.pl apply a patch to epoc32/sbs_config/s60_sbs_config.xml to replace the ARM
kernel-side runtime ksrt4_0.lib with the GCCE one ksrt_gcce.lib
2) Fix romnibus.pl so it won't do case-tampering on the epocroot prefix of source paths in oby/iby files.
--- a/cross-plat-dev-utils/fix_epoc32_linux.pl Fri Oct 22 13:25:58 2010 +0100
+++ b/cross-plat-dev-utils/fix_epoc32_linux.pl Tue Nov 02 14:32:27 2010 +0000
@@ -48,5 +48,8 @@
symlink($gcc_443_prelinclude_hdr_abs,$gcc_prelinclude_hdr);
print ">>> Created symlink \"$gcc_443_prelinclude_hdr_abs\" -> \"$gcc_prelinclude_hdr\"\n";
}
+my $s60_sbs_config_xml = File::Spec->catfile("epoc32","sbs_config","s60_sbs_config.xml");
+apply_patch_file($s60_sbs_config_xml);
+
exit 0;
--- a/cross-plat-dev-utils/fix_epoc32_win.pl Fri Oct 22 13:25:58 2010 +0100
+++ b/cross-plat-dev-utils/fix_epoc32_win.pl Tue Nov 02 14:32:27 2010 +0000
@@ -21,7 +21,6 @@
usage(\@ARGV,"This script makes required fixes to epoc32 tree in Windows");
my $epocroot = get_epocroot();
my $gcc_mingw_include_dir = File::Spec->catfile(get_epoc32_dir(),"include","gcc_mingw");
-
if (! -d $gcc_mingw_include_dir) {
print ">>> Creating \"$gcc_mingw_include_dir\"\n";
mkdir $gcc_mingw_include_dir or die $!;
@@ -29,8 +28,10 @@
my $gcc_mingw_preinclude = File::Spec->catfile("epoc32","include","gcc_mingw","gcc_mingw_3_4_2.h");
my $libwsock32_deb = File::Spec->catfile("epoc32","release","tools2","deb","libwsock32.a");
my $libwsock32_rel = File::Spec->catfile("epoc32","release","tools2","rel","libwsock32.a");
+my $s60_sbs_config_xml = File::Spec->catfile("epoc32","sbs_config","s60_sbs_config.xml");
apply_patch_file($gcc_mingw_preinclude);
apply_patch_file($libwsock32_deb);
apply_patch_file($libwsock32_rel);
+apply_patch_file($s60_sbs_config_xml);
exit 0;
--- a/imgtools/romtools/rombuild/romnibus.pl Fri Oct 22 13:25:58 2010 +0100
+++ b/imgtools/romtools/rombuild/romnibus.pl Tue Nov 02 14:32:27 2010 +0000
@@ -55,6 +55,7 @@
my $toolpath;
my $epoc32path;
my $epocroot;
+my $lc_epocroot;
my $drive = "";
my $base_path;
my $line;
@@ -120,6 +121,7 @@
($epocroot_vol,$epocroot_dir,$epocroot_file) = File::Spec->splitpath($epocroot);
$epocroot = File::Spec->catfile(($epocroot_vol,$epocroot_dir,$epocroot_file),undef);
print "EPOCROOT=$ENV{EPOCROOT} resolved as \"$epocroot\"\n";
+ $lc_epocroot = lc($epocroot);
$epoc32path = "${epocroot}epoc32";
$toolpath = File::Spec->catfile($epoc32path,"tools");
push @INC, $toolpath;
@@ -660,7 +662,8 @@
my $lc_leaf = lc($leaf);
my $lc_dir = lc($dir);
$lc_dir =~ s/\/$//;
- my $fulldir = $lc_dir;
+ $lc_dir =~ s|^$lc_epocroot|$epocroot|;
+ my $fulldir = $lc_dir;
$fulldir =~ s|//|/|g;
$dest =~ s|\/|\\|g;
$dest = '\\' . $dest, unless ($dest =~ /^\\/);