forked from ebroecker/canmatrix
-
Notifications
You must be signed in to change notification settings - Fork 0
/
setup.py
127 lines (95 loc) · 3.34 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
117
118
119
120
121
122
123
124
125
126
127
"""
Support and convert several CAN (Controller Area Network) database formats .arxml .dbc .dbf .kcd .sym fibex xls(x) ...
Canmatrix implements a "Python Can Matrix Object" which describes the can-communication
and the needed objects (Boardunits, Frames, Signals, Values, ...) Canmatrix also includes
two Tools (canconvert and cancompare) for converting and comparing CAN databases.
There are also some extract and merge options for dealing with can databases.
**supported file formats for import:**
.dbc candb / Vector
.dbf Busmaster (open source!)
.kcd kayak (open source!)
.arxml autosar system description
.yaml dump of the python object
.xls(x) excel xls-import, works with .xls-file generated by this lib
.sym peak pcan can description
.xml (fibex)
.ldf (lin bus)
.odx (diagnostic file)
**supported file formats for export:**
.dbc
.dbf
.kcd
.xls(x)
.json Canard (open source!)
.arxml (very basic implementation)
.yaml (dump of the python object)
.sym
.xml (fibex)
.lua (wireshark script)
.scapy
"""
classifiers = """\
Development Status :: 4 - Beta
Environment :: Console
License :: OSI Approved :: BSD License
Topic :: Scientific/Engineering
Programming Language :: Python
Programming Language :: Python :: 2.7
Programming Language :: Python :: 3.4
Programming Language :: Python :: 3.5
Programming Language :: Python :: 3.6
Programming Language :: Python :: 3.7
Programming Language :: Python :: 3.8
Programming Language :: Python :: 3.9
Programming Language :: Python :: 3.10
Programming Language :: Python :: 3.11
"""
from setuptools import find_packages, setup
import versioneer
doclines = __doc__.split("\n")
setup(
name = "canmatrix",
version = versioneer.get_version(),
cmdclass = versioneer.get_cmdclass(),
maintainer = "Eduard Broecker",
maintainer_email = "eduard@gmx.de",
url = "http://github.com/ebroecker/canmatrix",
classifiers = list(filter(None, classifiers.split("\n"))),
description = doclines[0],
keywords = "CAN dbc arxml kcd dbf sym",
long_description = "\n".join(doclines[2:]),
license = "BSD",
platforms = ["any"],
install_requires = [
"attrs>=19.2.0",
"click",
"enum34; python_version < '3.4'",
"future",
"importlib-metadata; python_version < '3.8'",
"six",
"typing; python_version < '3.5'",
],
extras_require = {
"arxml": ["lxml"],
"csv": [],
"dbc": [],
"dbf": [],
"fibex": ["lxml"],
"json": [],
"kcd": ["lxml"],
"ldf": ["ldfparser"],
"odx": ["lxml"],
"scapy": [],
"sym": [],
"test": ["pathlib2; python_version < '3.4'", "pytest"],
"wireshark": [],
"xls": ["xlrd==1.2.0", "xlwt"],
"xlsx": ["openpyxl"],
"yaml": ["pyyaml"],
},
packages = find_packages("src"),
package_dir = {"": "src"},
package_data = {"canmatrix" : ["tests/*.dbc", "tests/*.arxml", "j1939.dbc"]},
entry_points={'console_scripts': ['cancompare = canmatrix.cli.compare:cli_compare',
'canconvert = canmatrix.cli.convert:cli_convert']}
)