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
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
|
%global _empty_manifest_terminate_build 0
Name: python-pyocd
Version: 0.34.3
Release: 1
Summary: Cortex-M debugger for Python
License: Apache 2.0
URL: https://github.com/pyocd/pyOCD
Source0: https://mirrors.nju.edu.cn/pypi/web/packages/8a/7d/6f9e9d6748877a8746f1b4c0354ea25cf8d3380a02fba031bb2360b181f4/pyocd-0.34.3.tar.gz
BuildArch: noarch
Requires: python3-capstone
Requires: python3-cmsis-pack-manager
Requires: python3-colorama
Requires: python3-intelhex
Requires: python3-intervaltree
Requires: python3-libusb-package
Requires: python3-natsort
Requires: python3-prettytable
Requires: python3-pyelftools
Requires: python3-pylink-square
Requires: python3-pyusb
Requires: python3-pyyaml
Requires: python3-six
Requires: python3-typing-extensions
Requires: python3-hidapi
Requires: python3-dataclasses
Requires: python3-pyocd-pemicro
Requires: python3-pytest
Requires: python3-pytest-cov
Requires: python3-coverage
Requires: python3-flake8
Requires: python3-pylint
Requires: python3-tox
%description
[\[pyocd.io\]](https://pyocd.io/) [\[Docs\]](https://pyocd.io/docs) [\[Slack\]](https://join.slack.com/t/pyocd/shared_invite/zt-wmy3zvg5-nRLj1GBWYh708TVfIx9Llg) [\[Mailing list\]](https://groups.google.com/g/pyocd) [\[CI results\]](https://dev.azure.com/pyocd/pyocd/_build?definitionId=1&_a=summary)
<table><tr><td>
### News
- A new CI pipeline for functional tests is now running on a new test farm. Full results are [publicly
accessible](https://dev.azure.com/pyocd/pyocd/_build?definitionId=1&_a=summary) on Azure Pipelines.
- pyOCD has several new community resources: the [pyocd.io](https://pyocd.io/) website,
a [Slack workspace](https://join.slack.com/t/pyocd/shared_invite/zt-zqjv6zr5-ZfGAXl_mFCGGmFlB_8riHA),
and a [mailing list](https://groups.google.com/g/pyocd) for announcements.
- Branch configuration changes: the default branch `master` has been renamed to `main`, and a `develop` branch has been added to be used for active development. New pull requests should generally target `develop`. See [this discussion](https://github.com/pyocd/pyOCD/discussions/1169) for more information about this change.
See the [wiki news page](https://github.com/pyocd/pyOCD/wiki/News) for all recent news.
</td></tr></table>
pyOCD is an open source Python based tool and package for programming and debugging Arm Cortex-M microcontrollers
with a wide range of debug probes. It is fully cross-platform, with support for Linux, macOS, Windows, and FreeBSD.
A command line tool is provided that covers most use cases, or you can make use of the Python
API to facilitate custom target control. A common use for the Python API is to run and control CI
tests.
Support for more than 70 popular MCUs is built-in. In addition, through the use of CMSIS Device
Family Packs, [nearly every Cortex-M device](https://www.keil.com/dd2/pack/) on the market is supported.
The `pyocd` command line tool gives you total control over your device with these subcommands:
- `gdbserver`: GDB remote server allows you to debug using gdb via either the console or
[several GUI debugger options](https://pyocd.io/docs/gdb_setup).
- `load`: Program files of various formats into flash or RAM.
- `erase`: Erase part or all of an MCU's flash memory.
- `pack`: Manage [CMSIS Device Family Packs](https://open-cmsis-pack.github.io/Open-CMSIS-Pack-Spec/main/html/index.html)
that provide additional target device support.
- `commander`: Interactive REPL control and inspection of the MCU.
- `server`: Share a debug probe with a TCP/IP server.
- `reset`: Hardware or software reset of a device.
- `rtt`: Stream Segger RTT IO with _any_ debug probe.
- `list`: Show connected devices.
The API and tools provide these features:
- halt, step, resume control
- read/write memory
- read/write core registers
- set/remove hardware and software breakpoints
- set/remove watchpoints
- write to flash memory
- load binary, hex, or ELF files into flash
- reset control
- access CoreSight DP and APs
- SWO and SWV
- and more!
Configuration and customization is supported through [config files](https://pyocd.io/docs/configuration),
[user scripts](https://pyocd.io/docs/user_scripts), and the Python API.
%package -n python3-pyocd
Summary: Cortex-M debugger for Python
Provides: python-pyocd
BuildRequires: python3-devel
BuildRequires: python3-setuptools
BuildRequires: python3-pip
%description -n python3-pyocd
[\[pyocd.io\]](https://pyocd.io/) [\[Docs\]](https://pyocd.io/docs) [\[Slack\]](https://join.slack.com/t/pyocd/shared_invite/zt-wmy3zvg5-nRLj1GBWYh708TVfIx9Llg) [\[Mailing list\]](https://groups.google.com/g/pyocd) [\[CI results\]](https://dev.azure.com/pyocd/pyocd/_build?definitionId=1&_a=summary)
<table><tr><td>
### News
- A new CI pipeline for functional tests is now running on a new test farm. Full results are [publicly
accessible](https://dev.azure.com/pyocd/pyocd/_build?definitionId=1&_a=summary) on Azure Pipelines.
- pyOCD has several new community resources: the [pyocd.io](https://pyocd.io/) website,
a [Slack workspace](https://join.slack.com/t/pyocd/shared_invite/zt-zqjv6zr5-ZfGAXl_mFCGGmFlB_8riHA),
and a [mailing list](https://groups.google.com/g/pyocd) for announcements.
- Branch configuration changes: the default branch `master` has been renamed to `main`, and a `develop` branch has been added to be used for active development. New pull requests should generally target `develop`. See [this discussion](https://github.com/pyocd/pyOCD/discussions/1169) for more information about this change.
See the [wiki news page](https://github.com/pyocd/pyOCD/wiki/News) for all recent news.
</td></tr></table>
pyOCD is an open source Python based tool and package for programming and debugging Arm Cortex-M microcontrollers
with a wide range of debug probes. It is fully cross-platform, with support for Linux, macOS, Windows, and FreeBSD.
A command line tool is provided that covers most use cases, or you can make use of the Python
API to facilitate custom target control. A common use for the Python API is to run and control CI
tests.
Support for more than 70 popular MCUs is built-in. In addition, through the use of CMSIS Device
Family Packs, [nearly every Cortex-M device](https://www.keil.com/dd2/pack/) on the market is supported.
The `pyocd` command line tool gives you total control over your device with these subcommands:
- `gdbserver`: GDB remote server allows you to debug using gdb via either the console or
[several GUI debugger options](https://pyocd.io/docs/gdb_setup).
- `load`: Program files of various formats into flash or RAM.
- `erase`: Erase part or all of an MCU's flash memory.
- `pack`: Manage [CMSIS Device Family Packs](https://open-cmsis-pack.github.io/Open-CMSIS-Pack-Spec/main/html/index.html)
that provide additional target device support.
- `commander`: Interactive REPL control and inspection of the MCU.
- `server`: Share a debug probe with a TCP/IP server.
- `reset`: Hardware or software reset of a device.
- `rtt`: Stream Segger RTT IO with _any_ debug probe.
- `list`: Show connected devices.
The API and tools provide these features:
- halt, step, resume control
- read/write memory
- read/write core registers
- set/remove hardware and software breakpoints
- set/remove watchpoints
- write to flash memory
- load binary, hex, or ELF files into flash
- reset control
- access CoreSight DP and APs
- SWO and SWV
- and more!
Configuration and customization is supported through [config files](https://pyocd.io/docs/configuration),
[user scripts](https://pyocd.io/docs/user_scripts), and the Python API.
%package help
Summary: Development documents and examples for pyocd
Provides: python3-pyocd-doc
%description help
[\[pyocd.io\]](https://pyocd.io/) [\[Docs\]](https://pyocd.io/docs) [\[Slack\]](https://join.slack.com/t/pyocd/shared_invite/zt-wmy3zvg5-nRLj1GBWYh708TVfIx9Llg) [\[Mailing list\]](https://groups.google.com/g/pyocd) [\[CI results\]](https://dev.azure.com/pyocd/pyocd/_build?definitionId=1&_a=summary)
<table><tr><td>
### News
- A new CI pipeline for functional tests is now running on a new test farm. Full results are [publicly
accessible](https://dev.azure.com/pyocd/pyocd/_build?definitionId=1&_a=summary) on Azure Pipelines.
- pyOCD has several new community resources: the [pyocd.io](https://pyocd.io/) website,
a [Slack workspace](https://join.slack.com/t/pyocd/shared_invite/zt-zqjv6zr5-ZfGAXl_mFCGGmFlB_8riHA),
and a [mailing list](https://groups.google.com/g/pyocd) for announcements.
- Branch configuration changes: the default branch `master` has been renamed to `main`, and a `develop` branch has been added to be used for active development. New pull requests should generally target `develop`. See [this discussion](https://github.com/pyocd/pyOCD/discussions/1169) for more information about this change.
See the [wiki news page](https://github.com/pyocd/pyOCD/wiki/News) for all recent news.
</td></tr></table>
pyOCD is an open source Python based tool and package for programming and debugging Arm Cortex-M microcontrollers
with a wide range of debug probes. It is fully cross-platform, with support for Linux, macOS, Windows, and FreeBSD.
A command line tool is provided that covers most use cases, or you can make use of the Python
API to facilitate custom target control. A common use for the Python API is to run and control CI
tests.
Support for more than 70 popular MCUs is built-in. In addition, through the use of CMSIS Device
Family Packs, [nearly every Cortex-M device](https://www.keil.com/dd2/pack/) on the market is supported.
The `pyocd` command line tool gives you total control over your device with these subcommands:
- `gdbserver`: GDB remote server allows you to debug using gdb via either the console or
[several GUI debugger options](https://pyocd.io/docs/gdb_setup).
- `load`: Program files of various formats into flash or RAM.
- `erase`: Erase part or all of an MCU's flash memory.
- `pack`: Manage [CMSIS Device Family Packs](https://open-cmsis-pack.github.io/Open-CMSIS-Pack-Spec/main/html/index.html)
that provide additional target device support.
- `commander`: Interactive REPL control and inspection of the MCU.
- `server`: Share a debug probe with a TCP/IP server.
- `reset`: Hardware or software reset of a device.
- `rtt`: Stream Segger RTT IO with _any_ debug probe.
- `list`: Show connected devices.
The API and tools provide these features:
- halt, step, resume control
- read/write memory
- read/write core registers
- set/remove hardware and software breakpoints
- set/remove watchpoints
- write to flash memory
- load binary, hex, or ELF files into flash
- reset control
- access CoreSight DP and APs
- SWO and SWV
- and more!
Configuration and customization is supported through [config files](https://pyocd.io/docs/configuration),
[user scripts](https://pyocd.io/docs/user_scripts), and the Python API.
%prep
%autosetup -n pyocd-0.34.3
%build
%py3_build
%install
%py3_install
install -d -m755 %{buildroot}/%{_pkgdocdir}
if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
pushd %{buildroot}
if [ -d usr/lib ]; then
find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/lib64 ]; then
find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/bin ]; then
find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/sbin ]; then
find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
fi
touch doclist.lst
if [ -d usr/share/man ]; then
find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
fi
popd
mv %{buildroot}/filelist.lst .
mv %{buildroot}/doclist.lst .
%files -n python3-pyocd -f filelist.lst
%dir %{python3_sitelib}/*
%files help -f doclist.lst
%{_docdir}/*
%changelog
* Tue Apr 11 2023 Python_Bot <Python_Bot@openeuler.org> - 0.34.3-1
- Package Spec generated
|