changeset 158:dd277233538c

Add setup.py
author Neil Muller <drnlmuller@gmail.com>
date Fri, 11 May 2012 21:59:33 +0200
parents db8df35ae599
children f1efd252e8b0
files setup.py
diffstat 1 files changed, 114 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/setup.py	Fri May 11 21:59:33 2012 +0200
@@ -0,0 +1,114 @@
+# setup.py
+# -*- coding: utf8 -*-
+# vim:fileencoding=utf8 ai ts=4 sts=4 et sw=4
+
+"""Setuptools setup.py file"""
+
+from setuptools import setup, find_packages
+
+try:
+    import py2exe  # pyflakes:ignore
+except ImportError:
+    pass
+
+VERSION_STR = "0.1"
+
+setup(   # Metadata
+            name="sypikslang",
+            version=VERSION_STR,
+            description="Sypikslang: A Mad Science game for Pyweek 14",
+
+            author=("Jeremy Thurgood, Neil Muller, Rizmaria Versfeld,"
+                    "Simon Cross"),
+            author_email="",
+
+            maintainer="Sypikslang Team",
+            maintainer_email="ctpug@googlegroups.com",
+
+            url="http://ctpug.org.za/",
+            download_url="https://ctpug.org.za/hg/sypikslang/",
+
+            license="MIT",
+
+            classifiers=[
+                  'Development Status :: 4 - Beta',
+                  'Environment :: MacOS X',
+                  'Environment :: Win32 (MS Windows)',
+                  'Environment :: X11 Applications',
+                  'Intended Audience :: End Users/Desktop',
+                  'License :: OSI Approved :: MIT License',
+                  'Natural Language :: English',
+                  'Operating System :: Microsoft :: Windows',
+                  'Operating System :: POSIX',
+                  'Operating System :: MacOS :: MacOS X',
+                  'Programming Language :: Python :: 2.5',
+                  'Programming Language :: Python :: 2.6',
+                  'Topic :: Games/Entertainment :: Role-Playing',
+                  'Topic :: Games/Entertainment :: Arcade',
+             ],
+
+            platforms=[
+                  'Linux',
+                  'Mac OS X',
+                  'Windows',
+            ],
+
+            # Dependencies
+            install_requires=[],
+
+            # Files
+            packages=find_packages(),
+            scripts=[
+                  'scripts/sypikslang',
+            ],
+
+            # py2exe
+            windows=[{
+                'script': 'scripts/sypikslang',
+                'icon_resources': [(0, "data/icons/icon.ico")],
+            }],
+            app=['scripts/sypikslang'],
+            options={
+            'py2exe': {
+                'skip_archive': 1,
+                'dist_dir': 'dist/sypikslang-%s' % VERSION_STR,
+                'packages': [
+                    'gamelib',
+                ],
+                'includes': [
+                    # pygame
+                    'pygame',
+                ],
+                'excludes': [
+                    'numpy',
+                ],
+                'ignores': [
+                    # all database modules
+                    'pgdb', 'Sybase', 'adodbapi',
+                    'kinterbasdb', 'psycopg', 'psycopg2', 'pymssql',
+                    'sapdb', 'pysqlite2', 'sqlite', 'sqlite3',
+                    'MySQLdb', 'MySQLdb.connections',
+                    'MySQLdb.constants.CR', 'MySQLdb.constants.ER',
+                    # old datetime equivalents
+                    'DateTime', 'DateTime.ISO',
+                    'mx', 'mx.DateTime', 'mx.DateTime.ISO',
+                    # email modules
+                    'email.Generator', 'email.Iterators', 'email.Utils',
+                ],
+            },
+            'py2app': {
+                'app': ['run_game.py'],
+                'argv_emulation': True,
+                'iconfile': 'data/icons/icon.icns',
+                'packages': [
+                    'pygame', 'gamelib', 'data',
+                ],
+                'excludes': ['numpy'],
+            }},
+            data_files=[
+                # 'COPYRIGHT',
+                'LICENSE.txt',
+                'README.txt',
+            ],
+            include_package_data=True,
+        )