File indexing completed on 2024-09-15 04:16:29
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()