1) Fix for Bug 3157 - Compilation error in gui_common.h
2) Fix for Bug 3158 - Compilation error in qemu-char.c
3) Fix for Bug 3160 - [GCCE] Illegal instruction in baseport/syborg/bootstrap/syborg.s
4) Fix for Bug 3162 - [GCCE] VFP math support needs excluded to build syborg ROM
5) Fix for Bug 3163 - [GCCE] Syborg baseport build breaks when EPOCROOT is not filesystem root
6) Fix for Bug 3164 - [GCCE] baseport/syborg/bld.inf needs to discriminate GCCE from ARMCC
--- a/baseport/syborg/bld.inf Tue Jun 15 12:57:21 2010 +0100
+++ b/baseport/syborg/bld.inf Mon Jul 05 15:30:26 2010 +0100
@@ -36,9 +36,9 @@
PRJ_EXTENSIONS
start extension base/genexec
#ifdef SYMBIAN_OLD_EXPORT_LOCATION
-option INC_PATH /epoc32/include
+option INC_PATH $(EPOCROOT)epoc32/include
#else
-option INC_PATH /epoc32/include/platform
+option INC_PATH $(EPOCROOT)epoc32/include/platform
#endif
option EXTRA_SRC_PATH $(EXTENSION_ROOT)/../../../../os/kernelhwsrv/kernel/eka/kernel
end
@@ -108,19 +108,26 @@
PRJ_EXTENSIONS
start extension base/bootstrap
#ifdef SYMBIAN_OLD_EXPORT_LOCATION
-option INC_PATH /epoc32/include
+option INC_PATH $(EPOCROOT)epoc32/include
#else
-option INC_PATH /epoc32/include/platform
+option INC_PATH $(EPOCROOT)epoc32/include/platform
+#endif
+#ifdef GCCE
+option GCCE GCCE
+#endif
+#ifdef ARMCC
+option ARMCC ARMCC
#endif
option NAME _syborg_bootloader_bootrom
option MEMMODEL multiple
//option MEMMODEL flexible
//option MEMMODEL moving
option SOURCES syborg.s
+//option INCLUDES $(EXTENSION_ROOT)/config.inc $(EXTENSION_ROOT)/bootstrap/syborg.inc
option INCLUDES config.inc syborg.inc
option E32PATH $(EXTENSION_ROOT)/../../../../os/kernelhwsrv/kernel
option EXTRA_INC_PATH $(EXTENSION_ROOT)/bootstrap
-option EXTRA_SRC_PATH $(EXTENSION_ROOT)/bootstrap
+option EXTRA_SRC_PATH $(EXTENSION_ROOT)/bootstrap
end
// Build image armv5 for urel and udeb
--- a/baseport/syborg/bootstrap/syborg.s Tue Jun 15 12:57:21 2010 +0100
+++ b/baseport/syborg/bootstrap/syborg.s Mon Jul 05 15:30:26 2010 +0100
@@ -482,7 +482,7 @@
GetDebugPortBase ROUT
ldr r1, [r12, #TRomHeader_iDebugPort]
cmp r1, #42 ; JTAG?
- movseq r1, #0
+ moveqs r1, #0
bxeq lr ; yes - return 0 and set Z
cmp r1, #1
blo GetUartPort0
--- a/baseport/syborg/rom/base_syborg.iby Tue Jun 15 12:57:21 2010 +0100
+++ b/baseport/syborg/rom/base_syborg.iby Mon Jul 05 15:30:26 2010 +0100
@@ -65,8 +65,10 @@
#include "..\include\trk.iby"
#endif
+#ifndef GCCE
// IEEE-mode VFP support
extension[VARID]= KERNEL_DIR\DEBUG_DIR\evfp.dll \sys\bin\evfp.dll
+#endif
// Either include NGA or Non NGA Framebuffer
--- a/baseport/syborg/rom/kernel.iby Tue Jun 15 12:57:21 2010 +0100
+++ b/baseport/syborg/rom/kernel.iby Mon Jul 05 15:30:26 2010 +0100
@@ -24,8 +24,10 @@
extension[VARID]= \epoc32\release\##KMAIN##\##BUILD##\_##VARIANT##_BTRACEX.LDD \sys\bin\BTRACEX.LDD
variant[VARID]= \epoc32\release\##KMAIN##\##BUILD##\_##VARIANT##_KASYBORG.DLL \sys\bin\KASYBORG.DLL
+#ifndef GCCE
// IEEE-mode VFP support
extension[VARID]= \epoc32\release\##KMAIN##\##BUILD##\EVFP.DLL \sys\bin\EVFP.DLL
+#endif
// Common monitor support. Must be before both interactive debugger and automatic logger.
extension[VARID]= \Epoc32\release\##KMAIN##\##BUILD##\_##VARIANT##_EXMONCOMMON.DLL \sys\bin\EXMONCOMMON.DLL
--- a/baseport/syborg/variant.mmh Tue Jun 15 12:57:21 2010 +0100
+++ b/baseport/syborg/variant.mmh Mon Jul 05 15:30:26 2010 +0100
@@ -99,9 +99,10 @@
//macro __CPU_ARM1136_ERRATUM_411920_FIXED
-
+#ifndef GCCE
macro __CPU_HAS_VFP
#define USE_VFP_MATH
+#endif
// !@! not moving when 1136
//#define MM_MOVING
macro __DEBUGGER_SUPPORT__
--- a/symbian-qemu-0.9.1-12/qemu-symbian-svp/gui_common.h Tue Jun 15 12:57:21 2010 +0100
+++ b/symbian-qemu-0.9.1-12/qemu-symbian-svp/gui_common.h Mon Jul 05 15:30:26 2010 +0100
@@ -49,7 +49,7 @@
# define SET_GUI_AREA_Y0(area_ptr,y0) (area_ptr)->y0 = (y0)
# define SET_GUI_AREA_X1(area_ptr,x1) (area_ptr)->x1 = (x1)
# define SET_GUI_AREA_Y1(area_ptr,y1) (area_ptr)->y1 = (y1)
-#elif define WIDTH_HEIGHT
+#elif defined WIDTH_HEIGHT
# define GET_GUI_AREA_WIDTH(area_ptr) (area_ptr)->width
# define GET_GUI_AREA_HEIGHT(area_ptr) (area_ptr)->height
# define GET_GUI_AREA_X1(area_ptr) ((area_ptr)->x0 + (area_ptr)->width)
--- a/symbian-qemu-0.9.1-12/qemu-symbian-svp/qemu-char.c Tue Jun 15 12:57:21 2010 +0100
+++ b/symbian-qemu-0.9.1-12/qemu-symbian-svp/qemu-char.c Mon Jul 05 15:30:26 2010 +0100
@@ -615,7 +615,7 @@
{
CharDriverState *ret = NULL;
const char *temp_format = "/tmp/%s";
- char *fname = qemu_mallocz(sizeof(char) * (strlen(temp_path) + strlen(temp_file)));
+ char *fname = qemu_mallocz(sizeof(char) * (strlen(temp_format) + strlen(temp_file)));
if (fname)
{
sprintf(fname, temp_format, temp_file);