diff --git a/configure.py b/configure.py index ebedf9a..7077f3d 100644 --- a/configure.py +++ b/configure.py @@ -1458,14 +1458,15 @@ def main(argv): # Create the additional Makefiles. sipconfig.inform("Creating top level Makefile...") - open('__init__.py', 'a').close() - sipconfig.ParentMakefile( configuration=sipcfg, subdirs=pyqt_modules + pyqt.tools(), installs=(pyqt.module_installs(), pyqt.module_dir()) ).generate() + # Install module initialization script. + create_config("__init__.py", os.path.join(src_dir, "module-init.py"), macros) + # Install the configuration module. create_config("pyqtconfig.py", os.path.join(src_dir, "pyqtconfig.py.in"), macros) diff --git a/module-init.py b/module-init.py new file mode 100644 index 0000000..929a166 --- /dev/null +++ b/module-init.py @@ -0,0 +1,35 @@ + +# Trinity-specific paths +import sys, os +tqt_modules = [] +for m_path in sys.path: + if os.path.exists(os.path.join(m_path, 'sip4_tqt')): + m_sip_dir = os.path.join(m_path, 'sip4_tqt') + tqt_modules.insert(0, m_sip_dir) + if os.path.exists(os.path.join(m_path, 'python_tqt')): + m_pyqt_dir = os.path.join(m_path, 'python_tqt') + tqt_modules.insert(0, m_pyqt_dir) +for m_path in tqt_modules: + sys.path.insert(0, m_path) + +# Base modules +__all__ = [ + 'qt', + 'qtcanvas', + 'qtnetwork', + 'qtsql', + 'qttable', + 'qtui', + 'qtxml', +] + +# Optional modules +if os.path.exists(os.path.join(m_pyqt_dir, 'qtaxcontainer.so')): + __all__.append('qtaxcontainer') +if os.path.exists(os.path.join(m_pyqt_dir, 'qtext.so')): + __all__.append('qtext') +if os.path.exists(os.path.join(m_pyqt_dir, 'qtgl.so')): + __all__.append('qtgl') + +# Import namespaces +from python_tqt import *