2007-04-03 06:10:36 +00:00
"""
Setup script for Gaphor .
Run ' python setup.py develop ' to set up a development environment , including
dependencies .
Run ' python setup.py run ' to start Gaphor directly ( without install ) .
"""
2003-03-04 05:08:40 +00:00
2007-04-17 05:58:06 +00:00
VERSION = ' 0.10.5 '
2007-04-03 07:17:35 +00:00
2007-05-22 09:34:30 +00:00
import os
2007-03-15 13:41:24 +00:00
import sys
sys . path . insert ( 0 , ' . ' )
2003-03-04 05:08:40 +00:00
2007-03-15 13:41:24 +00:00
from ez_setup import use_setuptools
2003-03-04 05:08:40 +00:00
2007-03-15 13:41:24 +00:00
use_setuptools ( )
2006-06-02 09:37:25 +00:00
2007-03-15 13:41:24 +00:00
from setuptools import setup , find_packages
2007-05-22 09:34:30 +00:00
from distutils . cmd import Command
2006-05-29 12:49:01 +00:00
2007-02-28 14:09:17 +00:00
from utils . command . build_mo import build_mo
from utils . command . build_pot import build_pot
from utils . command . build_uml import build_uml
2007-04-05 07:49:30 +00:00
from utils . command . install_lib import install_lib
2007-02-28 14:09:17 +00:00
from utils . command . run import run
2003-03-04 05:08:40 +00:00
2007-03-15 13:41:24 +00:00
LINGUAS = [ ' ca ' , ' es ' , ' nl ' , ' sv ' ]
2004-03-22 15:15:14 +00:00
2007-05-22 09:34:30 +00:00
class build_doc ( Command ) :
description = ' Builds the documentation '
user_options = [ ]
def initialize_options ( self ) :
pass
def finalize_options ( self ) :
pass
def run ( self ) :
# from docutils.core import publish_cmdline
# docutils_conf = os.path.join('doc', 'docutils.conf')
epydoc_conf = os . path . join ( ' doc ' , ' epydoc.conf ' )
# for source in glob('doc/*.txt'):
# dest = os.path.splitext(source)[0] + '.html'
# if not os.path.exists(dest) or \
# os.path.getmtime(dest) < os.path.getmtime(source):
# print 'building documentation file %s' % dest
# publish_cmdline(writer_name='html',
# argv=['--config=%s' % docutils_conf, source,
# dest])
try :
from epydoc import cli
old_argv = sys . argv [ 1 : ]
sys . argv [ 1 : ] = [
' --config= %s ' % epydoc_conf ,
' --no-private ' , # epydoc bug, not read from config
' --simple-term ' ,
' --verbose '
]
cli . cli ( )
sys . argv [ 1 : ] = old_argv
except ImportError :
print ' epydoc not installed, skipping API documentation. '
2004-09-27 06:37:00 +00:00
2007-03-15 13:41:24 +00:00
setup (
name = ' gaphor ' ,
2007-04-03 07:17:35 +00:00
version = VERSION ,
2007-04-04 06:56:22 +00:00
url = ' http://gaphor.devjavu.com ' ,
2007-03-15 13:41:24 +00:00
author = ' Arjan J. Molenaar ' ,
author_email = ' arjanmol@users.sourceforge.net ' ,
license = ' GNU General Public License ' ,
description = ' Gaphor is a UML modeling tool ' ,
long_description = " Gaphor is a UML modeling tool written in Python. "
" It uses the GTK+ environment for user interaction. " ,
classifiers = [
' Development Status :: 4 - Beta ' ,
' Environment :: X11 Applications :: GTK ' ,
' Intended Audience :: Developers ' ,
' Intended Audience :: End Users/Desktop ' ,
' Intended Audience :: Information Technology ' ,
' License :: OSI Approved :: GNU General Public License (GPL) ' ,
' Operating System :: MacOS :: MacOS X ' ,
' Operating System :: Microsoft :: Windows ' ,
' Operating System :: POSIX ' ,
' Operating System :: Unix ' ,
' Programming Language :: Python ' ,
' Topic :: Multimedia :: Graphics :: Editors :: Vector-Based ' ,
' Topic :: Software Development :: Documentation ' ,
] ,
2007-04-04 06:56:22 +00:00
keywords = ' model modeling modelling uml diagram python tool ' ,
2007-03-15 13:41:24 +00:00
2007-04-04 06:56:22 +00:00
packages = find_packages ( exclude = [ ' ez_setup ' , ' utils* ' ] ) ,
2007-03-15 13:41:24 +00:00
2007-04-04 06:56:22 +00:00
include_package_data = True ,
2007-03-15 13:41:24 +00:00
install_requires = [
# 'PyGTK >= 2.8.0', - Exclude, since it will not build anyway
' decorator >= 2.0.1 ' ,
2007-04-25 06:22:43 +00:00
' gaphas >= 0.1.5.dev-r1236 ' ,
2007-03-15 13:41:24 +00:00
' zope.component >= 3.3.0 ' , # - won't compile on windows.
2007-04-11 06:42:22 +00:00
# Add dependency on zope.testing to work around bug in zope.component
' zope.testing >= 3.3.0 ' ,
2007-03-15 13:41:24 +00:00
] ,
zip_safe = False ,
#test_suite = 'nose.collector',
entry_points = {
' console_scripts ' : [
' gaphor = gaphor:main ' ,
] ,
2007-04-03 06:10:36 +00:00
' gaphor.services ' : [
2007-05-11 07:03:20 +00:00
' adapter_loader = gaphor.services.adapterloader:AdapterLoader ' ,
2007-04-15 20:47:55 +00:00
' properties = gaphor.services.properties:Properties ' ,
2007-04-03 06:10:36 +00:00
' undo_manager = gaphor.services.undomanager:UndoManager ' ,
2007-04-20 09:02:47 +00:00
' element_factory = gaphor.UML.elementfactory:ElementFactory ' ,
2007-05-10 09:34:06 +00:00
' file_manager = gaphor.services.filemanager:FileManager ' ,
2007-05-23 11:25:48 +00:00
' diagram_export_manager = gaphor.services.diagramexportmanager:DiagramExportManager ' ,
2007-05-11 12:57:00 +00:00
' action_manager = gaphor.services.actionmanager:ActionManager ' ,
2007-05-23 11:25:48 +00:00
' gui_manager = gaphor.services.guimanager:GUIManager ' ,
2007-05-15 03:43:33 +00:00
' help = gaphor.services.helpservice:HelpService ' ,
2007-05-23 06:40:17 +00:00
' copy = gaphor.services.copyservice:CopyService ' ,
2007-06-11 09:40:30 +00:00
' xmi_export = gaphor.plugins.xmiexport:XMIExport ' ,
2007-06-11 11:15:48 +00:00
' diagram_layout = gaphor.plugins.diagramlayout:DiagramLayout ' ,
' pynsource = gaphor.plugins.pynsource:PyNSource ' ,
2007-06-11 12:34:44 +00:00
' check_metamodel = gaphor.plugins.checkmetamodel:CheckModelWindow ' ,
2007-04-11 06:42:22 +00:00
] ,
2007-05-08 10:24:46 +00:00
' gaphor.uicomponents ' : [
' mainwindow = gaphor.ui.mainwindow:MainWindow ' ,
' consolewindow = gaphor.ui.consolewindow:ConsoleWindow ' ,
2007-04-03 06:10:36 +00:00
] ,
2007-05-14 13:04:40 +00:00
' distutils.commands ' : [
' nosetests = nose.commands:nosetests ' ,
] ,
2007-03-15 13:41:24 +00:00
} ,
cmdclass = {
' build_uml ' : build_uml ,
' build_mo ' : build_mo ,
' build_pot ' : build_pot ,
2007-05-22 09:34:30 +00:00
' build_doc ' : build_doc ,
2007-05-14 13:04:40 +00:00
' install_lib ' : install_lib ,
2007-03-15 13:41:24 +00:00
' run ' : run ,
} ,
2007-05-14 13:04:40 +00:00
setup_requires = ' nose >= 0.9.2 ' ,
test_suite = ' nose.collector ' ,
2007-03-15 13:41:24 +00:00
options = dict (
py2app = dict (
includes = [ ' atk ' , ' pango ' , ' cairo ' , ' pangocairo ' ] ,
2006-06-02 09:37:25 +00:00
# CFBundleDisplayName='Gaphor',
# CFBundleIdentifier='net.sourceforge.gaphor'
2007-03-15 13:41:24 +00:00
) ,
build_pot = dict (
all_linguas = ' , ' . join ( LINGUAS ) ,
) ,
build_mo = dict (
all_linguas = ' , ' . join ( LINGUAS ) ,
) ,
)
2003-03-04 05:08:40 +00:00
)
2007-05-14 13:04:40 +00:00
2007-05-15 03:43:33 +00:00
# vim:sw=4:et:ai