-
Notifications
You must be signed in to change notification settings - Fork 6
Expand file tree
/
Copy pathsetup.py
More file actions
98 lines (89 loc) · 2.72 KB
/
setup.py
File metadata and controls
98 lines (89 loc) · 2.72 KB
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
from setuptools import Extension, setup
from glob import glob
import os
sources = glob('openudm/*.cpp') + glob('openudm/*.i')
py_modules = ['CellularModel', 'RasterToolkit', 'MultiCriteriaEval', 'DevZones']
if os.name == 'nt':
cxxflags = {'gcc': ['/Qstd=c99']}
else:
cxxflags = ['-Wall', '-std=c++11', '-pedantic']
headers = glob('openudm/*.h')
ext_modules = [
Extension(
'openudm._CellularModel',
extra_compile_args = cxxflags,
sources=[
'openudm/CellularModel.i',
'openudm/CellularModel.cpp',
# list anything included (may be a better way?)
'openudm/CSVToolkit.cpp',
'openudm/Raster.cpp',
'openudm/UDMCell.cpp',
'openudm/UDMWard.cpp',
'openudm/UDMZone.cpp',
],
depends=headers,
swig_opts=['-c++']
),
Extension(
'openudm._DevZones',
extra_compile_args = cxxflags,
sources=[
'openudm/DevZones.i',
'openudm/DevZones.cpp',
# list includes
'openudm/CSVToolkit.cpp',
'openudm/Raster.cpp',
],
depends=headers,
swig_opts=['-c++']
),
Extension(
'openudm._MultiCriteriaEval',
extra_compile_args = cxxflags,
sources=[
'openudm/MultiCriteriaEval.i',
'openudm/MultiCriteriaEval.cpp',
# list includes
'openudm/CSVToolkit.cpp',
'openudm/Raster.cpp',
],
depends=headers,
swig_opts=['-c++']
),
Extension(
'openudm._RasterToolkit',
extra_compile_args = cxxflags,
sources=[
'openudm/RasterToolkit.i',
'openudm/RasterToolkit.cpp',
# list includes
'openudm/CSVToolkit.cpp',
'openudm/Raster.cpp',
],
depends=headers,
swig_opts=['-c++']
)
]
def readme():
with open('README.md') as f:
return f.read()
setup(
name='openudm',
version='6.0.0',
author='James Virgo',
description='Urban Development Model',
long_description=readme(),
long_description_content_type="text/markdown",
packages=['openudm'],
ext_modules=ext_modules,
entry_points={'console_scripts':
['raster_to_vector=openudm.tools:output_raster_to_vector',
'generate_urban_fabric=openudm.UrbanFabricGenerator:urban_fabric_generator_entrypoint',
'ufg_coverage=openudm.UFGCoverageFromDensity:ufg_coverage_from_density_entrypoint',
'ufg_fabric=openudm.UFGFabricFromCoverage:ufg_fabric_from_coverage_entrypoint'
]},
package_data={
"openudm": ["Tiles/*"]
}
)