3 from setuptools import setup
7 # Shamelessly cribbed from django's setup.py file.
8 def fullsplit(path, result=None):
10 Split a pathname into components (the opposite of os.path.join) in a
15 head, tail = os.path.split(path)
17 return [tail] + result
20 return fullsplit(head, [tail] + result)
22 # Compile the list of packages available, because distutils doesn't have
23 # an easy way to do this. Shamelessly cribbed from django's setup.py file.
24 packages, data_files = [], []
25 root_dir = os.path.dirname(__file__)
30 for dirpath, dirnames, filenames in os.walk(philo_dir):
31 # Ignore dirnames that start with '.'
32 for i, dirname in enumerate(dirnames):
33 if dirname.startswith('.'): del dirnames[i]
34 if '__init__.py' in filenames:
35 packages.append('.'.join(fullsplit(dirpath)))
37 data_files.append([dirpath, [os.path.join(dirpath, f) for f in filenames]])
40 version = __import__('philo').VERSION
44 version = '.'.join([str(v) for v in version]),
45 url = "http://philocms.org/",
46 description = "A foundation for developing web content management systems.",
47 long_description = open(os.path.join(root_dir, 'README')).read(),
48 maintainer = "iThink Software",
49 maintainer_email = "contact@ithinksw.com",
51 data_files = data_files,
54 'Environment :: Web Environment',
55 'Framework :: Django',
56 'Intended Audience :: Developers',
57 'License :: OSI Approved :: ISC License (ISCL)',
58 'Operating System :: OS Independent',
59 'Programming Language :: Python',
60 'Topic :: Internet :: WWW/HTTP :: Dynamic Content',
61 'Topic :: Software Development :: Libraries :: Application Frameworks',
63 platforms = ['OS Independent'],
64 license = 'ISC License (ISCL)',
69 'django-mptt>0.4.2,==dev',
72 'docs': ["sphinx>=1.0"],
73 'grappelli': ['django-grappelli>=2.3'],
74 'migrations': ['south>=0.7.2'],
75 'waldo-recaptcha': ['recaptcha-django'],
76 'sobol-eventlet': ['eventlet'],
77 'sobol-scrape': ['BeautifulSoup'],
80 'https://github.com/django-mptt/django-mptt/tarball/master#egg=django-mptt-dev'