Saved games can now be loaded as well.
[naja.git] / setup.py
1 # setup.py
2 # -*- coding: utf8 -*-
3 # vim:fileencoding=utf8 ai ts=4 sts=4 et sw=4
4
5 """Setuptools setup.py file for naja."""
6
7 from setuptools import setup, find_packages
8
9 try:
10     import py2exe
11     py2exe  # To make pyflakes happy.
12 except ImportError:
13     pass
14
15 # This should probably be pulled from constants.py
16 VERSION_STR = "0.1"
17
18 setup(
19     name="naja",
20     version=VERSION_STR,
21     description="naja: Game for PyWeek 18",
22
23     author=(", ".join([
24         "Simon Cross",
25         "Neil Muller",
26         "Adrianna Pinska",
27         "Stefano Rivera",
28         "David Sharpe",
29         "Jeremy Thurgood",
30     ])),
31     author_email="ctpug@googlegroups.com",
32
33     maintainer="Naja Team",
34     maintainer_email="ctpug@googlegroups.com",
35
36     url="http://ctpug.org.za/",
37     download_url="http://ctpug.org.za/git/naja",
38
39     license="MIT",
40
41     classifiers=[
42         'Development Status :: 4 - Beta',
43         'Environment :: MacOS X',
44         'Environment :: Win32 (MS Windows)',
45         'Environment :: X11 Applications',
46         'Intended Audience :: End Users/Desktop',
47         'License :: OSI Approved :: MIT License',
48         'Natural Language :: English',
49         'Operating System :: Microsoft :: Windows',
50         'Operating System :: POSIX',
51         'Operating System :: MacOS :: MacOS X',
52         'Programming Language :: Python :: 2.6',
53         'Programming Language :: Python :: 2.7',
54         'Topic :: Games/Entertainment',
55     ],
56
57     platforms=[
58         'Linux',
59         'Mac OS X',
60         'Windows',
61     ],
62
63     # Dependencies
64     install_requires=[
65         'pygame',
66         'PyYAML',
67     ],
68
69     # Files
70     packages=find_packages(),
71     scripts=[
72         'scripts/naja',
73     ],
74
75     # py2exe
76     windows=[{
77         'script': 'scripts/naja',
78         'icon_resources': [(0, "data/icons/robolock.ico")],
79     }],
80     app=['scripts/naja'],
81     options={
82         'py2exe': {
83             'skip_archive': 1,
84             'dist_dir': 'dist/naja-%s' % VERSION_STR,
85             'packages': [
86                 'logging', 'encodings', 'naja',
87             ],
88             'includes': [
89                 'pygame', 'yaml'
90             ],
91             'excludes': [
92                 'numpy', 'pygame.sdlmain_osx', 'winreg', 'AppKit', 'Foundation',
93                 'Numeric', 'OpenGL.GL', '_scproxy', '_sysconfigdata',
94                 'copyreg', 'dummy.Process', 'pkg_resources', 'queue',
95                 'win32evtlog', 'win32evtlogutil',
96             ],
97             'ignores': [
98                 # all database modules
99                 'pgdb', 'Sybase', 'adodbapi',
100                 'kinterbasdb', 'psycopg', 'psycopg2', 'pymssql',
101                 'sapdb', 'pysqlite2', 'sqlite', 'sqlite3',
102                 'MySQLdb', 'MySQLdb.connections',
103                 'MySQLdb.constants.CR', 'MySQLdb.constants.ER',
104                 # old datetime equivalents
105                 'DateTime', 'DateTime.ISO',
106                 'mx', 'mx.DateTime', 'mx.DateTime.ISO',
107                 # email modules
108                 'email.Generator', 'email.Iterators', 'email.Utils',
109             ],
110         },
111         'py2app': {
112             'app': ['run_game.py'],
113             'argv_emulation': True,
114             'iconfile': 'data/icons/program/icon.icns',
115             'packages': [
116                 'logging', 'encodings', 'pygame', 'naja', 'data',
117             ],
118             'excludes': ['numpy'],
119         }},
120     data_files=[
121         # 'COPYRIGHT',
122         'LICENSE.txt',
123         'README.txt',
124     ],
125     include_package_data=True,
126 )