Compare commits

..

No commits in common. "rawhide" and "f37" have entirely different histories.

9 changed files with 97 additions and 334 deletions

5
.gitignore vendored
View file

@ -9,8 +9,3 @@
/*.src.rpm
/x86_64/
/avrdude-6.4.tar.gz
/avrdude-7.*/
/avrdude-7.*.tar.gz
/avrdude-7.*-filtered.tar.xz
/avrdude-8.0/
/avrdude-8.0.tar.gz

View file

@ -1,31 +0,0 @@
name = avrdude
version = 8.0
RELEASES =
RELEASES += f42
RELEASES += f41
RELEASES += f40
RELEASES += f39
RELEASES += el9
RELEASES += el8
MOCK_OPTS =
# MOCK_OPTS += --without docs
.PHONY: all
all: $(name)-rpm.stamp
git grep -Ei '([F]IXME|[T]ODO|[X]XX)' ||:
$(name)-rpm.stamp: $(name)-$(version).tar.gz $(name).spec $(name).udev README.fedora $(wildcard $(name)-*.patch)
set -ex; \
fedpkg local; \
for rel in $(RELEASES); do \
fedpkg --release "$$rel" mockbuild; \
done
date > $@
$(name)-$(version).tar.gz:
curl -L -o $@ https://github.com/avrdudes/$(name)/archive/refs/tags/v$(version).tar.gz
sha512sum --tag $@ > sources
# End of file.

View file

