]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/wxaddons/setup.py
Build and distrib tweaks ported over from the 2.6 branch
[wxWidgets.git] / wxPython / wxaddons / setup.py
diff --git a/wxPython/wxaddons/setup.py b/wxPython/wxaddons/setup.py
new file mode 100644 (file)
index 0000000..8f136a7
--- /dev/null
@@ -0,0 +1,31 @@
+import distutils.command.install_lib
+import distutils.command.install
+import os
+from distutils.core import setup
+
+class wxaddon_install_lib(distutils.command.install_lib.install_lib):
+    """need to change self.install_dir to the actual library dir"""
+    def run(self):
+        install_cmd = self.get_finalized_command('install')
+        self.install_dir = os.path.join(getattr(install_cmd, 'install_purelib'), "wxaddons")
+        return distutils.command.install_lib.install_lib.run(self)
+        
+class wxaddon_install(distutils.command.install.install):
+    def run(self):
+        result = distutils.command.install.install.run(self)
+                
+        metadata_file = 'addon.info'
+        if os.path.exists(metadata_file):
+            import wx
+            import email
+            fields = email.message_from_string(open(metadata_file).read())
+            config = wx.Config("wxaddons-receipts")
+            config.SetPath(fields['name'])
+            for field in fields._headers:
+                config.Write(field[0], field[1])
+        return result     
+        
+def wxaddon(**kwargs):
+    kwargs['cmdclass'] =  {'install_lib' :    wxaddon_install_lib, 
+                           'install' :  wxaddon_install }
+    setup(**kwargs)
\ No newline at end of file