0f475e8aa9
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40003 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
31 lines
1.2 KiB
Python
31 lines
1.2 KiB
Python
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) |