Hi Jim and friends,

motivated by Roberto, I tried to build KyKDE 3.3.2 on top of KDE 3.1.1,
but failed so far. Robertos version fails in exactly the same way, but
it's hard to say what Roberto has changed without a proper context diff
<hint, hint>.

The problem boils down to the now private nature of some ctors/dtors
in a few KIO classes. I examined the first one: KService(const KService&), 
which is used at least in syentrylist.sip and svctypes.sip for some type 
conversations.

kservice.h:

class KService : public KSycocaEntry
{
  K_SYCOCATYPE( KST_KService, KSycocaEntry )

  KService(const KService&);

Unfortunately I have not enough insight in the inwards of KDE to rewrite 
those by now.

Attached is a patch of what I've done so far. Additionally, I've created
a few symlinks in my RPM spec, as always:

cd extraH
ln -s kde303 kde304
ln -s kde303 kde305
ln -s kde303 kde311
cd ..
cd sip
ln -s kde30 kde31
cd ..

Here is the full error log [Sorry for the long lines]:

make[1]: Entering directory `/usr/src/packages/BUILD/PyKDE-3.3.2/kio'
g++ -c -pipe -w -O2 -march=i586 -mcpu=i686 -fmessage-length=0 -fPIC -DNO_DEBUG 
-D_REENTRANT -fPIC  -DSIP_MAKE_MODULE_
DLL -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -fno-exceptions -I/usr/lib/qt3/mkspecs/default 
-I. -I-I -I../extraH -I. -I../..
/../../../include/python2.2 -I/opt/kde3/include -I-I -I/opt/kde3/include/kio -I-I 
-I../kdecore -I../../../../../inclu
de -I/usr/lib/qt3/include -o kiohuge.o kiohuge.cpp
/opt/kde3/include/kservice.h: In function `PyObject* sipConvertFrom_SvcList(SvcList*)':
/opt/kde3/include/kservice.h:47: error: `KService::KService(const KService&)' is 
private
sip/svctypes.sip:175: error: within this context
/opt/kde3/include/kservice.h: In constructor `sipKService::sipKService(const 
KService&)':
/opt/kde3/include/kservice.h:47: error: `KService::KService(const KService&)' is 
private
sipkioKShellCompletion.cpp:1861: error: within this context
/opt/kde3/include/kautomount.h: In constructor `sipKAutoUnmount::sipKAutoUnmount(const 
QString&, const QString&)':
/opt/kde3/include/kautomount.h:108: error: `KAutoUnmount::~KAutoUnmount()' is private
sipkioKDataTool.cpp:733: error: within this context
/opt/kde3/include/kautomount.h: In destructor `virtual 
sipKAutoUnmount::~sipKAutoUnmount()':
/opt/kde3/include/kautomount.h:108: error: `KAutoUnmount::~KAutoUnmount()' is private
sipkioKDataTool.cpp:738: error: within this context
/opt/kde3/include/kautomount.h: In function `void 
sipDealloc_KAutoUnmount(sipThisType*)':
/opt/kde3/include/kautomount.h:108: error: `virtual KAutoUnmount::~KAutoUnmount()' is 
private
sipkioKAutoUnmount.cpp:435: error: within this context
/opt/kde3/include/kautomount.h: In function `PyObject* sipNew_KAutoUnmount(PyObject*, 
PyObject*)':
/opt/kde3/include/kautomount.h:108: error: `virtual KAutoUnmount::~KAutoUnmount()' is 
private
sipkioKAutoUnmount.cpp:499: error: within this context
/opt/kde3/include/kautomount.h: In constructor `sipKAutoMount::sipKAutoMount(bool, 
const QString&, const QString&, co
nst QString&, const QString&, bool)':
/opt/kde3/include/kautomount.h:70: error: `KAutoMount::~KAutoMount()' is private
sipkioKAutoUnmount.cpp:607: error: within this context
/opt/kde3/include/kautomount.h: In destructor `virtual 
sipKAutoMount::~sipKAutoMount()':
/opt/kde3/include/kautomount.h:70: error: `KAutoMount::~KAutoMount()' is private
sipkioKAutoUnmount.cpp:612: error: within this context
/opt/kde3/include/kautomount.h: In function `void sipDealloc_KAutoMount(sipThisType*)':
/opt/kde3/include/kautomount.h:70: error: `virtual KAutoMount::~KAutoMount()' is 
private
sipkioKAutoMount.cpp:435: error: within this context
/opt/kde3/include/kautomount.h: In function `PyObject* sipNew_KAutoMount(PyObject*, 
PyObject*)':
/opt/kde3/include/kautomount.h:70: error: `virtual KAutoMount::~KAutoMount()' is 
private
sipkioKAutoMount.cpp:511: error: within this context
sipkioKIOMultiGetJob.cpp: In member function `void 
sipKIO_DeleteJob::sipProtect_startNextJob()':
sipkioKIOMultiGetJob.cpp:2516: error: 'class KIO::DeleteJob' has no member named 
'startNextJob'
/opt/kde3/include/kio/jobclasses.h: In member function `void 
sipKIO_DeleteJob::sipProtect_deleteNextFile()':
/opt/kde3/include/kio/jobclasses.h:1067: error: `void 
KIO::DeleteJob::deleteNextFile()' is private
sipkioKIOMultiGetJob.cpp:2521: error: within this context
/opt/kde3/include/kio/jobclasses.h: In member function `void 
sipKIO_DeleteJob::sipProtect_deleteNextDir()':
/opt/kde3/include/kio/jobclasses.h:1068: error: `void KIO::DeleteJob::deleteNextDir()' 
is private
sipkioKIOMultiGetJob.cpp:2526: error: within this context
make[1]: *** [kiohuge.o] Fehler 1
make[1]: Leaving directory `/usr/src/packages/BUILD/PyKDE-3.3.2/kio'
make: *** [sub-kio] Fehler 2

Looks like It's time to wait for your new version, but I will happily
take advises on how to preceed.

Bye,
Pete
diff -u5 -uNrx '*.[ao]' -x '*~' -x '*,v' -x '*.orig' -x '*.rej' -x tags -x '*.swp' -x '*.new' PyKDE-3.3.2/build.py PyKDE-3.3.2-hp/build.py
--- PyKDE-3.3.2/build.py	2002-08-21 20:08:38.000000000 +0200
+++ PyKDE-3.3.2-hp/build.py	2003-03-19 11:36:15.000000000 +0100
@@ -64,17 +64,18 @@
 
 Release    = "3.3rc1"
 Version    = "3.3rc1"
 
 QtVers     = ["230", "231", "232", "300", "301", "302", "304", "305"]
-KDEVers    = ["211", "212", "220", "221", "222", "300", "301", "302", "303"]
+KDEVers    = ["211", "212", "220", "221", "222", "300", "301", "302", "303", "304", "305", "306", "310", "311"]
 
 modList        = {}
 modList ["21"] = ["dcop", "kdecore", "kdesu", "kdeui", "kio", "kfile", "kparts", "khtml", "kjs", "kspell"]
 modList ["22"] = [] + modList ["21"]
 modList ["22"].append ("kdeprint")
 modList ["30"] = modList ["22"][0:3] + ["kdefx"] + modList ["22"][3:]
+modList ["31"] = modList ["30"]
 
 modules    = {}
 
 modules ["dcop"]      = "dcop"
 modules ["kdecore"]   = "kdecore"
@@ -1356,11 +1357,15 @@
         0x030000: "Qt_2_3_1",
         0x030001: "Qt_3_0_0",
         0x030002: "Qt_3_0_1",
         0x030004: "Qt_3_0_2",
         0x030005: "Qt_3_0_4",
-        0x040000: "Qt_3_0_5"
+        0x030006: "Qt_3_0_5",
+        0x030100: "Qt_3_0_6",
+        0x030101: "Qt_3_1_0",
+        0x030102: "Qt_3_1_1",
+        0x040000: "Qt_3_1_2"
     }
 
 
     global qtVersion
     qttag = None
@@ -1372,11 +1377,11 @@
         if qtVersion < v:
             qttag = qttags[v]
             break
 
     if qttag is None:
-        error("Invalid Qt version: %d" % (qtVersion))
+        error("Invalid Qt version: 0x%x" % (qtVersion))
 
     # Generate the features file.
     generateFeatures(maindir + "/features")
 
     # We don't need the temporary build directory anymore.
@@ -1414,8 +1419,8 @@
     except SystemExit:
         raise
     except:
         print \
 """An internal error occured.  Please report all the output from the program,
-including the following traceback, to [EMAIL PROTECTED]
+including the following traceback, to [EMAIL PROTECTED]
 """
         raise
diff -u5 -uNrx '*.[ao]' -x '*~' -x '*,v' -x '*.orig' -x '*.rej' -x tags -x '*.swp' -x '*.new' PyKDE-3.3.2/sip/kde30/dcop.sip PyKDE-3.3.2-hp/sip/kde30/dcop.sip
--- PyKDE-3.3.2/sip/kde30/dcop.sip	2002-08-21 20:09:01.000000000 +0200
+++ PyKDE-3.3.2-hp/sip/kde30/dcop.sip	2003-03-19 11:36:15.000000000 +0100
@@ -31,11 +31,11 @@
 copyright holder.
 %End
 
 %Module dcop
 
-%Timeline { KDE_0_0_0 KDE_0_0_1 KDE_2_1_1 KDE_2_1_2 KDE_2_2_0 KDE_2_2_1 KDE_2_2_2 KDE_2_9_2 KDE_3_0_0 KDE_3_0_1 KDE_3_0_2 KDE_3_0_3 }
+%Timeline { KDE_0_0_0 KDE_0_0_1 KDE_2_1_1 KDE_2_1_2 KDE_2_2_0 KDE_2_2_1 KDE_2_2_2 KDE_2_9_2 KDE_3_0_0 KDE_3_0_1 KDE_3_0_2 KDE_3_0_3 KDE_3_0_4 KDE_3_0_5 KDE_3_0_6 KDE_3_1_0 KDE_3_1_1 }
 
 //%Platforms	{WS_X11	WS_WIN WS_QWS}
 
 %Import qtmod.sip
 
diff -u5 -uNrx '*.[ao]' -x '*~' -x '*,v' -x '*.orig' -x '*.rej' -x tags -x '*.swp' -x '*.new' PyKDE-3.3.2/sip/kfontdialog.sip PyKDE-3.3.2-hp/sip/kfontdialog.sip
--- PyKDE-3.3.2/sip/kfontdialog.sip	2002-08-21 20:08:45.000000000 +0200
+++ PyKDE-3.3.2-hp/sip/kfontdialog.sip	2003-03-18 20:55:29.000000000 +0100
@@ -70,11 +70,20 @@
 %End
 
 public:
 
 
-%If ( KDE_2_9_2 - )
+%If ( KDE_3_1_0 - )
+    enum FontColumn
+    {
+        FamilyList = 0x01,
+        StyleList = 0x02,
+        SizeList = 0x04,
+    };
+%End
+
+%If ( KDE_2_9_2 - KDE_3_1_0 )
     enum FontColumn
     {
         FamilyList = 0x01,
         StyleList = 0x02,
         SizeList = 0x04,
diff -u5 -uNrx '*.[ao]' -x '*~' -x '*,v' -x '*.orig' -x '*.rej' -x tags -x '*.swp' -x '*.new' PyKDE-3.3.2/sip/khtml_part.sip PyKDE-3.3.2-hp/sip/khtml_part.sip
--- PyKDE-3.3.2/sip/khtml_part.sip	2002-08-21 20:08:45.000000000 +0200
+++ PyKDE-3.3.2-hp/sip/khtml_part.sip	2003-03-18 20:20:51.000000000 +0100
@@ -122,12 +122,12 @@
                 KHTMLPart *ptr;
                 QPainter *p;
 		QRect r;
 		int i = 0;
 
-		if (sipParseArgs(&sipArgsParsed,sipArgs,"mJ0J0ii",sipThisObj,sipClass_KHTMLPart,&ptr, sipClass_QPainter, p,
-			sipClass_QRect, r, i))
+		if (sipParseArgs(&sipArgsParsed,sipArgs,"mJ0J0i",sipThisObj,sipClass_KHTMLPart,&ptr, sipClass_QPainter, p,
+			sipClass_QRect, &r, i))
 		{
 			bool b;
 
                         Py_BEGIN_ALLOW_THREADS
                         ptr -> paint (p, r, i, &b);

Reply via email to