@ -11,7 +11,7 @@ When you run `avrdude`, the avrdude process must be allowed to access
the device special file somewhere in `/dev/` which corresponds to the
programmer to be used.
`avrdude` supports many different programmer types (run `avrdude -c
`avrdude` support many different programmer types (run `avrdude -c
list` to see a list of them).
Many of these programmer types are USB devices which appear as a
@ -30,18 +30,18 @@ AT-command devices (device file name `/dev/ttyACM<N>`).
While it is technically possible to make all `/dev/ttyUSB<N>` and/or
`/dev/ttyACM<N>` devices writable for whichever Linux user happens to
be the local user, some of those devices can be devices for which it
is better if they are not writable by just anyone.
is better if they are not being writable by anyone.
Therefore, the avrdude Fedora package does *not* make all
`/dev/ttyUSB<N>` and/or `/dev/ttyACM<N>` writable for the local user
just by installing the package.
Therefore, the avrdude Fedora does *not* make all `/dev/ttyUSB<N>`
and/or `/dev/ttyACM<N>` writable for the local user just by install
the package.
If you *do* want to make these devices writable for any local user,
you can configure your system yourself by dropping a udev rules file
into `/etc/udev/rules.d/`. But while you are at it, you can as well
examine your programmer more closely (`lsusb` and `lsusb -v` can be
helpful here) and narrow down the udev rule matching to match only
your programmer, not each and every `ttyUSB<N>` or `ttyACM<N>` device.
examine your programmer close (`lsusb` and `lsusb -v` can be helpful
here) and narrow down the udev rule matching to match only your
programmer, not each and every `ttyUSB<N>` or `ttyACM<N>` device.
``` /etc/udev/rules.d/99-my-avrdude-programmers.rules
ACTION!="add|change", GOTO="my_avrdude_programmers_end"
@ -61,15 +61,10 @@ SUBSYSTEM=="usb", DRIVERS=="cdc_acm", TAG+="uaccess"
LABEL="my_avrdude_programmers_end"
```
Non-local users
---------------
At this time, the avrdude Fedora package udev rules do not support
setting up permissions for non-local users, like e.g. users logged in
via ssh.
If you need such a setup, you will need also to write your own udev
rules file for `/etc/udev/rules.d/`, and set `OWNER=`, `GROUP=`,
`MODE=`, or change the device ACL with something like
`RUN+="/usr/bin/setfacl -m g:avrdude-programmers:rw '$env{DEVNAME}'"`.
Unfortunately, the existing avrdude Fedora package udev rules do not
support setting up permissions for non-local users, like e.g. users
logged in via ssh. If you need such a setup, you will need also to
write your own udev rules file for `/etc/udev/rules.d/`, and set
`OWNER=`, `GROUP=`, `MODE=`, or change the device ACL with something
like `RUN+="/usr/bin/setfacl -m g:avrdude-programmers:rw
'$env{DEVNAME}'"`.

View file

@ -0,0 +1,13 @@
diff -p -up ./configure.org ./configure
--- ./configure.org 2014-06-04 21:00:03.027735142 +0200
+++ ./configure 2014-06-04 21:04:46.428267513 +0200
@@ -5650,7 +5650,8 @@ fi
LIBPTHREAD=$LIBPTHREAD
# Checks for header files.
-for ac_header in limits.h stdlib.h string.h
+for ac_header in limits.h stdlib.h string.h inttypes.h stdint.h memory.h \
+ strings.h sys/stat.h sys_time.h sys_types.h termios.h
do :
as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"

View file

@ -0,0 +1,23 @@
diff -ruN avrdude-6.4/doc/avrdude.texi avrdude-6.4-file-locations/doc/avrdude.texi
--- avrdude-6.4/doc/avrdude.texi 2021-11-29 21:54:35.000000000 +0100
+++ avrdude-6.4-file-locations/doc/avrdude.texi 2022-04-20 05:07:45.669524302 +0200
@@ -443,7 +443,8 @@
contains all programmer and part definitions that AVRDUDE knows about.
If not
specified, AVRDUDE reads the configuration file from
-/usr/local/etc/avrdude.conf (FreeBSD and Linux). See Appendix A for
+/etc/avrdude/avrdude.conf (Fedora) or
+/usr/local/etc/avrdude.conf (FreeBSD and generic Linux). See Appendix A for
the method of searching for the configuration file for Windows.
If @var{config-file} is written as @var{+filename}
@@ -1428,7 +1429,8 @@
programmer work with AVRDUDE.
AVRDUDE first looks for a system wide configuration file in a platform
-dependent location. On Unix, this is usually
+dependent location. On Fedora, this is
+@code{/etc/avrdude/avrdude.conf}. On Unix, it is usually
@code{/usr/local/etc/avrdude.conf}, while on Windows it is usually in the
same location as the executable file. The name of this file can be
changed using the @option{-C} command line option. After the system wide

View file

@ -1,65 +1,36 @@
%global udev_rules_old 70-avrdude-devices.rules
%global udev_rules_gen 71-avrdude-devices.rules
# Allow skipping doc builds for faster mockbuilds without the
# literally hundreds of extra packages required for building docs.
%bcond_without docs
%global udev_rules 70-avrdude_usbprog.rules
Name: avrdude
Version: 8.0
Release: 8%{?dist}
Version: 6.4
Release: 4%{?dist}
Summary: Software for programming Atmel AVR Microcontroller
License: GPL-2.0-or-later AND GPL-3.0-only AND (WTFPL OR MIT)
URL: https://github.com/avrdudes/avrdude
# Upstream avrdude have no 4big endian support planned.
# https://bugzilla.redhat.com/show_bug.cgi?id=2308947
# https://github.com/avrdudes/avrdude/issues/1917
ExcludeArch: s390x
Source0: https://github.com/avrdudes/%{name}/archive/refs/tags/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
# Debian have a more comprehensive list of programmer devices in their
# avrdude.dev file. We do cannot use this unchanged, though, as we do
# not want to grant blanket access to all ttyUSB and ttyACM devices.
# Source1: https://salsa.debian.org/debian/avrdude/-/raw/master/debian/avrdude.udev
Source1: avrdude.udev
# Remarks on the Fedora package for the users
License: GPLv2+
URL: https://www.nongnu.org/avrdude
Source0: https://download.savannah.gnu.org/releases/%{name}/%{name}-%{version}.tar.gz
Source1: https://salsa.debian.org/debian/avrdude/-/raw/master/debian/avrdude.udev
Source2: README.fedora
# Quick fix elf2tag man page
Source5: elf2tag.1
# From: https://savannah.nongnu.org/bugs/?42517
Patch0: avrdude-6.1_includes.patch
# Stop granting blanket access to all /dev/tty{ACM,USB}* devices
Patch: avrdude-udev-no-blanket-access.patch
Patch1: avrdude-udev-no-blanket-access.patch
# Mention proper doc and config file locations in texinfo documentation
Patch2: avrdude-6.4-fix-file-locations-in-docs.patch
BuildRequires: cmake
BuildRequires: gcc
BuildRequires: flex
BuildRequires: bison
BuildRequires: elfutils-libelf-devel
BuildRequires: hidapi-devel
%if ((0%{?fedora} >= 1) || (0%{?rhel} >= 8))
BuildRequires: libgpiod-devel
%endif
%if ((0%{?fedora} >= 1) || (0%{?rhel} >= 9))
BuildRequires: libserialport-devel
%endif
# EL does not have libhid-devel
%if 0%{?fedora} >= 28
BuildRequires: libhid-devel
%endif
BuildRequires: readline-devel
BuildRequires: ncurses-devel
BuildRequires: libftdi-devel
BuildRequires: pkgconfig(libusb)
BuildRequires: pkgconfig(libusb-1.0)
%if %{with docs}
BuildRequires: texi2html
BuildRequires: texinfo
BuildRequires: texinfo-tex
%endif
BuildRequires: tetex-dvips
BuildRequires: make
# https://fedoraproject.org/wiki/Changes/RemoveObsoleteScriptlets
@ -78,159 +49,55 @@ particular chip.
%prep
%setup -q -n %{name}-%{version}
%setup -q
cp -p %{SOURCE1} avrdude.udev
%autopatch -v -p1
if test -d atmel-docs; then
echo "Directory 'atmel-docs' still exists, aborting."
exit 2
fi
sed -i 's|^find_package(SWIG|\# find_package(SWIG|' CMakeLists.txt
%patch0 -p0 -b .patch0
%patch1 -p1 -b .patch1
%patch2 -p1 -b .patch2
sed -i 's|${PREFIX}/etc/avrdude\.conf|/etc/avrdude/avrdude.conf|g' avrdude.1
sed -i 's|${PREFIX}/share/doc/avrdude/avrdude\.pdf|%{_pkgdocdir}/avrdude.pdf|g' avrdude.1
iconv -f ISO88591 -t UTF8 < ChangeLog-2003 > ChangeLog-2003~
mv ChangeLog-2003~ ChangeLog-2003
iconv -f ISO88591 -t UTF8 < NEWS > NEWS~
mv NEWS~ NEWS
%build
%cmake \
-D CMAKE_INSTALL_SYSCONFDIR:PATH=%{_sysconfdir} \
-D CMAKE_BUILD_TYPE=build_type=RelWithDebInfo \
%if %{with docs}
-D BUILD_DOC:BOOL=ON \
%else
-D BUILD_DOC:BOOL=OFF \
%endif
-D HAVE_LINUXSPI:BOOL=ON \
-D HAVE_LINUXGPIO:BOOL=ON \
-D HAVE_PARPORT:BOOL=ON \
-D FETCHCONTENT_FULLY_DISCONNECTED:BOOL=ON \
-D FETCHCONTENT_QUIET:BOOL=OFF \
-D BUILD_SHARED_LIBS:BOOL=NO \
-D USE_STATIC_LIBS:BOOL=YES
if test -d _deps; then
echo "cmake appears to have fetched some dependency despite our precautions:"
ls -l _deps
exit 2
fi
%cmake_build
# generate set of udev rules from avrdude.conf
%{__cmake_builddir}/src/avrdude -C %{__cmake_builddir}/src/avrdude.conf -c '*/u' \
| sed -n '/ACTION!=/,$p' \
| sed 's|, MODE="0660"||' \
> genset.rules
test -s genset.rules
%configure --disable-silent-rules --enable-doc --enable-linuxgpio --enable-linuxspi --enable-parport --sysconfdir=%{_sysconfdir}/%{name}
%make_build
%install
%cmake_install
rm -f $RPM_BUILD_ROOT%{_infodir}/dir
rm -f $RPM_BUILD_ROOT%{_includedir}/libavrdude-avrintel.h
%make_install DOC_INST_DIR="$RPM_BUILD_ROOT%{_pkgdocdir}"
rm -f $RPM_BUILD_ROOT%{_includedir}/libavrdude.h
rm -f $RPM_BUILD_ROOT%{_infodir}/dir
rm -f $RPM_BUILD_ROOT%{_libdir}/libavrdude.a
install -d -m 755 $RPM_BUILD_ROOT%{_udevrulesdir}
install -p -m 644 avrdude.udev $RPM_BUILD_ROOT%{_udevrulesdir}/%{udev_rules_old}
install -p -m 644 genset.rules $RPM_BUILD_ROOT%{_udevrulesdir}/%{udev_rules_gen}
install -d -m 755 $RPM_BUILD_ROOT%{_pkgdocdir}
rm -f $RPM_BUILD_ROOT%{_libdir}/libavrdude.la
rm -f $RPM_BUILD_ROOT%{_libdir}/libavrdude.so
rm -f $RPM_BUILD_ROOT%{_libdir}/libavrdude.so.1
rm -f $RPM_BUILD_ROOT%{_libdir}/libavrdude.so.1.0.0
install -d -m 755 $RPM_BUILD_ROOT%{_udevrulesdir}
install -p -m 644 avrdude.udev $RPM_BUILD_ROOT%{_udevrulesdir}/%{udev_rules}
install -d -m 755 $RPM_BUILD_ROOT%{_pkgdocdir}
install -p -m 644 %{SOURCE2} $RPM_BUILD_ROOT%{_pkgdocdir}/README.fedora
install -p -m 644 -t $RPM_BUILD_ROOT%{_pkgdocdir} AUTHORS NEWS README.md
install -d -m 755 $RPM_BUILD_ROOT%{_mandir}/man1
install -p -m 644 %{SOURCE5} $RPM_BUILD_ROOT%{_mandir}/man1/elf2tag.1
%check
%ctest
%files
%license COPYING
%doc %{_pkgdocdir}/AUTHORS
%doc %{_pkgdocdir}/NEWS
%doc %{_pkgdocdir}/README.md
%doc README AUTHORS ChangeLog* COPYING NEWS doc/TODO
%doc %{_pkgdocdir}/README.fedora
%if %{with docs}
%doc %{_pkgdocdir}/avrdude-html/
%doc %{_pkgdocdir}/avrdude.pdf
%endif
%config(noreplace) %{_sysconfdir}/avrdude.conf
%{_udevrulesdir}/%{udev_rules_old}
%{_udevrulesdir}/%{udev_rules_gen}
%{_bindir}/avrdude
%{_bindir}/elf2tag
%{_mandir}/man1/avrdude.1*
%{_mandir}/man1/elf2tag.1*
%if %{with docs}
%{_infodir}/avrdude.info*
%endif
%doc %{_pkgdocdir}/avrdude.ps
%config(noreplace) %{_sysconfdir}/%{name}
%{_udevrulesdir}/%{udev_rules}
%{_bindir}/%{name}
%{_mandir}/man1/%{name}.1.gz
%{_infodir}/%{name}.info.*
%changelog
* Fri Jan 16 2026 Fedora Release Engineering <releng@fedoraproject.org> - 8.0-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
* Wed Jul 23 2025 Fedora Release Engineering <releng@fedoraproject.org> - 8.0-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Thu Jan 16 2025 Fedora Release Engineering <releng@fedoraproject.org> - 8.0-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Sun Sep 1 2024 Hans Ulrich Niedermann <hun@n-dimensional.de> - 8.0-5
- ExcludeArch: s390x (#2308947)
- Add elf2tag.1 man page
* Fri Aug 30 2024 Hans Ulrich Niedermann <hun@n-dimensional.de> - 8.0-4
- Actually ship static copy of udev rules as s390x workaround
* Fri Aug 30 2024 Hans Ulrich Niedermann <hun@n-dimensional.de> - 8.0-3
- Ship static copy of udev rules as s390x workaround
* Thu Aug 29 2024 Hans Ulrich Niedermann <hun@n-dimensional.de> - 8.0-2
- Rebuilt for forgotten new-sources
* Sun Aug 25 2024 Hans Ulrich Niedermann <hun@n-dimensional.de> - 8.0-1
- Update to avrdude-8.0 release (#2307778)
- Enable libserialport support
- Build without old pre-1.0 libusb
- Build with libgpiod
- Move config file from /etc/avrdude/avrdude.conf to /etc/avrdude.conf
- Continue not shipping libavrdude library due to unstable API/ABI
- Do not build/ship libavrdude SWIG bindings (unstable API/ABI)
- Do not build/ship avrdude GUI based on the SWIG bindings
- Add new set of autogenerated udev rules
* Wed Jul 17 2024 Fedora Release Engineering <releng@fedoraproject.org> - 7.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Wed Feb 7 2024 Hans Ulrich Niedermann <hun@n-dimensional.de> - 7.3-1
- Update to avrdude-7.3 release
- Enable linuxgpio (without libgpiod, though)
* Mon Jan 22 2024 Fedora Release Engineering <releng@fedoraproject.org> - 7.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Fri Jan 19 2024 Hans Ulrich Niedermann <hun@n-dimensional.de> - 7.2-1
- Updated to upstream avrdude-7.2 release from github.com (rhbz#2251649)
- Filter upstream release tarball to remove pdf docs due to licensing
- Migrated to SPDX license
- Switched to cmake build system
- Fixed upstream cmake detection of libreadline.so
- Switched to upstream's new URL (github instead of nongnu.org)
- Stop shipping PS doc format in favour of just avrdude.pdf
- Keep avrdude.conf at the old Fedora location /etc/avrdude/ for now
* Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 6.4-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 6.4-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Wed Jan 18 2023 Fedora Release Engineering <releng@fedoraproject.org> - 6.4-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Wed Jul 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 6.4-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
@ -238,7 +105,7 @@ install -p -m 644 %{SOURCE5} $RPM_BUILD_ROOT%{_mandir}/man1/elf2tag.1
- Add README.fedora explaining USB device permission setup
* Wed Apr 20 2022 Hans Ulrich Niedermann <hun@n-dimensional.de> - 6.4-2
- Install built documentation directly to %%{_pkgdocdir}
- Install built documentation directly to %{_pkgdocdir}
- Fix file locations in man page, texinfo docs
- Upstream already has fixed these files' x bits
- Disable silent rules to help with build problems

View file

@ -28,20 +28,6 @@ SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2141", TAG+="uaccess
SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2144", TAG+="uaccess"
# Xplained Mini board
SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2145", TAG+="uaccess"
# Curiosity Nano (pkobn)
SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2175", TAG+="uaccess"
# MPLAB PICkit4 AVR mode
SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2177", TAG+="uaccess"
# MPLAB PICkit4 AVR mode alt 1
SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2178", TAG+="uaccess"
# MPLAB PICkit4 AVR mode alt 2
SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2179", TAG+="uaccess"
# MPLAB Snap AVR mode
SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2180", TAG+="uaccess"
# MPLAB Snap AVR mode alt 1
SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="217f", TAG+="uaccess"
# MPLAB Snap AVR mode alt 2
SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2181", TAG+="uaccess"
# ATxmega64C3 DFU
SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2fd6", TAG+="uaccess"
# ATxmega128C3 DFU
@ -108,35 +94,13 @@ SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2ffd", TAG+="uaccess
SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2fff", TAG+="uaccess"
# PICkit2
SUBSYSTEM=="usb", ATTR{idVendor}=="04d8", ATTR{idProduct}=="0033", TAG+="uaccess"
# MPLAB PICkit4 PIC mode
SUBSYSTEM=="usb", ATTR{idVendor}=="04d8", ATTR{idProduct}=="9012", TAG+="uaccess"
# MPLAB PICkit4 PIC mode alt
SUBSYSTEM=="usb", ATTR{idVendor}=="04d8", ATTR{idProduct}=="9017", TAG+="uaccess"
# MPLAB Snap PIC mode
SUBSYSTEM=="usb", ATTR{idVendor}=="04d8", ATTR{idProduct}=="9018", TAG+="uaccess"
# MPLAB Snap PIC mode alt
SUBSYSTEM=="usb", ATTR{idVendor}=="04d8", ATTR{idProduct}=="9019", TAG+="uaccess"
# USBasp
SUBSYSTEM=="usb", ATTR{idVendor}=="16c0", ATTR{idProduct}=="05dc", TAG+="uaccess"
# USBasp (old unofficial)
SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="c7b4", TAG+="uaccess"
# Teensy
SUBSYSTEM=="usb", ATTR{idVendor}=="16c0", ATTR{idProduct}=="0478", TAG+="uaccess"
# NIBObee
SUBSYSTEM=="usb", ATTR{idVendor}=="16c0", ATTR{idProduct}=="092f", TAG+="uaccess"
# Micronucleus
SUBSYSTEM=="usb", ATTR{idVendor}=="16d0", ATTR{idProduct}=="0753", TAG+="uaccess"
# eHaJo
SUBSYSTEM=="usb", ATTR{idVendor}=="16d0", ATTR{idProduct}=="0ba5", TAG+="uaccess"
# USBtinyISP
SUBSYSTEM=="usb", ATTR{idVendor}=="1781", ATTR{idProduct}=="0c9f", TAG+="uaccess"
# ISE CKT
SUBSYSTEM=="usb", ATTR{idVendor}=="1209", ATTR{idProduct}=="6570", TAG+="uaccess"
# Arduino Gemma
SUBSYSTEM=="usb", ATTR{idVendor}=="2341", ATTR{idProduct}=="0c9f", TAG+="uaccess"
# Arduino ISP
SUBSYSTEM=="usb", ATTR{idVendor}=="2341", ATTR{idProduct}=="0049", TAG+="uaccess"
# Arduino ISP org
SUBSYSTEM=="usb", ATTR{idVendor}=="2a03", ATTR{idProduct}=="0049", TAG+="uaccess"
LABEL="avrdude_end"

View file

@ -1,63 +0,0 @@
'\" t
.\" Title: elf2tag
.\" Author: [see the "AUTHOR(S)" section]
.\" Generator: Asciidoctor 2.0.20
.\" Date: 2024-09-01
.\" Manual: elf2tag Manual
.\" Source: avrdude
.\" Language: English
.\"
.TH "ELF2TAG" "1" "2024-09-01" "avrdude" "elf2tag Manual"
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.ss \n[.ss] 0
.nh
.ad l
.de URL
\fI\\$2\fP <\\$1>\\$3
..
.als MTO URL
.if \n[.g] \{\
. mso www.tmac
. am URL
. ad l
. .
. am MTO
. ad l
. .
. LINKSTYLE blue R < >
.\}
.SH "NAME"
elf2tag \- output a tagfile for the avrdude disasm command
.SH "SYNOPSIS"
.sp
\fBelf2tag\fP <file.elf>
.sp
\fBelf2tag\fP [\fB\-h\fP | \fB\-\-help\fP]
.SH "DESCRIPTION"
.sp
\fIelf2tag\fP generates a tagfile for use with the \fIavrdude disasm\fP command.
.SH "OPTIONS"
.sp
\fB\-h\fP \fB\-\-help\fP
.RS 4
Prints the help message and exits.
.RE
.SH "EXAMPLES"
.sp
.if n .RS 4
.nf
.fam C
$ elf2tag file.elf > file.tag
$ avrdude \-t ...
avrdude> ...
avrdude> disasm \-t=file.tag ...
.fam
.fi
.if n .RE
.SH "AUTHORS"
.sp
\fIelf2tag\fP was written by Johannes Bauer with small modifications by Stefan Rueger.
.SH "SEE ALSO"
.sp
\fBavrdude(1)\fP, \fBavr\-nm\fP, \fBavr\-objdump(1)\fP

View file

@ -1 +1 @@
SHA512 (avrdude-8.0.tar.gz) = c6fa365924aa8ad58a1b2f85c36ecc498c9b049b9bce455994752b8b13c06aa31ac6c8420eea4be307f42e64284c87ec08f75d6eaec640de7dc097c523d02dac
SHA512 (avrdude-6.4.tar.gz) = ce6127c212a83c5079d3bd80a7a0127220f9652201595a24b991916556eb8fc69d2910f7e112d7025a5aeec8d341e72293467ac1dc1a62be1f391dd9408f9a06