forked from andete/madparts
-
Notifications
You must be signed in to change notification settings - Fork 0
/
setup.py
116 lines (107 loc) · 3.66 KB
/
setup.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
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
#!/usr/bin/env python
#
# (c) 2013-2015 Joost Yervante Damad <joost@damad.be>
# License: GPL
from main.version import VERSION
import glob, sys, platform
from setuptools import setup
with open('README.md') as file:
long_description = file.read()
arch = platform.uname()[4]
extra_data_files = []
if sys.platform == 'darwin':
OPTIONS = {
'argv_emulation': True,
#'includes': ['sip', 'PyQt4', 'PyQt4.QtCore', 'PyQt4.QtGui', 'simplejson'],
#'excludes': ['PyQt4.QtDesigner', 'PyQt4.QtNetwork', 'PyQt4.QtOpenGL', 'PyQt4.QtScript', 'PyQt4.QtSql', 'PyQt4.QtTest', 'PyQt4.QtWebKit', 'PyQt4.QtXml', 'PyQt4.phonon'],
#'extra_scripts': ['madparts-cli', 'madparts-import']
}
extra_options = dict(
setup_requires=['py2app'],
app=['madparts'],
# Cross-platform applications generally expect sys.argv to
# be used for opening files.
options=dict(py2app=OPTIONS),
)
elif sys.platform == 'win32':
import py2exe
OPTIONS = {
'includes': [
"OpenGL.arrays._buffers",
"OpenGL.arrays._numeric",
"OpenGL.arrays._strings",
"OpenGL.arrays.arraydatatype",
"OpenGL.arrays.arrayhelpers",
"OpenGL.arrays.buffers",
"OpenGL.arrays.ctypesarrays",
"OpenGL.arrays.ctypesparameters",
"OpenGL.arrays.ctypespointers",
"OpenGL.arrays.formathandler",
"OpenGL.arrays.lists",
"OpenGL.arrays.nones",
"OpenGL.arrays.numbers",
"OpenGL.arrays.numeric",
"OpenGL.arrays.numericnames",
"OpenGL.arrays.numpymodule",
"OpenGL.arrays.strings",
"OpenGL.arrays.vbo",
"OpenGL.platform.ctypesloader",
"OpenGL.platform.win32",
"OpenGL_accelerate.formathandler",
"OpenGL_accelerate.arraydatatype",
"OpenGL_accelerate.errorchecker",
"OpenGL_accelerate.latebind",
"OpenGL_accelerate.nones_formathandler",
"OpenGL_accelerate.numpy_formathandler",
"OpenGL_accelerate.vbo",
"OpenGL_accelerate.wrapper",
]
}
extra_data_files = ['msvcp90.dll',]
extra_options = dict(
setup_requires=['py2exe'],
console=['madparts', 'madparts-cli', 'madparts-import'],
options=dict(py2exe=OPTIONS)
)
elif sys.platform.startswith('linux'):
extra_options = dict(
# Normally unix-like platforms will use "setup.py install"
# and install the main script as such
scripts=['madparts', 'madparts-cli', 'madparts-import'],
)
if not arch in ['x86_64']:
raise Exception("unsupported arch %s" % (arch))
else:
raise Exception("unsupported platform %s" % (sys.platform))
setup(
name = 'madparts',
description = 'a functional footprint editor',
long_description = long_description,
author = 'Joost Yervante Damad',
author_email = 'joost@damad.be',
version = VERSION,
url = 'http://madparts.org/',
packages = [
'coffee',
'export',
'gui',
'inter',
'main',
'syntax',
'mutil',
],
package_data= {
'gui': [
'../COPYING', '../README.md', # dirty trick ;)
],
},
data_files = [
('share/madparts/examples', glob.glob('examples/*.coffee')),
('share/madparts/grind', glob.glob('grind/*.coffee')),
('share/madparts/coffeescript', ['coffeescript/LICENSE', 'coffeescript/README'] + glob.glob('coffeescript/*.js')),
('share/madparts/shaders', glob.glob('shaders/*.vert') + glob.glob('shaders/*.frag')),
('share/madparts/gui', ['gui/freefont.COPYING', 'gui/FreeMonoBold.ttf'] ),
] + extra_data_files,
platforms = ["Windows", "Linux", "Mac OS-X"],
**extra_options
)