-
Notifications
You must be signed in to change notification settings - Fork 21
Expand file tree
/
Copy pathsetup.py
More file actions
103 lines (88 loc) · 2.66 KB
/
Copy pathsetup.py
File metadata and controls
103 lines (88 loc) · 2.66 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
99
100
101
102
103
# -*- coding: UTF-8 -*-
#! /usr/bin/python
from pathlib import Path
from importlib import util
from setuptools import find_packages
from numpy.distutils.core import setup
from numpy.distutils.core import Extension
# ...
# Load module 'psydac.version' without running file 'psydac.__init__'
path = Path(__file__).parent / 'psydac' / 'version.py'
spec = util.spec_from_file_location('version', str(path))
mod = util.module_from_spec(spec)
spec.loader.exec_module(mod)
# ...
NAME = 'psydac'
VERSION = mod.__version__
AUTHOR = 'Ahmed Ratnani, Jalal Lakhlili, Yaman Güçlü, Said Hadjout'
EMAIL = 'ratnaniahmed@gmail.com'
URL = 'http://www.ahmed.ratnani.org'
DESCR = 'Python package for BSplines/NURBS'
KEYWORDS = ['FEM', 'IGA', 'BSplines']
LICENSE = "LICENSE.txt"
setup_args = dict(
name = NAME,
version = VERSION,
description = DESCR,
long_description = open('README.md').read(),
author = AUTHOR,
author_email = EMAIL,
license = LICENSE,
keywords = KEYWORDS,
url = URL,
# download_url = URL+'/get/default.tar.gz',
)
# ...
packages = find_packages()
#packages = find_packages(exclude=["*.tests", "*.tests.*", "tests.*", "tests"])
# ...
# ...
install_requires = [
# Third-party packages from PyPi
'numpy>=1.16',
'scipy>=0.18',
'sympy>=1.5',
'matplotlib',
'pytest>=4.5',
'pyyaml>=5.1',
'packaging',
'pyevtk',
# Our packages from PyPi
'sympde @ git+https://github.com/pyccel/sympde@logical_n_physical-coordinates-2',
'pyccel>=1.7.3',
'gelato==0.11',
# Alternative backend to Pyccel is Numba
'numba',
# In addition, we depend on mpi4py and h5py (MPI version).
# Since h5py must be built from source, we run the commands
#
# python3 -m pip install requirements.txt
# python3 -m pip install .
'mpi4py',
'h5py',
# When pyccel is run in parallel with MPI, it uses tblib to pickle
# tracebacks, which allows mpi4py to broadcast exceptions
'tblib',
# IGAKIT - not on PyPI
'igakit',
]
dependency_links = []
# ...
# ...
entry_points = {'console_scripts': ['psydac-mesh = psydac.cmd.mesh:main']}
# ...
# ...
def setup_package():
setup(packages=packages,
python_requires='>=3.7',
install_requires=install_requires,
include_package_data=True,
package_data = {'':['*.txt']},
zip_safe=True,
dependency_links=dependency_links,
entry_points=entry_points,
**setup_args)
# ....
# ..................................................................................
if __name__ == "__main__":
setup_package()