forked from emesene/emesene
-
Notifications
You must be signed in to change notification settings - Fork 0
/
setup.py
116 lines (99 loc) · 4.98 KB
/
setup.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
#!/usr/bin/python
try:
from setuptools import setup, find_packages
except ImportError:
import ez_setup
ez_setup.use_setuptools()
from setuptools import setup, find_packages
import os
import platform
python_version = platform.python_version()[0:3]
setup_info = dict(name = 'emesene',
version = '2.0',
description = 'Instant Messaging Client',
author = 'Luis Mariano Guerra',
author_email = 'luismarianoguerra@gmail.com',
keywords = "messenger im msn jabber gtalk live facebook",
long_description = """emesene is an istant messenger capable of connecting
to various networks and utilizing different graphical toolkits.
Currently msn and jabber are supported through papyon and xmppy,
which allows emesene to connect to various IM services such as
Windows Live Messenger, GTalk, Facebook Chat, etc.""",
url = 'http://www.emesene.org/',
license = 'GNU GPL 3',
classifiers=[
"Development Status :: 3 - Alpha",
"License :: OSI Approved :: GNU General Public License (GPL)",
"Operating System :: OS Independent",
"Programming Language :: Python",
"Topic :: Communications :: Chat",
],
ext_package = "emesene",
include_package_data = True,
package_data = {"emesene" : ['themes/conversations/*/*/*/*/*',
'themes/emotes/*/*',
'themes/images/*/*/*',
'themes/sounds/*/*']})
def windows_check():
return platform.system() in ('Windows', 'Microsoft')
def osx_check():
return platform.system() == "Darwin"
if os.name == 'nt':
import py2exe
_data_files = ['../dlls/Microsoft.VC90.CRT.manifest',
'../dlls/msvcm90.dll',
'../dlls/msvcp90.dll',
'../dlls/msvcr71.dll',
'../dlls/msvcr90.dll']
for base in ("e3/msn/xml templates", "themes", "plugins"):
for dirname, dirnames, files in os.walk(base):
fpath = []
for file in files:
fpath.append(os.path.join(dirname, file))
_data_files.append((dirname, fpath))
opts = {
'py2exe': {
'packages': ['encodings', 'gtk', "OpenSSL", "Crypto", "papyon"],
'includes': ['locale', 'gio', 'cairo', 'pangocairo', 'pango',
'atk', 'gobject', 'os', 'code', 'winsound', 'win32api',
'win32gui', 'optparse', 'plugin_base', "OpenSSL", "Crypto", "papyon"],
'excludes': ['ltihooks', 'pywin', 'pywin.debugger',
'pywin.debugger.dbgcon', 'pywin.dialogs',
'pywin.dialogs.list', 'Tkconstants', 'Tkinter', 'tcl'
'doctest', 'macpath', 'pdb', 'cookielib', 'ftplib',
'pickle', 'caledar', 'win32wnet', 'unicodedata',
'getopt', 'gdk'],
'dll_excludes': ['libglade-2.0-0.dll', 'w9xpopen.exe'],
'optimize': '2',
'dist_dir': '../dist',
"skip_archive": 1
}
}
setup(requires = ["gtk"],
windows = [{"script": "emesene.py", 'icon_resources': [(1, "emesene.ico")], "dest_base": "emesene"}],
console = [{"script": "emesene.py", "dest_base": "emesene_debug"}],
options = opts,
data_files = _data_files, **setup_info)
print "done! files at: dist"
else:
# Data files to be installed to the system
_data_files = [
('share/icons/scalable/apps', ['emesene/data/icons/scalable/apps/emesene.svg']),
('share/icons/hicolor/16x16/apps', ['emesene/data/icons/hicolor/16x16/apps/emesene.png']),
('share/icons/hicolor/22x22/apps', ['emesene/data/icons/hicolor/22x22/apps/emesene.png']),
('share/icons/hicolor/24x24/apps', ['emesene/data/icons/hicolor/24x24/apps/emesene.png']),
('share/icons/hicolor/32x32/apps', ['emesene/data/icons/hicolor/32x32/apps/emesene.png']),
('share/icons/hicolor/36x36/apps', ['emesene/data/icons/hicolor/36x36/apps/emesene.png']),
('share/icons/hicolor/48x48/apps', ['emesene/data/icons/hicolor/48x48/apps/emesene.png']),
('share/icons/hicolor/64x64/apps', ['emesene/data/icons/hicolor/64x64/apps/emesene.png']),
('share/icons/hicolor/72x72/apps', ['emesene/data/icons/hicolor/72x72/apps/emesene.png']),
('share/icons/hicolor/96x96/apps', ['emesene/data/icons/hicolor/96x96/apps/emesene.png']),
('share/icons/hicolor/128x128/apps', ['emesene/data/icons/hicolor/128x128/apps/emesene.png']),
('share/icons/hicolor/192x192/apps', ['emesene/data/icons/hicolor/192x192/apps/emesene.png']),
('share/icons/hicolor/256x256/apps', ['emesene/data/icons/hicolor/256x256/apps/emesene.png']),
('share/applications', ['emesene/data/share/applications/emesene.desktop']),
('share/pixmaps', ['emesene/data/pixmaps/emesene.png', 'emesene/data/pixmaps/emesene.xpm']),
('share/man/man1', ['docs/man/emesene.1'])
]
setup(data_files = _data_files,
packages = find_packages(), **setup_info)