aboutsummaryrefslogtreecommitdiffstats
path: root/portabase
diff options
context:
space:
mode:
Diffstat (limited to 'portabase')
-rw-r--r--portabase/beecrypt/config.m416
-rw-r--r--portabase/beecrypt/gas.patch166
-rw-r--r--portabase/beecrypt/m4.diff155
-rw-r--r--portabase/metakit-2.4.9.3/metakit-2.4.9.3.patch108
-rw-r--r--portabase/portabase-1.9/fileselector.patch128
-rw-r--r--portabase/portabase-1.9/qtopia.patch20
6 files changed, 593 insertions, 0 deletions
diff --git a/portabase/beecrypt/config.m4 b/portabase/beecrypt/config.m4
index e69de29bb2..05d2d1593d 100644
--- a/portabase/beecrypt/config.m4
+++ b/portabase/beecrypt/config.m4
@@ -0,0 +1,16 @@
+dnl config.m4
+ifdef(`__CONFIG_M4_INCLUDED__',,`
+define(`CONFIG_TOP_SRCDIR',`/home/hrw/zaurus/oe/build/0930/tmp/work/beecrypt-3.1.0-r0/beecrypt-3.1.0')
+define(`ASM_OS',`linux-gnu')
+define(`ASM_CPU',`arm')
+define(`ASM_ARCH',`arm')
+define(`ASM_BIGENDIAN',`no')
+define(`ASM_SRCDIR',`/home/hrw/zaurus/oe/build/0930/tmp/work/beecrypt-3.1.0-r0/beecrypt-3.1.0/gas')
+define(`TEXTSEG',`.text')
+define(`GLOBL',`.globl')
+define(`GSYM_PREFIX',`')
+define(`LSYM_PREFIX',`.L')
+define(`ALIGN',`')
+define(`__CONFIG_M4_INCLUDED__')
+include(asmdefs.m4)
+')
diff --git a/portabase/beecrypt/gas.patch b/portabase/beecrypt/gas.patch
index e69de29bb2..bdb20944d3 100644
--- a/portabase/beecrypt/gas.patch
+++ b/portabase/beecrypt/gas.patch
@@ -0,0 +1,166 @@
+diff -ur beecrypt-3.1.0/gas.orig/aesopt.ppc.m4 beecrypt-3.1.0/gas/aesopt.ppc.m4
+--- beecrypt-3.1.0/gas.orig/aesopt.ppc.m4 2003-06-09 08:03:21 +0200
++++ beecrypt-3.1.0/gas/aesopt.ppc.m4 2004-10-06 17:59:31 +0200
+@@ -21,7 +21,7 @@
+ dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+ include(config.m4)
+-include(ASM_SRCDIR/ppc.m4)
++include(ppc.m4)
+
+ define(`s0',`r24')
+ define(`s1',`r25')
+diff -ur beecrypt-3.1.0/gas.orig/aesopt.x86.m4 beecrypt-3.1.0/gas/aesopt.x86.m4
+--- beecrypt-3.1.0/gas.orig/aesopt.x86.m4 2003-06-09 10:35:39 +0200
++++ beecrypt-3.1.0/gas/aesopt.x86.m4 2004-10-06 17:54:36 +0200
+@@ -1,5 +1,5 @@
+ include(config.m4)
+-include(ASM_SRCDIR/x86.m4)
++include(x86.m4)
+
+ ifdef(`USE_MMX',`
+
+diff -ur beecrypt-3.1.0/gas.orig/blowfishopt.i586.m4 beecrypt-3.1.0/gas/blowfishopt.i586.m4
+--- beecrypt-3.1.0/gas.orig/blowfishopt.i586.m4 2003-06-09 10:25:11 +0200
++++ beecrypt-3.1.0/gas/blowfishopt.i586.m4 2004-10-06 17:54:58 +0200
+@@ -19,7 +19,7 @@
+ dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+ include(config.m4)
+-include(ASM_SRCDIR/x86.m4)
++include(x86.m4)
+
+ dnl during this macro we assume:
+ dnl bp in %esi, xl and xr in %ecx and %edx, %eax and %ebx clear
+diff -ur beecrypt-3.1.0/gas.orig/blowfishopt.ppc.m4 beecrypt-3.1.0/gas/blowfishopt.ppc.m4
+--- beecrypt-3.1.0/gas.orig/blowfishopt.ppc.m4 2003-06-04 19:39:57 +0200
++++ beecrypt-3.1.0/gas/blowfishopt.ppc.m4 2004-10-06 17:59:36 +0200
+@@ -21,7 +21,7 @@
+ dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+ include(config.m4)
+-include(ASM_SRCDIR/ppc.m4)
++include(ppc.m4)
+
+ define(`round',`
+ lwz r9,$3(r3)
+diff -ur beecrypt-3.1.0/gas.orig/mpopt.alpha.m4 beecrypt-3.1.0/gas/mpopt.alpha.m4
+--- beecrypt-3.1.0/gas.orig/mpopt.alpha.m4 2003-05-29 10:44:37 +0200
++++ beecrypt-3.1.0/gas/mpopt.alpha.m4 2004-10-06 17:57:20 +0200
+@@ -19,7 +19,7 @@
+ dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+ include(config.m4)
+-include(ASM_SRCDIR/alpha.m4)
++include(alpha.m4)
+
+
+ C_FUNCTION_BEGIN(mpadd)
+diff -ur beecrypt-3.1.0/gas.orig/mpopt.ia64.m4 beecrypt-3.1.0/gas/mpopt.ia64.m4
+--- beecrypt-3.1.0/gas.orig/mpopt.ia64.m4 2003-05-28 10:40:44 +0200
++++ beecrypt-3.1.0/gas/mpopt.ia64.m4 2004-10-06 17:57:32 +0200
+@@ -19,7 +19,7 @@
+ dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+ include(config.m4)
+-include(ASM_SRCDIR/ia64.m4)
++include(ia64.m4)
+
+ define(`sze',`r14')
+ define(`dst',`r15')
+diff -ur beecrypt-3.1.0/gas.orig/mpopt.m68k.m4 beecrypt-3.1.0/gas/mpopt.m68k.m4
+--- beecrypt-3.1.0/gas.orig/mpopt.m68k.m4 2003-04-26 14:01:57 +0200
++++ beecrypt-3.1.0/gas/mpopt.m68k.m4 2004-10-06 17:57:38 +0200
+@@ -19,7 +19,7 @@
+ dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+ include(config.m4)
+-include(ASM_SRCDIR/m68k.m4)
++include(m68k.m4)
+
+ dnl works
+ C_FUNCTION_BEGIN(mpadd)
+diff -ur beecrypt-3.1.0/gas.orig/mpopt.ppc64.m4 beecrypt-3.1.0/gas/mpopt.ppc64.m4
+--- beecrypt-3.1.0/gas.orig/mpopt.ppc64.m4 2003-04-19 18:05:43 +0200
++++ beecrypt-3.1.0/gas/mpopt.ppc64.m4 2004-10-06 17:57:54 +0200
+@@ -19,7 +19,7 @@
+ dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+ include(config.m4)
+-include(ASM_SRCDIR/ppc64.m4)
++include(ppc64.m4)
+
+
+ C_FUNCTION_BEGIN(mpaddw)
+diff -ur beecrypt-3.1.0/gas.orig/mpopt.ppc.m4 beecrypt-3.1.0/gas/mpopt.ppc.m4
+--- beecrypt-3.1.0/gas.orig/mpopt.ppc.m4 2003-04-19 18:05:43 +0200
++++ beecrypt-3.1.0/gas/mpopt.ppc.m4 2004-10-06 17:57:50 +0200
+@@ -19,7 +19,7 @@
+ dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+ include(config.m4)
+-include(ASM_SRCDIR/ppc.m4)
++include(ppc.m4)
+
+
+ C_FUNCTION_BEGIN(mpaddw)
+diff -ur beecrypt-3.1.0/gas.orig/mpopt.sparcv8.m4 beecrypt-3.1.0/gas/mpopt.sparcv8.m4
+--- beecrypt-3.1.0/gas.orig/mpopt.sparcv8.m4 2003-04-19 18:05:43 +0200
++++ beecrypt-3.1.0/gas/mpopt.sparcv8.m4 2004-10-06 17:56:54 +0200
+@@ -19,7 +19,7 @@
+ dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+ include(config.m4)
+-include(ASM_SRCDIR/sparc.m4)
++include(sparc.m4)
+
+
+ C_FUNCTION_BEGIN(mpsetmul)
+diff -ur beecrypt-3.1.0/gas.orig/mpopt.sparcv8plus.m4 beecrypt-3.1.0/gas/mpopt.sparcv8plus.m4
+--- beecrypt-3.1.0/gas.orig/mpopt.sparcv8plus.m4 2003-04-19 18:05:43 +0200
++++ beecrypt-3.1.0/gas/mpopt.sparcv8plus.m4 2004-10-06 17:57:04 +0200
+@@ -19,7 +19,7 @@
+ dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+ include(config.m4)
+-include(ASM_SRCDIR/sparc.m4)
++include(sparc.m4)
+
+
+ C_FUNCTION_BEGIN(mpaddw)
+diff -ur beecrypt-3.1.0/gas.orig/mpopt.x86_64.m4 beecrypt-3.1.0/gas/mpopt.x86_64.m4
+--- beecrypt-3.1.0/gas.orig/mpopt.x86_64.m4 2003-05-29 14:40:37 +0200
++++ beecrypt-3.1.0/gas/mpopt.x86_64.m4 2004-10-06 17:56:14 +0200
+@@ -21,7 +21,7 @@
+ .file "mpopt.s"
+
+ include(config.m4)
+-include(ASM_SRCDIR/x86_64.m4)
++include(x86_64.m4)
+
+
+ C_FUNCTION_BEGIN(mpzero)
+diff -ur beecrypt-3.1.0/gas.orig/mpopt.x86.m4 beecrypt-3.1.0/gas/mpopt.x86.m4
+--- beecrypt-3.1.0/gas.orig/mpopt.x86.m4 2003-06-04 19:39:58 +0200
++++ beecrypt-3.1.0/gas/mpopt.x86.m4 2004-10-06 17:56:27 +0200
+@@ -19,7 +19,7 @@
+ dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+ include(config.m4)
+-include(ASM_SRCDIR/x86.m4)
++include(x86.m4)
+
+
+ C_FUNCTION_BEGIN(mpzero)
+diff -ur beecrypt-3.1.0/gas.orig/sha1opt.x86.m4 beecrypt-3.1.0/gas/sha1opt.x86.m4
+--- beecrypt-3.1.0/gas.orig/sha1opt.x86.m4 2003-05-08 19:52:54 +0200
++++ beecrypt-3.1.0/gas/sha1opt.x86.m4 2004-10-06 17:55:20 +0200
+@@ -19,7 +19,7 @@
+ dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+ include(config.m4)
+-include(ASM_SRCDIR/x86.m4)
++include(x86.m4)
+
+ .equ K00, 0x5a827999
+ .equ K20, 0x6ed9eba1
diff --git a/portabase/beecrypt/m4.diff b/portabase/beecrypt/m4.diff
index e69de29bb2..0d07f75cb2 100644
--- a/portabase/beecrypt/m4.diff
+++ b/portabase/beecrypt/m4.diff
@@ -0,0 +1,155 @@
+--- beecrypt-3.1.0/acinclude.m4.orig 2004-10-06 17:09:25.000000000 +0200
++++ beecrypt-3.1.0/acinclude.m4 2004-10-06 17:12:22.000000000 +0200
+@@ -9,7 +9,7 @@
+
+
+ dnl BEECRYPT_INT_TYPES
+-AC_DEFUN(BEECRYPT_INT_TYPES,[
++AC_DEFUN([BEECRYPT_INT_TYPES],[
+ AC_TYPE_SIZE_T
+ bc_typedef_size_t=
+ if test $ac_cv_type_size_t != yes; then
+@@ -112,7 +112,7 @@
+
+
+ dnl BEECRYPT_CPU_BITS
+-AC_DEFUN(BEECRYPT_CPU_BITS,[
++AC_DEFUN([BEECRYPT_CPU_BITS],[
+ AC_CHECK_SIZEOF([unsigned long])
+ if test $ac_cv_sizeof_unsigned_long -eq 8; then
+ AC_SUBST(MP_WBITS,64U)
+@@ -125,7 +125,7 @@
+
+
+ dnl BEECRYPT_WORKING_AIO
+-AC_DEFUN(BEECRYPT_WORKING_AIO,[
++AC_DEFUN([BEECRYPT_WORKING_AIO],[
+ AC_CHECK_HEADERS(aio.h)
+ if test "$ac_cv_header_aio_h" = yes; then
+ AC_SEARCH_LIBS([aio_read],[c rt aio posix4],[
+@@ -228,7 +228,7 @@
+
+
+ dnl BEECRYPT_CFLAGS_REM
+-AC_DEFUN(BEECRYPT_CFLAGS_REM,[
++AC_DEFUN([BEECRYPT_CFLAGS_REM],[
+ if test "$CFLAGS" != ""; then
+ CFLAGS_save=""
+ for flag in $CFLAGS
+@@ -243,7 +243,7 @@
+
+
+ dnl BEECRYPT_GNU_CC
+-AC_DEFUN(BEECRYPT_GNU_CC,[
++AC_DEFUN([BEECRYPT_GNU_CC],[
+ AC_REQUIRE([AC_PROG_CC])
+ case $bc_target_arch in
+ ia64)
+@@ -331,7 +331,7 @@
+
+
+ dnl BEECRYPT_COMPAQ_CC
+-AC_DEFUN(BEECRYPT_COMPAQ_CC,[
++AC_DEFUN([BEECRYPT_COMPAQ_CC],[
+ AC_REQUIRE([AC_PROG_CC])
+ AC_REQUIRE([AC_PROG_CPP])
+ AC_CACHE_CHECK([whether we are using Compaq's C compiler],bc_cv_prog_COMPAQ_CC,[
+@@ -355,7 +355,7 @@
+
+
+ dnl BEECRYPT_HPUX_CC
+-AC_DEFUN(BEECRYPT_HPUX_CC,[
++AC_DEFUN([BEECRYPT_HPUX_CC],[
+ if test "$ac_enable_debug" != yes; then
+ BEECRYPT_CFLAGS_REM([-g])
+ CFLAGS="$CFLAGS -fast"
+@@ -364,7 +364,7 @@
+
+
+ dnl BEECRYPT_IBM_CC
+-AC_DEFUN(BEECRYPT_IBM_CC,[
++AC_DEFUN([BEECRYPT_IBM_CC],[
+ AC_REQUIRE([AC_PROG_CC])
+ AC_REQUIRE([AC_PROG_CPP])
+ AC_CACHE_CHECK([whether we are using IBM C],bc_cv_prog_IBM_CC,[
+@@ -398,7 +398,7 @@
+
+
+ dnl BEECRYPT_INTEL_CC
+-AC_DEFUN(BEECRYPT_INTEL_CC,[
++AC_DEFUN([BEECRYPT_INTEL_CC],[
+ AC_REQUIRE([AC_PROG_CC])
+ AC_REQUIRE([AC_PROG_CPP])
+ AC_CACHE_CHECK([whether we are using Intel C++],bc_cv_prog_INTEL_CC,[
+@@ -448,7 +448,7 @@
+
+
+ dnl BEECRYPT_SUN_FORTE_CC
+-AC_DEFUN(BEECRYPT_SUN_FORTE_CC,[
++AC_DEFUN([BEECRYPT_SUN_FORTE_CC],[
+ AC_REQUIRE([AC_PROG_CC])
+ AC_REQUIRE([AC_PROG_CPP])
+ AC_CACHE_CHECK([whether we are using Sun Forte C],bc_cv_prog_SUN_FORTE_CC,[
+@@ -485,7 +485,7 @@
+
+
+ dnl BEECRYPT_ASM_DEFS
+-AC_DEFUN(BEECRYPT_ASM_DEFS,[
++AC_DEFUN([BEECRYPT_ASM_DEFS],[
+ AC_SUBST(ASM_OS,$target_os)
+ AC_SUBST(ASM_CPU,$bc_target_cpu)
+ AC_SUBST(ASM_ARCH,$bc_target_arch)
+@@ -494,7 +494,7 @@
+
+
+ dnl BEECRYPT_ASM_TEXTSEG
+-AC_DEFUN(BEECRYPT_ASM_TEXTSEG,[
++AC_DEFUN([BEECRYPT_ASM_TEXTSEG],[
+ AC_CACHE_CHECK([how to switch to text segment],
+ bc_cv_asm_textseg,[
+ case $target_os in
+@@ -516,7 +516,7 @@
+
+
+ dnl BEECRYPT_ASM_GLOBL
+-AC_DEFUN(BEECRYPT_ASM_GLOBL,[
++AC_DEFUN([BEECRYPT_ASM_GLOBL],[
+ AC_CACHE_CHECK([how to declare a global symbol],
+ bc_cv_asm_globl,[
+ case $target_os in
+@@ -529,7 +529,7 @@
+
+
+ dnl BEECRYPT_ASM_GSYM_PREFIX
+-AC_DEFUN(BEECRYPT_ASM_GSYM_PREFIX,[
++AC_DEFUN([BEECRYPT_ASM_GSYM_PREFIX],[
+ AC_CACHE_CHECK([if global symbols need leading underscore],
+ bc_cv_asm_gsym_prefix,[
+ case $target_os in
+@@ -542,7 +542,7 @@
+
+
+ dnl BEECRYPT_ASM_LSYM_PREFIX
+-AC_DEFUN(BEECRYPT_ASM_LSYM_PREFIX,[
++AC_DEFUN([BEECRYPT_ASM_LSYM_PREFIX],[
+ AC_CACHE_CHECK([how to declare a local symbol],
+ bc_cv_asm_lsym_prefix,[
+ case $target_os in
+@@ -562,7 +562,7 @@
+
+
+ dnl BEECRYPT_ASM_ALIGN
+-AC_DEFUN(BEECRYPT_ASM_ALIGN,[
++AC_DEFUN([BEECRYPT_ASM_ALIGN],[
+ AC_CACHE_CHECK([how to align symbols],
+ bc_cv_asm_align,[
+ case $target_cpu in
+@@ -587,7 +587,7 @@
+
+
+ dnl BEECRYPT_ASM_SOURCES
+-AC_DEFUN(BEECRYPT_ASM_SOURCES,[
++AC_DEFUN([BEECRYPT_ASM_SOURCES],[
+ echo > mpopt.s
+ echo > aesopt.s
+ echo > blowfishopt.s
diff --git a/portabase/metakit-2.4.9.3/metakit-2.4.9.3.patch b/portabase/metakit-2.4.9.3/metakit-2.4.9.3.patch
index e69de29bb2..35babe28b4 100644
--- a/portabase/metakit-2.4.9.3/metakit-2.4.9.3.patch
+++ b/portabase/metakit-2.4.9.3/metakit-2.4.9.3.patch
@@ -0,0 +1,108 @@
+diff -Naur metakit-2.4.9.3/include/mk4.h metakit-2.4.9.3-patched/include/mk4.h
+--- metakit-2.4.9.3/include/mk4.h 2004-01-26 04:54:45.000000000 -0500
++++ metakit-2.4.9.3-patched/include/mk4.h 2004-02-28 21:07:34.000000000 -0500
+@@ -217,6 +217,9 @@
+ bool operator< (const t4_i64 a_, const t4_i64 b_);
+ #endif
+
++typedef int ((*StringCompareFunc)(const char*, const char*));
++typedef int ((*Win32FileOpenFunc)(const char*, int));
++
+ //---------------------------------------------------------------------------
+
+ class c4_View
+@@ -330,6 +333,7 @@
+ friend bool operator> (const c4_View&, const c4_View&);
+ friend bool operator<= (const c4_View&, const c4_View&);
+ friend bool operator>= (const c4_View&, const c4_View&);
++ static StringCompareFunc stringCompareFunc;
+
+ protected:
+ void _IncSeqRef();
+@@ -554,6 +558,8 @@
+ bool LoadFrom(c4_Stream&);
+ void SaveTo(c4_Stream&);
+
++ static Win32FileOpenFunc win32FileOpenFunc;
++
+ //DROPPED: c4_Storage (const char* filename_, const char* description_);
+ //DROPPED: c4_View Store(const char* name_, const c4_View& view_);
+ //DROPPED: c4_HandlerSeq& RootTable() const;
+diff -Naur metakit-2.4.9.3/src/fileio.cpp metakit-2.4.9.3-patched/src/fileio.cpp
+--- metakit-2.4.9.3/src/fileio.cpp 2003-11-22 20:42:51.000000000 -0500
++++ metakit-2.4.9.3-patched/src/fileio.cpp 2004-02-28 21:07:34.000000000 -0500
+@@ -321,7 +321,7 @@
+
+ #if q4_WIN32 && !q4_BORC && !q4_WINCE
+ int flags = _O_BINARY | _O_NOINHERIT | (mode_ > 0 ? _O_RDWR : _O_RDONLY);
+- int fd = _open(fname_, flags);
++ int fd = (*c4_Storage::win32FileOpenFunc)(fname_, flags);
+ if (fd != -1)
+ _cleanup = _file = _fdopen(fd, mode_ > 0 ? "r+b" : "rb");
+ #else
+@@ -339,7 +339,8 @@
+
+ if (mode_ > 0) {
+ #if q4_WIN32 && !q4_BORC && !q4_WINCE
+- fd = _open(fname_, flags | _O_CREAT, _S_IREAD | _S_IWRITE);
++ flags = flags | _O_CREAT, _S_IREAD | _S_IWRITE;
++ fd = (*c4_Storage::win32FileOpenFunc)(fname_, flags);
+ if (fd != -1)
+ _cleanup = _file = _fdopen(fd, "w+b");
+ #else
+diff -Naur metakit-2.4.9.3/src/format.cpp metakit-2.4.9.3-patched/src/format.cpp
+--- metakit-2.4.9.3/src/format.cpp 2004-01-19 17:49:43.000000000 -0500
++++ metakit-2.4.9.3-patched/src/format.cpp 2004-02-28 21:07:35.000000000 -0500
+@@ -923,7 +923,7 @@
+ c4_String v1 ((const char*) b1_.Contents(), b1_.Size());
+ c4_String v2 ((const char*) b2_.Contents(), b2_.Size());
+
+- return v1.CompareNoCase(v2);
++ return (*c4_View::stringCompareFunc)(v1, v2);
+ }
+
+ void c4_FormatS::Insert(int index_, const c4_Bytes& buf_, int count_)
+diff -Naur metakit-2.4.9.3/src/store.cpp metakit-2.4.9.3-patched/src/store.cpp
+--- metakit-2.4.9.3/src/store.cpp 2003-11-22 20:42:51.000000000 -0500
++++ metakit-2.4.9.3-patched/src/store.cpp 2004-02-28 21:09:26.000000000 -0500
+@@ -18,6 +18,10 @@
+ #if !q4_INLINE
+ #include "store.inl"
+ #endif
++
++#if q4_WIN32
++#include <io.h>
++#endif
+
+ /////////////////////////////////////////////////////////////////////////////
+
+@@ -426,6 +430,17 @@
+ c4_Persist::Save(&stream_, Persist()->Root());
+ }
+
++int f4_Latin1OpenFunc(const char *fname_, int mode_)
++{
++#if q4_WIN32
++ return _open(fname_, mode_);
++#else
++ return -1;
++#endif
++}
++
++Win32FileOpenFunc c4_Storage::win32FileOpenFunc = f4_Latin1OpenFunc;
++
+ /////////////////////////////////////////////////////////////////////////////
+
+ c4_DerivedSeq::c4_DerivedSeq (c4_Sequence& seq_)
+diff -Naur metakit-2.4.9.3/src/view.cpp metakit-2.4.9.3-patched/src/view.cpp
+--- metakit-2.4.9.3/src/view.cpp 2003-11-22 20:42:51.000000000 -0500
++++ metakit-2.4.9.3-patched/src/view.cpp 2004-02-28 21:07:35.000000000 -0500
+@@ -1005,6 +1005,8 @@
+ return na == nb ? 0 : i < na ? +1 : -1;
+ }
+
++StringCompareFunc c4_View::stringCompareFunc = strcmp;
++
+ /////////////////////////////////////////////////////////////////////////////
+
+ /** @class c4_Cursor
diff --git a/portabase/portabase-1.9/fileselector.patch b/portabase/portabase-1.9/fileselector.patch
index e69de29bb2..7f70c347e5 100644
--- a/portabase/portabase-1.9/fileselector.patch
+++ b/portabase/portabase-1.9/fileselector.patch
@@ -0,0 +1,128 @@
+diff -urN portabase.orig/fileselector.cpp portabase/fileselector.cpp
+--- portabase.orig/fileselector.cpp 2004-09-02 20:06:38.000000000 +0200
++++ portabase/fileselector.cpp 2004-09-02 20:59:22.000000000 +0200
+@@ -43,8 +43,8 @@
+
+ bool PBFileSelector::duplicate()
+ {
+- const DocLnk *selection = selected();
+- if (selection == 0) {
++ DocLnk selection(selectedDocument());
++ if (!selection.isValid()) {
+ return FALSE;
+ }
+ bool ok;
+@@ -56,7 +56,7 @@
+ DocLnk copy;
+ configureDocLnk(copy, name);
+ FileManager fm;
+- ok = fm.copyFile(*selection, copy);
++ ok = fm.copyFile(selection, copy);
+ }
+ if (ok) {
+ reread();
+@@ -65,14 +65,13 @@
+ QMessageBox::warning(this, QQDialog::tr("PortaBase"),
+ tr("Unable to create new file"));
+ }
+- delete selection;
+ return ok;
+ }
+
+ bool PBFileSelector::rename()
+ {
+- const DocLnk *selection = selected();
+- if (selection == 0) {
++ DocLnk selection(selectedDocument());
++ if (!selection.isValid()) {
+ return FALSE;
+ }
+ bool ok;
+@@ -88,9 +87,9 @@
+ configureDocLnk(copy, name);
+ // actual moving would be more efficient, but harder to implement...
+ FileManager fm;
+- if (fm.copyFile(*selection, copy)) {
+- QFile::remove(selection->file());
+- QFile::remove(selection->linkFile());
++ if (fm.copyFile(selection, copy)) {
++ QFile::remove(selection.file());
++ QFile::remove(selection.linkFile());
+ ok = TRUE;
+ }
+ else {
+@@ -104,7 +103,6 @@
+ QMessageBox::warning(this, QQDialog::tr("PortaBase"),
+ tr("Unable to rename the file"));
+ }
+- delete selection;
+ return ok;
+ }
+
+diff -urN portabase.orig/importdialog.cpp portabase/importdialog.cpp
+--- portabase.orig/importdialog.cpp 2004-09-02 20:06:38.000000000 +0200
++++ portabase/importdialog.cpp 2004-09-02 20:54:47.000000000 +0200
+@@ -130,14 +130,13 @@
+ int result = QDialog::exec();
+ if (result && !importDone) {
+ // "OK" was clicked...see if there is a selected file
+- const DocLnk *f = selector->selected();
+- if (!f) {
++ DocLnk f(selector->selectedDocument());
++ if (!f.isValid()) {
+ return QDialog::Rejected;
+ }
+- if (!import(f->file())) {
++ if (!import(f.file())) {
+ result = QDialog::Rejected;
+ }
+- delete f;
+ }
+ return result;
+ }
+diff -urN portabase.orig/portabase.cpp portabase/portabase.cpp
+--- portabase.orig/portabase.cpp 2004-09-02 20:06:38.000000000 +0200
++++ portabase/portabase.cpp 2004-09-02 20:56:58.000000000 +0200
+@@ -527,12 +527,11 @@
+
+ void PortaBase::openFile()
+ {
+- const DocLnk *selection = fileSelector->selected();
+- if (selection == 0) {
++ DocLnk selection (fileSelector->selectedDocument());
++ if (!selection.isValid()) {
+ return;
+ }
+- openFile(*selection);
+- delete selection;
++ openFile(selection);
+ }
+
+ void PortaBase::openFile(const QString &f)
+@@ -591,21 +590,19 @@
+
+ void PortaBase::deleteFile()
+ {
+- const DocLnk *selection = fileSelector->selected();
+- if (selection == 0) {
++ DocLnk selection(fileSelector->selectedDocument());
++ if (!selection.isValid()) {
+ return;
+ }
+ if (QMessageBox::warning(this, QQDialog::tr("PortaBase"), tr("Delete")
+- + " \"" + selection->name() + "\"\n"
++ + " \"" + selection.name() + "\"\n"
+ + tr("Are you sure?"),
+ QObject::tr("Yes"), QObject::tr("No"),
+ QString::null, 1) > 0) {
+- delete selection;
+ return;
+ }
+- QFile::remove(selection->file());
+- QFile::remove(selection->linkFile());
+- delete selection;
++ QFile::remove(selection.file());
++ QFile::remove(selection.linkFile());
+ fileSelector->reread();
+ }
+
diff --git a/portabase/portabase-1.9/qtopia.patch b/portabase/portabase-1.9/qtopia.patch
index e69de29bb2..5f32cf9d83 100644
--- a/portabase/portabase-1.9/qtopia.patch
+++ b/portabase/portabase-1.9/qtopia.patch
@@ -0,0 +1,20 @@
+--- portabase/portabase.pro.orig 2004-08-01 16:20:02.000000000 +0200
++++ portabase/portabase.pro 2004-08-01 16:20:30.000000000 +0200
+@@ -7,7 +7,7 @@
+ portabase_zh_TW.ts
+ # determine which version to compile for
+ # options are desktop, qtopia, or sharp (add "test" for the test environment)
+-CONFIG += desktop
++CONFIG += qtopia
+
+ # Files common between all versions
+ HEADERS = portabase.h \
+@@ -120,7 +120,7 @@
+ metakitfuncs.cpp
+
+ # Stuff for all Linux/UNIX versions
+-unix:LIBS += -lm -lmk4 -lbeecrypt -ljpeg
++unix:LIBS += -lm -lmk4 -lbeecrypt -ljpeg -lstdc++
+
+ # Stuff for older Zaurus ROMs
+ qtopia:CONFIG += zaurus