forked from ilastik/ilastik
-
Notifications
You must be signed in to change notification settings - Fork 0
/
setup_mac.py
executable file
·79 lines (66 loc) · 2.29 KB
/
setup_mac.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
# Setup script that uses py2app to generate a redistributable binary from an existing ilastik build.
# To run: python setup_mac.py py2app
from setuptools import setup, find_packages
from ilastik import __version__
APP = ['ilastik.py']
DATA_FILES = []
includes = [\
'h5py', 'h5py.defs', 'h5py.utils', 'h5py._proxy', 'h5py._errors',
'PyQt4.pyqtconfig', 'PyQt4.uic','PyQt4.QtCore','PyQt4.QtGui',
'site', 'os',
'vtk',
'vtk.vtkCommonPythonSIP',
]
OPTIONS = {'argv_emulation': True, 'includes':includes, 'iconfile' : 'appIcon.icns' }
packages=find_packages(exclude=["tests", "tests.*"])
package_data={'ilastik': ['ilastik-splash.png',
'ilastik-splash.xcf'],
'ilastik.applets.dataSelection': ['*.ui'],
'ilastik.applets.labeling': ['*.ui', 'icons/*.png', 'icons/*.jpg'],
'ilastik.shell.gui': ['ui/*.ui', '*.qss'],
'ilastik.ilastik_logging': ['logging_config.json'],
'ilastik.plugins': ['*.yapsy-plugin'],
'': ['*.ui']
}
class ilastik_recipe(object):
def check(self, dist, mf):
m = mf.findNode('ilastik')
if m is None:
return None
# Don't put ilastik in the site-packages.zip file
return dict(
packages=['ilastik']
)
class volumina_recipe(object):
def check(self, dist, mf):
m = mf.findNode('volumina')
if m is None:
return None
# Don't put volumina in the site-packages.zip file
return dict(
packages=['volumina']
)
class vtk_recipe(object):
def check(self, dist, mf):
m = mf.findNode('vtk')
if m is None:
return None
# Don't put vtk in the site-packages.zip file
return dict(
packages=['vtk']
)
import py2app.recipes
py2app.recipes.ilastik = ilastik_recipe()
py2app.recipes.volumina = volumina_recipe()
py2app.recipes.vtk = vtk_recipe()
setup(
app=APP,
data_files=DATA_FILES,
options={'py2app': OPTIONS},
setup_requires=['py2app'],
version=__version__,
description='Interactive Image Analysis',
url='http://github.com/ilastik',
packages=packages,
package_data=package_data
)