~glitter-team/glitter/trunk

« back to all changes in this revision

Viewing changes to setup.py

  • Committer: Jan Jokela
  • Date: 2008-12-10 22:18:59 UTC
  • Revision ID: janjokela@gmail.com-20081210221859-zxr2ut255a7xu15x
Hi, Glitter here

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
# !/usr/bin/python
 
2
# -*- coding: utf-8 -*-
 
3
 
 
4
# Glitter Toolkit
 
5
 
 
6
__authors__ = ["Jan Jokela <janjokela@gmail.com>"]
 
7
__licenses__ = ["LICENSE.LGPL"]
 
8
__description__ = "distutils setup script" 
 
9
 
 
10
""" Setup script
 
11
 
 
12
For a system-wide installation of glitter run
 
13
    '(sudo) python setup.py install'
 
14
    
 
15
For help run 
 
16
    'python setup.py --help'
 
17
    
 
18
"""
 
19
 
 
20
import sys
 
21
import os
 
22
from distutils.core import setup
 
23
 
 
24
if sys.version_info < (2, 5): 
 
25
    sys.stderr.write("[ERROR] Python version not supported. 2.5+ required\n")
 
26
    sys.exit(1) 
 
27
 
 
28
import glitter
 
29
 
 
30
META_DATA = {
 
31
  'name': 'Glitter',
 
32
  'version': glitter.__version__,
 
33
  'author': 'The Glitter Team',
 
34
  'author_email': '',
 
35
  'maintainer': 'Jan Jokela',
 
36
  'maintainer_email': 'janjokela@gmail.com',
 
37
  'url': 'http://www.glitter-toolkit.com/',     
 
38
  'description': 'Glitter User Interface Tookit',
 
39
  'long_description': """Glitter is a widget toolkit written in python and 
 
40
                      built on top of clutter. It offers breathtaking visuals, 
 
41
                      resolution independence and for developers, a simple and 
 
42
                      elegant GObject-based API similar to GTK.""",
 
43
  'download_url': 'http://www.glitter-toolkit.com/',
 
44
  'classifiers': [
 
45
      'Development Status :: 2 - Pre-Alpha',
 
46
      'Environment :: Console',
 
47
      'Environment :: X11 Applications',
 
48
      'Intended Audience :: Developers',
 
49
      'Intended Audience :: System Administrators',
 
50
      'License :: OSI Approved :: GNU Library or Lesser General Public ' + \
 
51
      'License (LGPL)',
 
52
      'Operating System :: POSIX',
 
53
      'Programming Language :: Python',
 
54
      'Topic :: Software Development :: Libraries :: Python Modules',
 
55
  ],
 
56
}
 
57
 
 
58
PACKAGES = {}
 
59
PACKAGE_DATA = {}
 
60
    
 
61
def get_package_data():
 
62
    """ Run a recursive search through glitter/data and fetch package data to 
 
63
    be used by the distutils setup
 
64
    """
 
65
    
 
66
    package_data = []
 
67
    base_path = os.path.join(
 
68
                  os.path.dirname(os.path.abspath(glitter.__file__)),
 
69
                  'data'
 
70
                )
 
71
    for root, dirs, files in os.walk(base_path):
 
72
        data_path = root[len(base_path):]
 
73
        if not data_path:
 
74
            data_path = 'data'
 
75
        else:
 
76
            data_path = ('data' + data_path)
 
77
        for f in files:
 
78
            ext = os.path.splitext(f)[1]
 
79
            if ext in ['.py', '.conf', '.svg', '.json']:
 
80
                data = data_path + '/*' + ext
 
81
                if not data in package_data:
 
82
                    package_data.append(data)
 
83
    
 
84
    return sorted(package_data)
 
85
    
 
86
 
 
87
PACKAGES['packages'] = ['glitter', 'glitter.tests']
 
88
PACKAGE_DATA['package_data'] = {'glitter': get_package_data()}
 
89
      
 
90
KWARGS = {}
 
91
KWARGS.update(META_DATA)
 
92
KWARGS.update(PACKAGES)
 
93
KWARGS.update(PACKAGE_DATA)
 
94
 
 
95
#print KWARGS
 
96
setup(**KWARGS)
 
97