File indexing completed on 2024-04-14 14:56:25

0001 # -*- coding: utf-8 -*-
0002 #     Copyright 2009-2010 Simon Edwards <simon@simonzone.com>
0003 #
0004 # This program is free software; you can redistribute it and/or modify
0005 # it under the terms of the GNU General Public License as published by
0006 # the Free Software Foundation; either version 2 of the License, or
0007 # (at your option) any later version.
0008 #
0009 # This program is distributed in the hope that it will be useful,
0010 # but WITHOUT ANY WARRANTY; without even the implied warranty of
0011 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
0012 # GNU General Public License for more details.
0013 #
0014 # You should have received a copy of the GNU General Public License
0015 # along with this program; if not, write to the
0016 # Free Software Foundation, Inc.,
0017 # 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
0018 
0019 import re
0020 import toolkit
0021 import kbindinggenerator.qtkdemacros
0022 import os.path
0023 import kbindinggenerator.sipsymboldata
0024 
0025 outputBaseDirectory = "/home/sbe/devel/git/kde/kdebindings/pykde4"
0026 cmakelistBaseDirectory = "/home/sbe/devel/git/kde/kdelibs"
0027 cmakelistPimlibsBaseDirectory = "/home/sbe/devel/git/kde/kdepimlibs"
0028 cmakelistPhononBaseDirectory = "/home/sbe/devel/git/phonon"
0029 kdelibsBuildDirectory = "/home/sbe/devel/git_build/kde/kdelibs"
0030 kdepimlibsBuildDirectory = "/home/sbe/devel/git_build/kde/kdepimlibs"
0031 cmakelistGitBaseDirectory = "/home/sbe/devel/git"
0032 polkitqtBaseDirectory = "/home/sbe/devel/git/polkit-qt"
0033 sipImportDir = "/home/sbe/devel/kdesvninstall/share/sip/PyQt4"
0034 
0035 ###########################################################################
0036 kdecore = toolkit.ModuleGenerator(
0037     module="PyKDE4.kdecore",
0038     outputDirectory=os.path.join(outputBaseDirectory, "sip/kdecore"),
0039     docsOutputDirectory=os.path.join(outputBaseDirectory, "docs/html/kdecore"),
0040     mainDocs=os.path.join(cmakelistBaseDirectory,"kdecore/Mainpage.dox"),
0041     
0042     # .h file extraction
0043     cmakelists=os.path.join(cmakelistBaseDirectory,"kdecore/CMakeLists.txt"),
0044     
0045     ignoreHeaders="""conversion_check.h kallocator.h kdebug.h kcodecs.h kgenericfactory.h ksortablelist.h ktrader.h ktypelist.h  kmulticastsocket.h kmulticastsocketdevice.h kdecore_export.h kde_file.h ksocks.h kde_file.h ksharedptr.h klauncher_iface.h k3bufferedsocket.h  k3clientsocketbase.h  k3datagramsocket.h k3httpproxysocketdevice.h k3iobuffer.h  k3processcontroller.h  k3process.h  k3procio.h  k3resolver.h k3reverseresolver.h k3serversocket.h  k3socketaddress.h  k3socketbase.h  k3socketdevice.h  k3socks.h k3sockssocketdevice.h  k3streamsocket.h qtest_kde.h kdefakes.h kdeversion.h kauth.h ktypelistutils.h ktypetraits.h karchive.h kar.h ktar.h kzip.h kshareddatacache.h kmountpoint.h kdirwatch.h karchive_export.h""".split(" "),
0046     
0047     noUpdateSip=["typedefs.sip"],
0048     
0049     # Cpp parsing    
0050     preprocessSubstitutionMacros=qtkdemacros.QtPreprocessSubstitutionMacros(),
0051     macros=qtkdemacros.QtMacros(),
0052     bareMacros=qtkdemacros.QtBareMacros(["KDECORE_EXPORT","KDE_EXPORT","KIO_EXPORT","KDE_DEPRECATED", "KDECORE_EXPORT_DEPRECATED", "KARCHIVE_EXPORT"]),
0053     
0054     # Sip generation
0055     sipImportDirs=[sipImportDir],
0056     sipImports=["QtCore/QtCoremod.sip","QtGui/QtGuimod.sip","QtNetwork/QtNetworkmod.sip"],
0057     copyrightNotice=qtkdemacros.copyrightNotice(),
0058     exportMacros=["KDECORE_EXPORT","KDE_EXPORT","KIO_EXPORT","KDECORE_EXPORT_DEPRECATED","KARCHIVE_EXPORT"],
0059     ignoreBases=[],
0060     
0061     annotationRules=[
0062         toolkit.AnnotationRule(
0063             methodTypeMatch="*",
0064             parameterTypeMatch=["QWidget*","QObject*"],
0065             parameterNameMatch="parent",
0066             annotations="TransferThis"),
0067             
0068         toolkit.AnnotationRule(
0069             methodTypeMatch="ctor",
0070             parameterTypeMatch=["QWidget*","QObject*"],
0071             parameterNameMatch="pParent",
0072             annotations="TransferThis")            
0073             ]
0074     )
0075     
0076 ###########################################################################
0077 kdeui = toolkit.ModuleGenerator(
0078     module="PyKDE4.kdeui",
0079     outputDirectory=os.path.join(outputBaseDirectory,"sip/kdeui"),
0080     docsOutputDirectory=os.path.join(outputBaseDirectory, "docs/html/kdeui"),
0081     mainDocs=os.path.join(cmakelistBaseDirectory,"kdeui/Mainpage.dox"),
0082     
0083     # .h file extraction
0084     cmakelists=[
0085         os.path.join(cmakelistBaseDirectory,"kdeui/CMakeLists.txt")
0086         #os.path.join(cmakelistBaseDirectory,"kdeui/dialogs/CMakeLists.txt"),
0087         #os.path.join(cmakelistBaseDirectory,"kdeui/util/CMakeLists.txt"),
0088         #os.path.join(cmakelistBaseDirectory,"kdeui/widgets/CMakeLists.txt")
0089         ],
0090     
0091     ignoreHeaders="""kxerrorhandler.h  k3iconview.h  k3iconviewsearchline.h  k3listview.h  k3listviewlineedit.h k3listviewsearchline.h  netwm_p.h k3mimesourcefactory.h kdeui_export.h fixx11h.h kglobalshortcutinfo_p.h kkeyserver_mac.h kkeyserver_win.h kimagecache.h""".split(" "),
0092     
0093     #noUpdateSip=["typedefs.sip"],
0094     
0095     # Cpp parsing    
0096     preprocessSubstitutionMacros=qtkdemacros.QtPreprocessSubstitutionMacros(),
0097     preprocessorValues={"Q_WS_X11": 1},
0098     
0099     macros=qtkdemacros.QtMacros(),
0100     bareMacros=qtkdemacros.QtBareMacros(["KDEUI_EXPORT","KDE_EXPORT","KDE_DEPRECATED","KDEUI_EXPORT_DEPRECATED"]),
0101     
0102     # Sip generation
0103     sipImportDirs=[sipImportDir,os.path.join(outputBaseDirectory,"sip")],
0104     sipImports=["QtCore/QtCoremod.sip","QtGui/QtGuimod.sip","QtXml/QtXmlmod.sip","QtSvg/QtSvgmod.sip","kdecore/kdecoremod.sip"],
0105     copyrightNotice=qtkdemacros.copyrightNotice(),
0106     exportMacros=["KDEUI_EXPORT","KDE_EXPORT","KDEUI_EXPORT_DEPRECATED"],
0107     ignoreBases=["Q3GridView"],
0108     noCTSCC=["KWindowSystem","NETRootInfo","NETWinInfo"],
0109     
0110     annotationRules=[
0111         toolkit.AnnotationRule(
0112             methodTypeMatch="ctor",
0113             parameterTypeMatch=["QWidget*","QObject*"],
0114             parameterNameMatch="parent",
0115             annotations="TransferThis"),
0116             
0117         toolkit.AnnotationRule(
0118             methodTypeMatch="function",
0119             parameterTypeMatch=["QWidget*","QObject*"],
0120             parameterNameMatch="parent",
0121             annotations="Transfer"),
0122             
0123         toolkit.PySlotRule(className="KDialogButtonBox",arg1Name="receiver",arg2Name="slot"),
0124         toolkit.PySlotRule(namespaceName="KStandardAction",arg1Name="recvr",arg2Name="slot")
0125         ]
0126     )
0127 
0128 ###########################################################################
0129 kio = toolkit.ModuleGenerator(
0130     module="PyKDE4.kio",
0131     outputDirectory=os.path.join(outputBaseDirectory,"sip/kio"),
0132     docsOutputDirectory=os.path.join(outputBaseDirectory, "docs/html/kio"),
0133     mainDocs=os.path.join(cmakelistBaseDirectory,"kio/Mainpage.dox"),
0134     
0135     # .h file extraction
0136     cmakelists=[
0137         os.path.join(cmakelistBaseDirectory,"kio/CMakeLists.txt"),
0138         os.path.join(cmakelistBaseDirectory,"kfile/CMakeLists.txt")
0139         ],
0140     headers=[os.path.join(cmakelistBaseDirectory,"kdecore/io/karchive.h"),
0141         os.path.join(cmakelistBaseDirectory,"kdecore/io/kar.h"),
0142         os.path.join(cmakelistBaseDirectory,"kdecore/io/ktar.h"),
0143         os.path.join(cmakelistBaseDirectory,"kdecore/io/kzip.h")],
0144     
0145     ignoreHeaders="""http_slave_defaults.h ioslave_defaults.h kmimetyperesolver.h k3mimetyperesolver.h kfiledetailview.h kfileiconview.h kfiletreeview.h kfiletreeviewitem.h ksslpemcallback.h kpropsdialog.h kio_export.h kdirnotify.h k3filedetailview.h  k3fileiconview.h k3filetreeview.h  k3filetreeviewitem.h  k3mimetyperesolver.h kfiletreebranch.h  kfile_export.h kurlbar.h kdebug.h kdebugdbusiface_p.h kdirwatch_p.h klimitediodevice_p.h kprocess_p.h""".split(" "),
0146     
0147     #noUpdateSip=["typedefs.sip"],
0148     
0149     # Cpp parsing    
0150     preprocessSubstitutionMacros=qtkdemacros.QtPreprocessSubstitutionMacros(),
0151     preprocessorValues={"Q_WS_X11": 1,"Q_OS_UNIX": 1},
0152     
0153     macros=qtkdemacros.QtMacros(),
0154     bareMacros=qtkdemacros.QtBareMacros(["KDECORE_EXPORT","KDECORE_EXPORT_DEPRECATED","KIO_EXPORT",
0155         "KFILE_EXPORT","KIO_EXPORT_DEPRECATED","KDE_NO_EXPORT","KDE_EXPORT","KDE_DEPRECATED",
0156         "KDEUI_EXPORT_DEPRECATED","KIO_CONNECTION_EXPORT"]),
0157     
0158     # Sip generation
0159     sipImportDirs=[sipImportDir,os.path.join(outputBaseDirectory,"sip")],
0160     sipImports=["QtCore/QtCoremod.sip","QtGui/QtGuimod.sip","QtXml/QtXmlmod.sip","kdecore/kdecoremod.sip","kdeui/kdeuimod.sip","solid/solidmod.sip"],
0161     copyrightNotice=qtkdemacros.copyrightNotice(),
0162     exportMacros=["KDECORE_EXPORT","KDECORE_EXPORT_DEPRECATED","KIO_EXPORT","KFILE_EXPORT","KDE_EXPORT","KDEUI_EXPORT_DEPRECATED",
0163         "KIO_CONNECTION_EXPORT","KIO_EXPORT_DEPRECATED"],
0164     #ignoreBases=["Q3GridView"],
0165     noCTSCC=["KonqBookmarkContextMenu","KImportedBookmarkMenu","KBookmark","KBookmarkGroup"],
0166     
0167     annotationRules=[
0168         toolkit.AnnotationRule(
0169             methodTypeMatch="ctor",
0170             parameterTypeMatch=["QWidget*","QObject*"],
0171             parameterNameMatch="parent",
0172             annotations="TransferThis"),
0173             
0174         toolkit.AnnotationRule(
0175             methodTypeMatch="function",
0176             parameterTypeMatch=["QWidget*","QObject*"],
0177             parameterNameMatch="parent",
0178             annotations="Transfer")
0179         ]
0180     )
0181 
0182 ###########################################################################
0183 kutils = toolkit.ModuleGenerator(
0184     module="PyKDE4.kutils",
0185     outputDirectory=os.path.join(outputBaseDirectory,"sip/kutils"),
0186     docsOutputDirectory=os.path.join(outputBaseDirectory, "docs/html/kutils"),
0187     mainDocs=os.path.join(cmakelistBaseDirectory,"kutils/Mainpage.dox"),
0188     
0189     # .h file extraction
0190     cmakelists=[os.path.join(cmakelistBaseDirectory,"kutils/CMakeLists.txt")],
0191     ignoreHeaders="""kcmodulecontainer.h  kutils_export.h kcmutils_export.h kemoticons_export.h kidletime_export.h kprintutils_export.h""".split(" "),
0192     
0193     #noUpdateSip=["typedefs.sip"],
0194     
0195     # Cpp parsing    
0196     preprocessSubstitutionMacros=qtkdemacros.QtPreprocessSubstitutionMacros(),
0197     preprocessorValues={"Q_WS_X11": 1},
0198     
0199     macros=qtkdemacros.QtMacros(),
0200     bareMacros=qtkdemacros.QtBareMacros(["KUTILS_EXPORT","KDE_EXPORT","KDE_DEPRECATED","KCMUTILS_EXPORT","KEMOTICONS_EXPORT","KIDLETIME_EXPORT","KPRINTUTILS_EXPORT"]),
0201     
0202     # Sip generation
0203     sipImportDirs=[sipImportDir,os.path.join(outputBaseDirectory,"sip")],
0204     sipImports=["QtCore/QtCoremod.sip","QtGui/QtGuimod.sip","QtXml/QtXmlmod.sip","kdecore/kdecoremod.sip","kdeui/kdeuimod.sip"],
0205     copyrightNotice=qtkdemacros.copyrightNotice(),
0206     exportMacros=["KUTILS_EXPORT","KDE_EXPORT","KCMUTILS_EXPORT","KEMOTICONS_EXPORT","KIDLETIME_EXPORT","KPRINTUTILS_EXPORT"],
0207     
0208     annotationRules=[
0209         toolkit.AnnotationRule(
0210             methodTypeMatch="ctor",
0211             parameterTypeMatch=["QWidget*","QObject*"],
0212             parameterNameMatch="parent",
0213             annotations="TransferThis"),
0214             
0215         toolkit.AnnotationRule(
0216             methodTypeMatch="function",
0217             parameterTypeMatch=["QWidget*","QObject*"],
0218             parameterNameMatch="parent",
0219             annotations="Transfer")
0220         ]
0221     )
0222 
0223 ###########################################################################
0224 solid = toolkit.ModuleGenerator(
0225     module="PyKDE4.solid",
0226     outputDirectory=os.path.join(outputBaseDirectory,"sip/solid"),
0227     docsOutputDirectory=os.path.join(outputBaseDirectory, "docs/html/solid"),
0228     mainDocs=os.path.join(cmakelistBaseDirectory,"solid/Mainpage.dox"),
0229     
0230     # .h file extraction
0231     cmakelists=[os.path.join(cmakelistBaseDirectory,"solid/solid/CMakeLists.txt")],
0232     
0233     ignoreHeaders="""solid_export.h""".split(" "),
0234     #noUpdateSip=["typedefs.sip"],
0235     
0236     # Cpp parsing    
0237     preprocessSubstitutionMacros=qtkdemacros.QtPreprocessSubstitutionMacros(),
0238     preprocessorValues={"Q_WS_X11": 1},
0239     
0240     macros=qtkdemacros.QtMacros(),
0241     bareMacros=qtkdemacros.QtBareMacros(["SOLID_EXPORT","KDE_EXPORT","KDE_DEPRECATED"]),
0242     
0243     # Sip generation
0244     sipImportDirs=[sipImportDir,os.path.join(outputBaseDirectory,"sip")],
0245     sipImports=["QtCore/QtCoremod.sip","QtGui/QtGuimod.sip","kdecore/kdecoremod.sip"],
0246     copyrightNotice=qtkdemacros.copyrightNotice(),
0247     exportMacros=["SOLID_EXPORT","KDE_EXPORT"],
0248     
0249     annotationRules=[
0250         toolkit.AnnotationRule(
0251             methodTypeMatch="ctor",
0252             parameterTypeMatch=["QWidget*","QObject*"],
0253             parameterNameMatch="parent",
0254             annotations="TransferThis"),
0255             
0256         toolkit.AnnotationRule(
0257             methodTypeMatch="function",
0258             parameterTypeMatch=["QWidget*","QObject*"],
0259             parameterNameMatch="parent",
0260             annotations="Transfer")
0261         ]
0262     )
0263 
0264 ###########################################################################
0265 kparts = toolkit.ModuleGenerator(
0266     module="PyKDE4.kparts",
0267     outputDirectory=os.path.join(outputBaseDirectory,"sip/kparts"),
0268     docsOutputDirectory=os.path.join(outputBaseDirectory, "docs/html/kparts"),
0269     mainDocs=os.path.join(cmakelistBaseDirectory,"kparts/Mainpage.dox"),
0270     
0271     # .h file extraction
0272     cmakelists=[os.path.join(cmakelistBaseDirectory,"kparts/CMakeLists.txt")],
0273     
0274     ignoreHeaders="""componentfactory.h genericfactory.h kparts_export.h""".split(" "),
0275     #noUpdateSip=["typedefs.sip"],
0276     
0277     # Cpp parsing    
0278     preprocessSubstitutionMacros=qtkdemacros.QtPreprocessSubstitutionMacros(),
0279     preprocessorValues={"Q_WS_X11": 1},
0280     
0281     macros=qtkdemacros.QtMacros(),
0282     bareMacros=qtkdemacros.QtBareMacros(["KPARTS_EXPORT","KDE_EXPORT","KDE_DEPRECATED"]),
0283     
0284     # Sip generation
0285     sipImportDirs=[sipImportDir,os.path.join(outputBaseDirectory,"sip")],
0286     sipImports=["QtCore/QtCoremod.sip","QtGui/QtGuimod.sip","QtXml/QtXmlmod.sip","kdecore/kdecoremod.sip","kdeui/kdeuimod.sip","kio/kiomod.sip"],
0287     copyrightNotice=qtkdemacros.copyrightNotice(),
0288     exportMacros=["KPARTS_EXPORT","KDE_EXPORT"],
0289     noCTSCC=["GenericFactoryBase"],
0290     
0291     annotationRules=[
0292         toolkit.AnnotationRule(
0293             methodTypeMatch="ctor",
0294             parameterTypeMatch=["QWidget*","QObject*"],
0295             parameterNameMatch="parent",
0296             annotations="TransferThis"),
0297             
0298         toolkit.AnnotationRule(
0299             methodTypeMatch="function",
0300             parameterTypeMatch=["QWidget*","QObject*"],
0301             parameterNameMatch="parent",
0302             annotations="Transfer")
0303         ]
0304     )
0305 
0306 ###########################################################################
0307 plasma = toolkit.ModuleGenerator(
0308     module="PyKDE4.plasma",
0309     outputDirectory=os.path.join(outputBaseDirectory,"sip/plasma"),
0310     docsOutputDirectory=os.path.join(outputBaseDirectory, "docs/html/plasma"),
0311     mainDocs=os.path.join(cmakelistBaseDirectory,"plasma/Mainpage.dox"),
0312     
0313     # .h file extraction
0314     cmakelists=[os.path.join(cmakelistBaseDirectory,"plasma/CMakeLists.txt")],
0315     ignoreHeaders="""plasma_export.h credentials.h """.split(" "),
0316     #noUpdateSip=["typedefs.sip"],
0317     
0318     # Cpp parsing    
0319     preprocessSubstitutionMacros=qtkdemacros.QtPreprocessSubstitutionMacros(),
0320     preprocessorValues={"Q_WS_X11": 1, "QT_VERSION": 0x040600},
0321     
0322     macros=qtkdemacros.QtMacros(),
0323     bareMacros=qtkdemacros.QtBareMacros(["PLASMA_EXPORT","PLASMA_EXPORT_DEPRECATED","KDE_EXPORT",
0324             "KDE_DEPRECATED","Q_INVOKABLE"]),
0325     
0326     # Sip generation
0327     sipImportDirs=[sipImportDir,os.path.join(outputBaseDirectory,"sip")],
0328     sipImports=[
0329         "QtCore/QtCoremod.sip",
0330         "QtGui/QtGuimod.sip",
0331         "QtNetwork/QtNetworkmod.sip",
0332         "QtSvg/QtSvgmod.sip",
0333         "QtWebKit/QtWebKitmod.sip",
0334         "QtXml/QtXmlmod.sip",
0335         "QtDeclarative/QtDeclarativemod.sip",
0336         "QtScript/QtScriptmod.sip",
0337         "kdecore/kdecoremod.sip",
0338         "kdeui/kdeuimod.sip"],
0339     copyrightNotice=qtkdemacros.copyrightNotice(),
0340     exportMacros=["PLASMA_EXPORT","PLASMA_EXPORT_DEPRECATED","KDE_EXPORT"],
0341     #noCTSCC=["GenericFactoryBase"],
0342     ignoreBases=["QSharedData","KShared","QList<KUrl>"],
0343     
0344     annotationRules=[
0345         toolkit.AnnotationRule(
0346             methodTypeMatch="ctor",
0347             parameterTypeMatch=["QWidget*","QObject*","QGraphicsWidget*"],
0348             parameterNameMatch=["parent","pParent"],
0349             annotations="TransferThis"),
0350             
0351         toolkit.AnnotationRule(
0352             methodTypeMatch="function",
0353             parameterTypeMatch=["QWidget*","QObject*","QGraphicsWidget*"],
0354             parameterNameMatch="parent",
0355             annotations="Transfer")
0356         ]
0357     )
0358 
0359 ###########################################################################
0360 khtml = toolkit.ModuleGenerator(
0361     module="PyKDE4.khtml",
0362     outputDirectory=os.path.join(outputBaseDirectory,"sip/khtml"),
0363     docsOutputDirectory=os.path.join(outputBaseDirectory, "docs/html/khtml"),
0364     mainDocs=os.path.join(cmakelistBaseDirectory,"khtml/Mainpage.dox"),
0365     
0366     # .h file extraction
0367     cmakelists=[os.path.join(cmakelistBaseDirectory,"khtml/CMakeLists.txt"),
0368         #os.path.join(cmakelistBaseDirectory,"khtml/dom/CMakeLists.txt")
0369         ],
0370     
0371     ignoreHeaders="""khtmldefaults.h dom_core.h dom_html.h khtml_events.h khtml_export.h""".split(" "),
0372     #noUpdateSip=["typedefs.sip"],
0373     
0374     # Cpp parsing    
0375     preprocessSubstitutionMacros=qtkdemacros.QtPreprocessSubstitutionMacros(),
0376     preprocessorValues={"Q_WS_X11": 1},
0377     
0378     macros=qtkdemacros.QtMacros(),
0379     bareMacros=qtkdemacros.QtBareMacros(["KHTML_EXPORT","KDE_EXPORT","KDE_DEPRECATED","Q_INVOKABLE"]),
0380     
0381     # Sip generation
0382     sipImportDirs=[sipImportDir,os.path.join(outputBaseDirectory,"sip")],
0383     sipImports=[
0384         "QtCore/QtCoremod.sip",
0385         "QtGui/QtGuimod.sip",
0386         "QtXml/QtXmlmod.sip",
0387         "kdecore/kdecoremod.sip",
0388         "kdeui/kdeuimod.sip",
0389         "kio/kiomod.sip",
0390         "kutils/kutilsmod.sip",
0391         "kparts/kpartsmod.sip",],
0392     copyrightNotice=qtkdemacros.copyrightNotice(),
0393     exportMacros=["KHTML_EXPORT","KDE_EXPORT"],
0394     noCTSCC=["CSSRule","CSSCharsetRule","CSSFontFaceRule","CSSImportRule","CSSMediaRule","CSSPageRule",
0395         "CSSStyleRule","CSSUnknownRule","CSSStyleSheet","CSSPrimitiveValue","CSSValueList","CSSNamespaceRule"],
0396     ignoreBases=["khtml::KHTMLWidget"],
0397     
0398     annotationRules=[
0399         toolkit.AnnotationRule(
0400             methodTypeMatch="ctor",
0401             parameterTypeMatch=["QWidget*","QObject*"],
0402             parameterNameMatch=["parent"],
0403             annotations="TransferThis"),
0404             
0405         toolkit.AnnotationRule(
0406             methodTypeMatch="function",
0407             parameterTypeMatch=["QWidget*","QObject*"],
0408             parameterNameMatch="parent",
0409             annotations="Transfer")
0410         ]
0411     )
0412 
0413 ###########################################################################
0414 def KNewStuffMapper(mod,headerName):
0415     print("KNewStuffMapper: "+headerName)
0416     filename = os.path.basename(headerName)
0417     if filename.endswith(".h"):
0418         sipName = filename[:-2]+".sip"
0419         if "knewstuff3" in headerName:
0420             return "knewstuff3_"+sipName
0421         else:
0422             return sipName
0423     return filename
0424 
0425 def KNewStuffCppHeaderMapper(mod,filename):
0426     if "knewstuff3" in filename:
0427         return "knewstuff3/" + os.path.basename(filename)
0428     else:
0429         return os.path.basename(filename)
0430 
0431 knewstuff = toolkit.ModuleGenerator(
0432     module="PyKDE4.knewstuff",
0433     outputDirectory=os.path.join(outputBaseDirectory,"sip/knewstuff"),
0434     docsOutputDirectory=os.path.join(outputBaseDirectory, "docs/html/knewstuff"),
0435     mainDocs=os.path.join(cmakelistBaseDirectory,"knewstuff/Mainpage.dox"),
0436     
0437     # .h file extraction
0438     cmakelists=[os.path.join(cmakelistBaseDirectory,"knewstuff/CMakeLists.txt"),
0439         os.path.join(cmakelistBaseDirectory,"knewstuff/knewstuff2/CMakeLists.txt"),
0440         os.path.join(cmakelistBaseDirectory,"knewstuff/knewstuff3/CMakeLists.txt")],
0441     
0442     ignoreHeaders="""knewstuff_export.h""".split(" "),
0443     #noUpdateSip=["typedefs.sip"],
0444     
0445     # Cpp parsing    
0446     preprocessSubstitutionMacros=qtkdemacros.QtPreprocessSubstitutionMacros(),
0447     preprocessorValues={"Q_WS_X11": 1},
0448     
0449     macros=qtkdemacros.QtMacros(),
0450     bareMacros=qtkdemacros.QtBareMacros(["KNEWSTUFF_EXPORT","KNEWSTUFF_EXPORT_DEPRECATED","KDE_EXPORT","KDE_DEPRECATED","Q_INVOKABLE"]),
0451     
0452     # Sip generation
0453     sipImportDirs=[sipImportDir,os.path.join(outputBaseDirectory,"sip")],
0454     sipImports=[
0455         "QtCore/QtCoremod.sip",
0456         "QtGui/QtGuimod.sip",
0457         "QtXml/QtXmlmod.sip",
0458         "kdecore/kdecoremod.sip",
0459         "kdeui/kdeuimod.sip"],
0460     copyrightNotice=qtkdemacros.copyrightNotice(),
0461     exportMacros=["KNEWSTUFF_EXPORT","KNEWSTUFF_EXPORT_DEPRECATED","KDE_EXPORT"],
0462     #noCTSCC=[],
0463     #ignoreBases=["khtml::KHTMLWidget"],
0464     
0465     annotationRules=[
0466         toolkit.AnnotationRule(
0467             methodTypeMatch="ctor",
0468             parameterTypeMatch=["QWidget*","QObject*"],
0469             parameterNameMatch=["parent"],
0470             annotations="TransferThis"),
0471             
0472         toolkit.AnnotationRule(
0473             methodTypeMatch="function",
0474             parameterTypeMatch=["QWidget*","QObject*"],
0475             parameterNameMatch="parent",
0476             annotations="Transfer")
0477         ],
0478     filenameMappingFunction=KNewStuffMapper,
0479     cppHeaderMappingFunction=KNewStuffCppHeaderMapper
0480     )
0481     
0482 ###########################################################################
0483 dnssd = toolkit.ModuleGenerator(
0484     module="PyKDE4.dnssd",
0485     outputDirectory=os.path.join(outputBaseDirectory,"sip/dnssd"),
0486     docsOutputDirectory=os.path.join(outputBaseDirectory, "docs/html/dnssd"),
0487     mainDocs=os.path.join(cmakelistBaseDirectory,"dnssd/Mainpage.dox"),
0488     
0489     # .h file extraction
0490     cmakelists=[os.path.join(cmakelistBaseDirectory,"dnssd/CMakeLists.txt")],
0491     
0492     ignoreHeaders="""dnssd_export.h settings.h""".split(" "),
0493     #noUpdateSip=["typedefs.sip"],
0494     
0495     # Cpp parsing    
0496     preprocessSubstitutionMacros=qtkdemacros.QtPreprocessSubstitutionMacros(),
0497     preprocessorValues={"Q_WS_X11": 1},
0498     
0499     macros=qtkdemacros.QtMacros(),
0500     bareMacros=qtkdemacros.QtBareMacros(["KDNSSD_EXPORT","KDE_EXPORT","KDE_DEPRECATED","Q_INVOKABLE"]),
0501     
0502     # Sip generation
0503     sipImportDirs=[sipImportDir,os.path.join(outputBaseDirectory,"sip")],
0504     sipImports=[
0505         "QtCore/QtCoremod.sip",
0506         "QtGui/QtGuimod.sip",
0507         "kdecore/kdecoremod.sip",
0508         "kdeui/kdeuimod.sip"],
0509     copyrightNotice=qtkdemacros.copyrightNotice(),
0510     exportMacros=["KDNSSD_EXPORT","KDE_EXPORT"],
0511     #noCTSCC=[],
0512     #ignoreBases=["khtml::KHTMLWidget"],
0513     
0514     annotationRules=[
0515         toolkit.AnnotationRule(
0516             methodTypeMatch="ctor",
0517             parameterTypeMatch=["QWidget*","QObject*"],
0518             parameterNameMatch=["parent"],
0519             annotations="TransferThis"),
0520             
0521         toolkit.AnnotationRule(
0522             methodTypeMatch="function",
0523             parameterTypeMatch=["QWidget*","QObject*"],
0524             parameterNameMatch="parent",
0525             annotations="Transfer")
0526         ]
0527     )
0528 
0529 ###########################################################################
0530 nepomuk = toolkit.ModuleGenerator(
0531     module="PyKDE4.nepomuk",
0532     outputDirectory=os.path.join(outputBaseDirectory,"sip/nepomuk"),
0533     docsOutputDirectory=os.path.join(outputBaseDirectory, "docs/html/nepomuk"),
0534     mainDocs=os.path.join(cmakelistBaseDirectory,"nepomuk/Mainpage.dox"),
0535     
0536     # .h file extraction
0537     cmakelists=[os.path.join(cmakelistBaseDirectory,"nepomuk/CMakeLists.txt"),
0538         os.path.join(cmakelistBaseDirectory,"nepomuk/query/CMakeLists.txt")],
0539     headers = [os.path.join(kdelibsBuildDirectory,"nepomuk",x)
0540         for x in "ncal.h nco.h ndo.h nfo.h nie.h nmm.h nuao.h pimo.h tmo.h".split(" ")],
0541 
0542     ignoreHeaders="""nepomuk_export.h ontologyloader.h desktopontologyloader.h fileontologyloader.h ontologymanager.h nepomukontologyloader.h nepomukquery_export.h kmetadatatagwidget.h ncal.h  nco.h  ndo.h  nexif.h  nfo.h  nie.h  nmm.h  nmo.h  nuao.h  pimo.h  tmo.h""".split(" "),
0543     #noUpdateSip=["typedefs.sip"],
0544     
0545     # Cpp parsing    
0546     preprocessSubstitutionMacros=qtkdemacros.QtPreprocessSubstitutionMacros(),
0547     preprocessorValues={"Q_WS_X11": 1},
0548     
0549     macros=qtkdemacros.QtMacros(),
0550     bareMacros=qtkdemacros.QtBareMacros(["NEPOMUK_EXPORT","KDE_EXPORT","KDE_DEPRECATED","Q_INVOKABLE","NEPOMUKQUERY_EXPORT"]),
0551     
0552     # Sip generation
0553     sipImportDirs=[sipImportDir,os.path.join(outputBaseDirectory,"sip")],
0554     sipImports=[
0555         "QtCore/QtCoremod.sip",
0556         "kdecore/kdecoremod.sip",
0557         "soprano/sopranomod.sip"],
0558     copyrightNotice=qtkdemacros.copyrightNotice(),
0559     exportMacros=["NEPOMUK_EXPORT","KDE_EXPORT","NEPOMUKQUERY_EXPORT"],
0560     noCTSCC=["Term","GroupTerm","AndTerm","OrTerm","LiteralTerm","ResourceTerm","SimpleTerm","ComparisonTerm","ResourceTypeTerm","NegationTerm","OptionalTerm","FileQuery"],
0561     #ignoreBases=["khtml::KHTMLWidget"],
0562     
0563     annotationRules=[
0564         toolkit.AnnotationRule(
0565             methodTypeMatch="ctor",
0566             parameterTypeMatch=["QWidget*","QObject*"],
0567             parameterNameMatch=["parent"],
0568             annotations="TransferThis"),
0569             
0570         toolkit.AnnotationRule(
0571             methodTypeMatch="function",
0572             parameterTypeMatch=["QWidget*","QObject*"],
0573             parameterNameMatch="parent",
0574             annotations="Transfer")
0575         ]
0576     )
0577 
0578 ###########################################################################
0579 soprano = toolkit.ModuleGenerator(
0580     module="PyKDE4.soprano",
0581     outputDirectory=os.path.join(outputBaseDirectory,"sip/soprano"),
0582     docsOutputDirectory=os.path.join(outputBaseDirectory, "docs/html/soprano"),
0583     mainDocs=os.path.join(cmakelistGitBaseDirectory,"soprano/Mainpage.dox"),
0584     
0585     # .h file extraction
0586     cmakelists=[os.path.join(cmakelistGitBaseDirectory,"soprano/CMakeLists.txt"),
0587             os.path.join(cmakelistGitBaseDirectory,"soprano/soprano/CMakeLists.txt"),
0588             os.path.join(cmakelistGitBaseDirectory,"soprano/server/CMakeLists.txt"),
0589             #os.path.join(cmakelistGitBaseDirectory,"soprano/server/sparql/CMakeLists.txt"),
0590             os.path.join(cmakelistGitBaseDirectory,"soprano/server/dbus/CMakeLists.txt")],
0591     
0592     ignoreHeaders="""soprano_export.h sopranomacros.h soprano.h vocabulary.h iterator.h version.h iteratorbackend.h""".split(" "),
0593     #noUpdateSip=["iterator.sip"],
0594     
0595     # Cpp parsing    
0596     preprocessSubstitutionMacros=qtkdemacros.QtPreprocessSubstitutionMacros(),
0597     preprocessorValues={"Q_WS_X11": 1, "USING_SOPRANO_NRLMODEL_UNSTABLE_API":1, "QT_VERSION": 0x040700},
0598     
0599     macros=qtkdemacros.QtMacros(),
0600     bareMacros=qtkdemacros.QtBareMacros(["SOPRANO_EXPORT","SOPRANO_CLIENT_EXPORT","SOPRANO_SERVER_EXPORT",
0601                     "USING_SOPRANO_NRLMODEL_UNSTABLE_API","KDE_EXPORT","KDE_DEPRECATED","Q_INVOKABLE",
0602                     "SOPRANO_DEPRECATED"]),
0603     
0604     # Sip generation
0605     sipImportDirs=[sipImportDir,os.path.join(outputBaseDirectory,"sip")],
0606     sipImports=["QtCore/QtCoremod.sip","QtGui/QtGuimod.sip","QtNetwork/QtNetworkmod.sip"],
0607     
0608     copyrightNotice=qtkdemacros.copyrightNotice(),
0609     exportMacros=["SOPRANO_EXPORT","SOPRANO_CLIENT_EXPORT","SOPRANO_SERVER_EXPORT","KDE_EXPORT"],
0610     #noCTSCC=[],
0611     ignoreBases=["IteratorBackend<BindingSet>","Iterator<Node>","Iterator<BindingSet>","Iterator<Statement>"],
0612     
0613     annotationRules=[
0614         toolkit.AnnotationRule(
0615             methodTypeMatch="ctor",
0616             parameterTypeMatch=["QWidget*","QObject*"],
0617             parameterNameMatch=["parent"],
0618             annotations="TransferThis"),
0619             
0620         toolkit.AnnotationRule(
0621             methodTypeMatch="function",
0622             parameterTypeMatch=["QWidget*","QObject*"],
0623             parameterNameMatch="parent",
0624             annotations="Transfer")
0625         ]
0626     )
0627 
0628 ###########################################################################
0629 akonadi = toolkit.ModuleGenerator(
0630     module="PyKDE4.akonadi",
0631     outputDirectory=os.path.join(outputBaseDirectory,"sip/akonadi"),
0632     docsOutputDirectory=os.path.join(outputBaseDirectory, "docs/html/akonadi"),
0633     mainDocs=os.path.join(cmakelistPimlibsBaseDirectory,"akonadi/Mainpage.dox"),
0634     
0635     # .h file extraction
0636     cmakelists=[os.path.join(cmakelistPimlibsBaseDirectory,"akonadi/CMakeLists.txt"),
0637         os.path.join(cmakelistPimlibsBaseDirectory,"akonadi/kmime/CMakeLists.txt"),
0638         os.path.join(cmakelistPimlibsBaseDirectory,"akonadi/kabc/CMakeLists.txt")],
0639     
0640     ignoreHeaders="""akonadi_export.h akonadi-kmime_export.h akonadi-kabc_export.h itempayloadinternals_p.h collectionpathresolver_p.h qtest_akonadi.h exception.h contactparts.h cachepolicypage.h resourcebasesettings.h dbusconnectionpool.h """.split(" "),
0641     #addressee.h kabc_export.h
0642     
0643     headers=[os.path.join(kdepimlibsBuildDirectory,"akonadi/resourcebasesettings.h")],
0644 #    headers=[
0645 #        os.path.join(kdepimlibsBuildDirectory, "addressee.h")],
0646     #resourcebase.h agentbase.h 
0647     #noUpdateSip=["iterator.sip"],
0648     ignoreBases=["QDBusContext"],
0649     
0650     # Cpp parsing    
0651     preprocessSubstitutionMacros=qtkdemacros.QtPreprocessSubstitutionMacros( \
0652         [(re.compile(r'Latin1\( "ISO-8859-1" \)'),r'Latin1'),
0653         (re.compile(r'kmime_mk_trivial_ctor\(\s*(\w+)\s*\)'),r'public: explicit \1( Content *parent = 0 ); \1( Content *parent, const QByteArray &s ); \1( Content *parent, const QString &s, const QByteArray &charset ); ~\1();'),
0654         (re.compile(r'kmime_mk_dptr_ctor\(\s*(\w+)\s*\)'), r'protected: explicit \1( \1::Private *d, KMime::Content *parent = 0 );'), 
0655         (re.compile(r'kmime_mk_trivial_ctor_with_name\(\s*(\w+)\s*\)'),r'public: explicit \1( Content *parent = 0 ); \1( Content *parent, const QByteArray &s ); \1( Content *parent, const QString &s, const QByteArray &charset ); ~\1();const char *type() const; static const char *staticType();'),
0656         ]),
0657 
0658   
0659     #[(re.compile(r'AKONADI_COLLECTION_PROPERTIES_PAGE_FACTORY\s*\(\s*(\S+)\s*,\s*(\w+)\s*\)'),r'']),
0660     preprocessorValues={"Q_WS_X11": 1},
0661     
0662     macros=qtkdemacros.QtMacros(["AKONADI_DECLARE_PRIVATE"]),
0663     bareMacros=qtkdemacros.QtBareMacros(["AKONADI_EXPORT","AKONADI_EXPORT_DEPRECATED","KDE_EXPORT",
0664         "KDE_DEPRECATED","Q_INVOKABLE","KABC_EXPORT","KABC_EXPORT_DEPRECATED","AKONADI_KABC_EXPORT","AKONADI_KMIME_EXPORT","AKONADI_KMIME_EXPORT_DEPRECATED","KMIME_EXPORT","KMIME_EXPORT_DEPRECATED"]),
0665     
0666     # Sip generation
0667     sipImportDirs=[sipImportDir,os.path.join(outputBaseDirectory,"sip")],
0668     sipImports=["QtCore/QtCoremod.sip","QtGui/QtGuimod.sip","kdeui/kdeuimod.sip","kdecore/kdecoremod.sip","kio/kiomod.sip"],
0669     
0670     copyrightNotice=qtkdemacros.copyrightNotice(),
0671     exportMacros=["AKONADI_EXPORT","AKONADI_KABC_EXPORT","AKONADI_KMIME_EXPORT","KDE_EXPORT","AKONADI_EXPORT_DEPRECATED","AKONADI_KMIME_EXPORT_DEPRECATED","KABC_EXPORT","KABC_EXPORT_DEPRECATED","KMIME_EXPORT","KMIME_EXPORT_DEPRECATED"],
0672     noCTSCC=["Collection","Entity","Item"],
0673     
0674     annotationRules=[
0675         toolkit.AnnotationRule(
0676             methodTypeMatch="ctor",
0677             parameterTypeMatch=["QWidget*","QObject*"],
0678             parameterNameMatch=["parent"],
0679             annotations="TransferThis"),
0680             
0681         toolkit.AnnotationRule(
0682             methodTypeMatch="function",
0683             parameterTypeMatch=["QWidget*","QObject*"],
0684             parameterNameMatch="parent",
0685             annotations="Transfer")
0686         ]
0687     )
0688 
0689 ###########################################################################
0690 polkitqt = toolkit.ModuleGenerator(
0691     module="PyKDE4.polkitqt",
0692     outputDirectory=os.path.join(outputBaseDirectory,"sip/polkitqt"),
0693     docsOutputDirectory=os.path.join(outputBaseDirectory, "docs/html/polkitqt"),
0694     mainDocs=os.path.join(polkitqtBaseDirectory,"Mainpage.dox"),
0695     
0696     # .h file extraction
0697     cmakelists=[os.path.join(polkitqtBaseDirectory,"CMakeLists.txt")],
0698     
0699     ignoreHeaders="""export.h polkitqtversion.h""".split(" "),
0700     #resourcebase.h agentbase.h 
0701     #noUpdateSip=["iterator.sip"],
0702     #ignoreBases=["QDBusContext"],
0703     
0704     # Cpp parsing    
0705     preprocessSubstitutionMacros=qtkdemacros.QtPreprocessSubstitutionMacros(),
0706     preprocessorValues={"Q_WS_X11": 1},
0707     
0708     macros=qtkdemacros.QtMacros(),
0709     bareMacros=qtkdemacros.QtBareMacros(["POLKIT_QT_EXPORT","POLKITQT1_EXPORT"]),
0710     
0711     # Sip generation
0712     sipImportDirs=[sipImportDir,os.path.join(outputBaseDirectory,"sip")],
0713     sipImports=["QtCore/QtCoremod.sip","QtGui/QtGuimod.sip"],
0714     
0715     copyrightNotice=qtkdemacros.copyrightNotice(),
0716     exportMacros=["POLKIT_QT_EXPORT","KDE_EXPORT"],
0717     #noCTSCC=[],
0718     
0719     annotationRules=[
0720         toolkit.AnnotationRule(
0721             methodTypeMatch="ctor",
0722             parameterTypeMatch=["QWidget*","QObject*"],
0723             parameterNameMatch=["parent"],
0724             annotations="TransferThis"),
0725             
0726         toolkit.AnnotationRule(
0727             methodTypeMatch="function",
0728             parameterTypeMatch=["QWidget*","QObject*"],
0729             parameterNameMatch="parent",
0730             annotations="Transfer")
0731         ]
0732     )
0733 
0734 ###########################################################################
0735 phonon = toolkit.ModuleGenerator(
0736     module="PyKDE4.phonon",
0737     outputDirectory=os.path.join(outputBaseDirectory,"sip/phonon"),
0738     docsOutputDirectory=os.path.join(outputBaseDirectory, "docs/html/phonon"),
0739     mainDocs=os.path.join(cmakelistPhononBaseDirectory,"Mainpage.dox"),
0740     
0741     # .h file extraction
0742     cmakelists=[os.path.join(cmakelistPhononBaseDirectory,"phonon/CMakeLists.txt")],
0743     
0744     ignoreHeaders="""phonondefs.h  phonon_export.h export.h kaudiodevicelist_export.h phononnamespace.h addoninterface.h volumefaderinterface.h backendinterface.h effectinterface.h mediaobjectinterface.h platformplugin.h audiodataoutputinterface.h audiooutputinterface.h""".split(" "),
0745 
0746     noUpdateSip=["phononnamespace.sip"],
0747     ignoreBases=["QSharedData"],
0748     #ignoreBases=["AbstractAudioOutput", "Phonon::AbstractAudioOutput", "QSharedData", "AbstractVideoOutput",
0749     #                "Phonon::AbstractVideoOutput"],
0750     
0751     # Cpp parsing    
0752     preprocessSubstitutionMacros=qtkdemacros.QtPreprocessSubstitutionMacros(),
0753     preprocessorValues={"Q_WS_X11": 1, "QT_VERSION": "0x040400", "_MSC_VER": 0},
0754     
0755     macros=qtkdemacros.QtMacros(),
0756     bareMacros=qtkdemacros.QtBareMacros(["PHONON_EXPORT","PHONONEXPERIMENTAL_EXPORT", "PHONON_DEPRECATED",
0757         "PHONON_EXPORT_DEPRECATED", "KAUDIODEVICELIST_EXPORT"]),
0758     
0759     # Sip generation
0760     sipImportDirs=[sipImportDir,os.path.join(outputBaseDirectory,"sip")],
0761     sipImports=["QtCore/QtCoremod.sip","QtGui/QtGuimod.sip","QtXml/QtXmlmod.sip","solid/solidmod.sip"],
0762     
0763     copyrightNotice=qtkdemacros.copyrightNotice(),
0764     exportMacros=["PHONON_EXPORT", "KDE_EXPORT", "PHONONEXPERIMENTAL_EXPORT", "KAUDIODEVICELIST_EXPORT", "PHONON_DEPRECATED", "PHONON_EXPORT_DEPRECATED"],
0765     #noCTSCC=[],
0766     
0767     annotationRules=[
0768         toolkit.AnnotationRule(
0769             methodTypeMatch="ctor",
0770             parameterTypeMatch=["QWidget*","QObject*"],
0771             parameterNameMatch=["parent"],
0772             annotations="TransferThis"),
0773             
0774         toolkit.AnnotationRule(
0775             methodTypeMatch="function",
0776             parameterTypeMatch=["QWidget*","QObject*"],
0777             parameterNameMatch="parent",
0778             annotations="Transfer")
0779         ]
0780     )
0781 
0782 
0783 ###########################################################################
0784 def updateSIP():
0785     kdecore.run()
0786     plasma.run()
0787     kdeui.run()
0788     kio.run()
0789     kutils.run()
0790     solid.run()
0791     kparts.run()
0792     khtml.run()
0793     knewstuff.run()
0794     dnssd.run()
0795     nepomuk.run()
0796     soprano.run()
0797     akonadi.run()
0798     polkitqt.run()
0799     phonon.run()
0800     
0801 def updateDocs():
0802     classNames = []
0803     nsNames = []
0804 
0805     def UpdateClassNamespaceList(moduleName,sipScopes):
0806         nsNames.append( (moduleName,'global', 'global') )
0807         def ExtractClassNamespace(scope):
0808             for item in scope:
0809                 if isinstance(item,sipsymboldata.SymbolData.SipClass):
0810                     classNames.append( (moduleName, item.fqPythonName(), item.fqPythonName()) )
0811                     ExtractClassNamespace(item)
0812                 elif isinstance(item,sipsymboldata.SymbolData.Namespace):
0813                     nsTuple = (moduleName,item.fqPythonName(),item.fqPythonName())
0814                     if nsTuple not in nsNames:
0815                         nsNames.append( nsTuple )
0816                     ExtractClassNamespace(item)
0817         for scope in sipScopes:
0818             ExtractClassNamespace(scope)
0819 
0820     UpdateClassNamespaceList('kdecore',kdecore.docs())
0821     UpdateClassNamespaceList('plasma',plasma.docs())
0822     UpdateClassNamespaceList('kdeui',kdeui.docs())
0823     UpdateClassNamespaceList('kio',kio.docs())
0824     UpdateClassNamespaceList('kutils',kutils.docs())
0825     UpdateClassNamespaceList('solid',solid.docs())
0826     UpdateClassNamespaceList('kparts',kparts.docs())
0827     UpdateClassNamespaceList('khtml',khtml.docs())
0828     UpdateClassNamespaceList('knewstuff',knewstuff.docs())
0829     UpdateClassNamespaceList('dnssd',dnssd.docs())
0830     UpdateClassNamespaceList('nepomuk',nepomuk.docs())
0831     UpdateClassNamespaceList('soprano',soprano.docs())
0832     UpdateClassNamespaceList('akonadi',akonadi.docs())
0833     UpdateClassNamespaceList('polkitqt',polkitqt.docs())
0834     UpdateClassNamespaceList('phonon',phonon.docs())
0835 
0836     print("Writing all classes index:")
0837     toolkit.ModuleGenerator.WriteAllClasses(os.path.join(outputBaseDirectory,"docs/html"),nsNames,classNames)
0838     print("Done")
0839     
0840 def main():
0841     updateSIP()
0842     updateDocs()
0843 
0844 if __name__=="__main__":
0845     main()