From 4d2cb8e1bbe35ab384e26846b760e536861c53a2 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 17 Jul 2024 17:55:33 +0000 Subject: [PATCH 01/25] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild --- avrdude.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index 0ebe25b..410c149 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -6,7 +6,7 @@ Name: avrdude Version: 7.3 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Software for programming Atmel AVR Microcontroller License: GPL-2.0-or-later AND GPL-3.0-only AND (WTFPL OR MIT) @@ -154,6 +154,9 @@ install -p -m 644 -t $RPM_BUILD_ROOT%{_pkgdocdir} AUTHORS NEWS README.md %changelog +* Wed Jul 17 2024 Fedora Release Engineering - 7.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + * Wed Feb 7 2024 Hans Ulrich Niedermann - 7.3-1 - Update to avrdude-7.3 release - Enable linuxgpio (without libgpiod, though) From 9ffa610d37b1a3119a172a63715b180ba8ae0872 Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Sun, 25 Aug 2024 18:17:00 +0200 Subject: [PATCH 02/25] limit python script line length to 79 --- GNUmakefile | 2 +- filter-tarball | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/GNUmakefile b/GNUmakefile index 58bd637..924fc52 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -22,7 +22,7 @@ $(name)-rpm.stamp: $(name)-$(version)-filtered.tar.xz $(name).spec $(name).udev date > $@ $(name)-$(version)-filtered.tar.xz: $(name)-$(version).tar.gz $(filter-tarball) file-licensing - black --line-length 80 $(filter-tarball) + black --line-length 79 $(filter-tarball) flake8 $(filter-tarball) mypy $(filter-tarball) rm -f $(name)-$(version)-filtered.tar.xz diff --git a/filter-tarball b/filter-tarball index 3ed8949..d4a08ea 100755 --- a/filter-tarball +++ b/filter-tarball @@ -122,9 +122,10 @@ def main(argv=None): license_map = load_license_map(Path(__file__).parent / "file-licensing") try: - with tarfile.open(orig_tarball) as orig_tarfile, tarfile.open( - filtered_tarball, "w:xz" - ) as filtered_tarfile: + with ( + tarfile.open(orig_tarball) as orig_tarfile, + tarfile.open(filtered_tarball, "w:xz") as filtered_tarfile, + ): run_filter(orig_tarfile, filtered_tarfile, tarbase, license_map) add_readme_file(filtered_tarfile, tarbase) except BaseException as err: From 90f812df00576b736d0fa8423fc3d37675aa6a72 Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Mon, 26 Aug 2024 20:28:18 +0200 Subject: [PATCH 03/25] more readable make recipe --- GNUmakefile | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/GNUmakefile b/GNUmakefile index 924fc52..bff811d 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -18,7 +18,11 @@ all: $(name)-rpm.stamp git grep -Ei '([F]IXME|[T]ODO|[X]XX)' ||: $(name)-rpm.stamp: $(name)-$(version)-filtered.tar.xz $(name).spec $(name).udev README.fedora $(wildcard $(name)-*.patch) - set -ex; fedpkg local; for rel in $(RELEASES); do fedpkg --release "$$rel" mockbuild; done + set -ex; \ + fedpkg local; \ + for rel in $(RELEASES); do \ + fedpkg --release "$$rel" mockbuild; \ + done date > $@ $(name)-$(version)-filtered.tar.xz: $(name)-$(version).tar.gz $(filter-tarball) file-licensing From 9040cce8b51b2d2864af9dfd76e844bec92d9329 Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Sun, 25 Aug 2024 18:23:57 +0200 Subject: [PATCH 04/25] Update to avrdude-8.0 release --- .gitignore | 2 ++ GNUmakefile | 5 +++-- avrdude.spec | 7 +++++-- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 9faa5d6..0e26836 100644 --- a/.gitignore +++ b/.gitignore @@ -12,3 +12,5 @@ /avrdude-7.*/ /avrdude-7.*.tar.gz /avrdude-7.*-filtered.tar.xz +/avrdude-8.*/ +/avrdude-8.*.tar.gz diff --git a/GNUmakefile b/GNUmakefile index bff811d..5818d8b 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -1,10 +1,11 @@ name = avrdude -version = 7.3 +version = 8.0 RELEASES = +RELEASES += f42 +RELEASES += f41 RELEASES += f40 RELEASES += f39 -RELEASES += f38 RELEASES += el9 RELEASES += el8 diff --git a/avrdude.spec b/avrdude.spec index 410c149..d6368e0 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -5,8 +5,8 @@ %bcond_without docs Name: avrdude -Version: 7.3 -Release: 2%{?dist} +Version: 8.0 +Release: 1%{?dist} Summary: Software for programming Atmel AVR Microcontroller License: GPL-2.0-or-later AND GPL-3.0-only AND (WTFPL OR MIT) @@ -154,6 +154,9 @@ install -p -m 644 -t $RPM_BUILD_ROOT%{_pkgdocdir} AUTHORS NEWS README.md %changelog +* Sun Aug 25 2024 Hans Ulrich Niedermann - 8.0-1 +- Update to avrdude-8.0 release (#2307778) + * Wed Jul 17 2024 Fedora Release Engineering - 7.3-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From 9e5856438539beed910f6737dedaa6ad2efeebb2 Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Tue, 27 Aug 2024 18:30:29 +0200 Subject: [PATCH 05/25] Directly use upstream tarball --- GNUmakefile | 13 +- avrdude.spec | 13 +- file-licensing | 610 ------------------------------------------------- filter-tarball | 138 ----------- sources | 2 +- 5 files changed, 4 insertions(+), 772 deletions(-) delete mode 100644 file-licensing delete mode 100755 filter-tarball diff --git a/GNUmakefile b/GNUmakefile index 5818d8b..912296c 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -12,13 +12,11 @@ RELEASES += el8 MOCK_OPTS = # MOCK_OPTS += --without docs -filter-tarball = filter-tarball - .PHONY: all all: $(name)-rpm.stamp git grep -Ei '([F]IXME|[T]ODO|[X]XX)' ||: -$(name)-rpm.stamp: $(name)-$(version)-filtered.tar.xz $(name).spec $(name).udev README.fedora $(wildcard $(name)-*.patch) +$(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 \ @@ -26,15 +24,8 @@ $(name)-rpm.stamp: $(name)-$(version)-filtered.tar.xz $(name).spec $(name).udev done date > $@ -$(name)-$(version)-filtered.tar.xz: $(name)-$(version).tar.gz $(filter-tarball) file-licensing - black --line-length 79 $(filter-tarball) - flake8 $(filter-tarball) - mypy $(filter-tarball) - rm -f $(name)-$(version)-filtered.tar.xz - python3 $(filter-tarball) $< - sha512sum --tag $@ > sources - $(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. diff --git a/avrdude.spec b/avrdude.spec index d6368e0..8191d42 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -12,18 +12,7 @@ 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 release tarballs are just git repo dumps, which includes -# pdf doc files which we cannot redistribute. -# Source0: https://github.com/avrdudes/%%{name}/archive/refs/tags/v%%{version}.tar.gz#/%%{name}-%%{version}.tar.gz - -# So we need to filter out the files we *can* distribute, before we -# can "fedpkg new-sources" the tarball. "make" should do about this: -# curl -L -o %%{name}-%%{version}.tar.gz https://github.com/avrdudes/%%{name}/archive/refs/tags/v%%{version}.tar.gz -# python3 filter-tarball %%{name}-%%{version}.tar.gz -# That results in rpmlint "avrdude.spec: W: invalid-url Source0: …" -Source0: %{name}-%{version}-filtered.tar.xz -Source10: filter-tarball -Source11: file-licensing +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 diff --git a/file-licensing b/file-licensing deleted file mode 100644 index bff8b57..0000000 --- a/file-licensing +++ /dev/null @@ -1,610 +0,0 @@ -# File format: -# * Empty lines are ignored. -# * Lines starting with a # are ignored. -# * Lines not containing a TAB character are ignored. -# -# Each valid line contains -# * SPDX license expression or one of our special markers: -# * "x" for a file to be removed from the tarball -# * "-" for unclear, but keep the file in the tarball -# * the filename for the SPDX license expression applies -# * an optional human readable remark -# separated by TAB characters. -# -# Some resources helping maintaining this file: -# * licensecheck(1) -# * the SPDX specs - -# Written for the git commit hash a336e47a6e1fe069c45096edaeda1b4841ad7ce5. - -# License inside file file name -# ------------------------------------------------------------------------ -- .editorconfig -- .gitattributes -- .github/workflows/arduino_packing.yml -GPL-2.0-or-later .github/workflows/build.yml -GPL-2.0-or-later .github/workflows/deploy.yml -- .gitignore -- AUTHORS -GPL-2.0-or-later CMakeLists.txt -- CMakeSettings.json -- COPYING -- INSTALL -- NEWS -- README.md -x atmel-docs/AVR109.pdf -x atmel-docs/AVR910.pdf -x atmel-docs/AVRISPmkII-AVR069.pdf -x atmel-docs/EDBG/common/browserDetect.js -x atmel-docs/EDBG/common/css/960.css -x atmel-docs/EDBG/common/css/docbook.css -x atmel-docs/EDBG/common/css/fluid_grid.css -x atmel-docs/EDBG/common/css/index.css -x atmel-docs/EDBG/common/css/positioning.css -x atmel-docs/EDBG/common/css/print.css -x atmel-docs/EDBG/common/css/reset.css -x atmel-docs/EDBG/common/css/text.css -x atmel-docs/EDBG/common/fonts/DroidSansMono.eot -x atmel-docs/EDBG/common/fonts/DroidSansMono.ttf -x atmel-docs/EDBG/common/images/Book_Closed.png -x atmel-docs/EDBG/common/images/Book_Open.png -x atmel-docs/EDBG/common/images/Document_Text.png -x atmel-docs/EDBG/common/images/Library.png -x atmel-docs/EDBG/common/images/external_link.gif -x atmel-docs/EDBG/common/images/loading.gif -x atmel-docs/EDBG/common/images/logo.png -x atmel-docs/EDBG/common/images/minus.png -x atmel-docs/EDBG/common/images/next-arrow.png -x atmel-docs/EDBG/common/images/plus.png -x atmel-docs/EDBG/common/images/previous-arrow.png -x atmel-docs/EDBG/common/images/search-icon.png -x atmel-docs/EDBG/common/images/sidebar.png -x atmel-docs/EDBG/common/images/starsSmall.png -x atmel-docs/EDBG/common/images/toc-icon.png -x atmel-docs/EDBG/common/images/ui-icons_217bc0_256x240.png -x atmel-docs/EDBG/common/jquery/jquery-1.7.2.min.js -x atmel-docs/EDBG/common/jquery/jquery.cookie.js -x atmel-docs/EDBG/common/jquery/jquery.ui.all.js -x atmel-docs/EDBG/common/jquery/layout/jquery.layout.js -x atmel-docs/EDBG/common/jquery/theme-redmond/images/ui-anim_basic_16x16.gif -x atmel-docs/EDBG/common/jquery/theme-redmond/images/ui-bg_flat_0_aaaaaa_40x100.png -x atmel-docs/EDBG/common/jquery/theme-redmond/images/ui-bg_flat_55_fbec88_40x100.png -x atmel-docs/EDBG/common/jquery/theme-redmond/images/ui-bg_glass_75_d0e5f5_1x400.png -x atmel-docs/EDBG/common/jquery/theme-redmond/images/ui-bg_glass_85_dfeffc_1x400.png -x atmel-docs/EDBG/common/jquery/theme-redmond/images/ui-bg_glass_95_fef1ec_1x400.png -x atmel-docs/EDBG/common/jquery/theme-redmond/images/ui-bg_gloss-wave_55_5c9ccc_500x100.png -x atmel-docs/EDBG/common/jquery/theme-redmond/images/ui-bg_inset-hard_100_f5f8f9_1x100.png -x atmel-docs/EDBG/common/jquery/theme-redmond/images/ui-bg_inset-hard_100_fcfdfd_1x100.png -x atmel-docs/EDBG/common/jquery/theme-redmond/images/ui-icons_217bc0_256x240.png -x atmel-docs/EDBG/common/jquery/theme-redmond/images/ui-icons_2e83ff_256x240.png -x atmel-docs/EDBG/common/jquery/theme-redmond/images/ui-icons_469bdd_256x240.png -x atmel-docs/EDBG/common/jquery/theme-redmond/images/ui-icons_6da8d5_256x240.png -x atmel-docs/EDBG/common/jquery/theme-redmond/images/ui-icons_cd0a0a_256x240.png -x atmel-docs/EDBG/common/jquery/theme-redmond/images/ui-icons_d8e7f3_256x240.png -x atmel-docs/EDBG/common/jquery/theme-redmond/images/ui-icons_f9bd01_256x240.png -x atmel-docs/EDBG/common/jquery/theme-redmond/jquery-ui-1.8.2.custom.css -x atmel-docs/EDBG/common/jquery/treeview/images/file.gif -x atmel-docs/EDBG/common/jquery/treeview/images/folder-closed.gif -x atmel-docs/EDBG/common/jquery/treeview/images/folder.gif -x atmel-docs/EDBG/common/jquery/treeview/images/treeview-black-line.gif -x atmel-docs/EDBG/common/jquery/treeview/images/treeview-black.gif -x atmel-docs/EDBG/common/jquery/treeview/images/treeview-default-line.gif -x atmel-docs/EDBG/common/jquery/treeview/images/treeview-default.gif -x atmel-docs/EDBG/common/jquery/treeview/images/treeview-famfamfam-line.gif -x atmel-docs/EDBG/common/jquery/treeview/images/treeview-famfamfam.gif -x atmel-docs/EDBG/common/jquery/treeview/images/treeview-gray-line.gif -x atmel-docs/EDBG/common/jquery/treeview/images/treeview-gray.gif -x atmel-docs/EDBG/common/jquery/treeview/images/treeview-red-line.gif -x atmel-docs/EDBG/common/jquery/treeview/images/treeview-red.gif -x atmel-docs/EDBG/common/jquery/treeview/jquery.treeview.css -x atmel-docs/EDBG/common/jquery/treeview/jquery.treeview.min.js -x atmel-docs/EDBG/common/main.js -x atmel-docs/EDBG/common/splitterInit.js -x atmel-docs/EDBG/protocoldocs/ch01s01.html -x atmel-docs/EDBG/protocoldocs/ch01s02.html -x atmel-docs/EDBG/protocoldocs/ch02s01.html -x atmel-docs/EDBG/protocoldocs/ch02s02.html -x atmel-docs/EDBG/protocoldocs/ch02s02s01.html -x atmel-docs/EDBG/protocoldocs/ch02s02s02.html -x atmel-docs/EDBG/protocoldocs/ch02s02s02s01.html -x atmel-docs/EDBG/protocoldocs/ch02s02s02s02.html -x atmel-docs/EDBG/protocoldocs/ch02s02s03.html -x atmel-docs/EDBG/protocoldocs/ch02s02s03s01.html -x atmel-docs/EDBG/protocoldocs/ch02s02s03s02.html -x atmel-docs/EDBG/protocoldocs/ch02s02s03s03.html -x atmel-docs/EDBG/protocoldocs/ch02s02s03s04.html -x atmel-docs/EDBG/protocoldocs/ch02s03s01.html -x atmel-docs/EDBG/protocoldocs/ch02s03s02.html -x atmel-docs/EDBG/protocoldocs/ch02s03s03.html -x atmel-docs/EDBG/protocoldocs/ch02s03s04.html -x atmel-docs/EDBG/protocoldocs/ch02s03s05.html -x atmel-docs/EDBG/protocoldocs/ch02s03s06.html -x atmel-docs/EDBG/protocoldocs/ch02s03s07.html -x atmel-docs/EDBG/protocoldocs/ch02s03s08.html -x atmel-docs/EDBG/protocoldocs/ch02s03s09.html -x atmel-docs/EDBG/protocoldocs/ch02s04.html -x atmel-docs/EDBG/protocoldocs/ch02s04s01.html -x atmel-docs/EDBG/protocoldocs/ch02s04s02.html -x atmel-docs/EDBG/protocoldocs/ch02s04s03.html -x atmel-docs/EDBG/protocoldocs/ch03s01.html -x atmel-docs/EDBG/protocoldocs/ch03s01s01.html -x atmel-docs/EDBG/protocoldocs/ch03s01s01.html~ -x atmel-docs/EDBG/protocoldocs/ch03s01s02.html -x atmel-docs/EDBG/protocoldocs/ch03s01s03.html -x atmel-docs/EDBG/protocoldocs/ch03s01s03s01.html -x atmel-docs/EDBG/protocoldocs/ch03s02.html -x atmel-docs/EDBG/protocoldocs/ch03s02s01.html -x atmel-docs/EDBG/protocoldocs/ch03s02s02.html -x atmel-docs/EDBG/protocoldocs/ch03s02s03.html -x atmel-docs/EDBG/protocoldocs/ch03s02s04.html -x atmel-docs/EDBG/protocoldocs/ch04s01.html -x atmel-docs/EDBG/protocoldocs/ch04s02.html -x atmel-docs/EDBG/protocoldocs/ch04s03.html -x atmel-docs/EDBG/protocoldocs/ch04s04.html -x atmel-docs/EDBG/protocoldocs/ch04s04s01.html -x atmel-docs/EDBG/protocoldocs/ch04s04s03.html -x atmel-docs/EDBG/protocoldocs/ch04s04s04.html -x atmel-docs/EDBG/protocoldocs/ch04s04s05.html -x atmel-docs/EDBG/protocoldocs/ch04s05.html -x atmel-docs/EDBG/protocoldocs/ch04s05s01.html -x atmel-docs/EDBG/protocoldocs/ch04s05s03.html -x atmel-docs/EDBG/protocoldocs/ch04s05s04.html -x atmel-docs/EDBG/protocoldocs/ch04s05s06.html -x atmel-docs/EDBG/protocoldocs/ch04s05s06s02.html -x atmel-docs/EDBG/protocoldocs/ch04s05s06s03.html -x atmel-docs/EDBG/protocoldocs/ch04s05s06s04.html -x atmel-docs/EDBG/protocoldocs/ch04s05s06s05.html -x atmel-docs/EDBG/protocoldocs/ch04s05s07.html -x atmel-docs/EDBG/protocoldocs/ch04s05s07s01.html -x atmel-docs/EDBG/protocoldocs/ch04s05s07s02.html -x atmel-docs/EDBG/protocoldocs/ch04s05s07s03.html -x atmel-docs/EDBG/protocoldocs/ch04s05s07s04.html -x atmel-docs/EDBG/protocoldocs/ch04s05s08.html -x atmel-docs/EDBG/protocoldocs/ch04s05s08s01.html -x atmel-docs/EDBG/protocoldocs/ch04s05s08s02.html -x atmel-docs/EDBG/protocoldocs/ch04s05s08s03.html -x atmel-docs/EDBG/protocoldocs/ch04s05s09.html -x atmel-docs/EDBG/protocoldocs/ch04s05s10.html -x atmel-docs/EDBG/protocoldocs/ch05s01.html -x atmel-docs/EDBG/protocoldocs/ch05s01s01.html -x atmel-docs/EDBG/protocoldocs/ch05s01s02.html -x atmel-docs/EDBG/protocoldocs/ch05s01s03.html -x atmel-docs/EDBG/protocoldocs/ch05s01s04.html -x atmel-docs/EDBG/protocoldocs/ch05s01s05.html -x atmel-docs/EDBG/protocoldocs/ch05s01s06.html -x atmel-docs/EDBG/protocoldocs/ch05s01s07.html -x atmel-docs/EDBG/protocoldocs/ch05s01s08.html -x atmel-docs/EDBG/protocoldocs/ch05s01s09.html -x atmel-docs/EDBG/protocoldocs/ch05s01s10.html -x atmel-docs/EDBG/protocoldocs/ch05s01s11.html -x atmel-docs/EDBG/protocoldocs/ch05s01s12.html -x atmel-docs/EDBG/protocoldocs/ch05s01s13.html -x atmel-docs/EDBG/protocoldocs/ch05s01s14.html -x atmel-docs/EDBG/protocoldocs/ch05s01s15.html -x atmel-docs/EDBG/protocoldocs/ch05s02.html -x atmel-docs/EDBG/protocoldocs/ch05s02s01.html -x atmel-docs/EDBG/protocoldocs/ch05s02s02.html -x atmel-docs/EDBG/protocoldocs/ch05s02s03.html -x atmel-docs/EDBG/protocoldocs/ch05s02s04.html -x atmel-docs/EDBG/protocoldocs/ch05s02s05.html -x atmel-docs/EDBG/protocoldocs/ch05s02s06.html -x atmel-docs/EDBG/protocoldocs/ch05s03.html -x atmel-docs/EDBG/protocoldocs/ch05s03s01.html -x atmel-docs/EDBG/protocoldocs/ch05s03s02.html -x atmel-docs/EDBG/protocoldocs/ch05s03s03.html -x atmel-docs/EDBG/protocoldocs/ch05s04.html -x atmel-docs/EDBG/protocoldocs/ch06s01.html -x atmel-docs/EDBG/protocoldocs/ch06s01s01.html -x atmel-docs/EDBG/protocoldocs/ch06s01s02.html -x atmel-docs/EDBG/protocoldocs/ch06s01s03.html -x atmel-docs/EDBG/protocoldocs/ch06s01s04.html -x atmel-docs/EDBG/protocoldocs/ch06s01s05.html -x atmel-docs/EDBG/protocoldocs/ch06s01s06.html -x atmel-docs/EDBG/protocoldocs/ch06s01s07.html -x atmel-docs/EDBG/protocoldocs/ch06s01s08.html -x atmel-docs/EDBG/protocoldocs/ch06s01s09.html -x atmel-docs/EDBG/protocoldocs/ch06s01s10.html -x atmel-docs/EDBG/protocoldocs/ch06s01s11.html -x atmel-docs/EDBG/protocoldocs/ch06s01s12.html -x atmel-docs/EDBG/protocoldocs/ch06s01s13.html -x atmel-docs/EDBG/protocoldocs/ch06s01s14.html -x atmel-docs/EDBG/protocoldocs/ch06s01s15.html -x atmel-docs/EDBG/protocoldocs/ch06s01s16.html -x atmel-docs/EDBG/protocoldocs/ch06s01s17.html -x atmel-docs/EDBG/protocoldocs/ch06s01s18.html -x atmel-docs/EDBG/protocoldocs/ch06s01s19.html -x atmel-docs/EDBG/protocoldocs/ch06s01s20.html -x atmel-docs/EDBG/protocoldocs/ch06s01s21.html -x atmel-docs/EDBG/protocoldocs/ch06s01s22.html -x atmel-docs/EDBG/protocoldocs/ch06s01s23.html -x atmel-docs/EDBG/protocoldocs/ch06s01s24.html -x atmel-docs/EDBG/protocoldocs/ch06s01s25.html -x atmel-docs/EDBG/protocoldocs/ch06s01s26.html -x atmel-docs/EDBG/protocoldocs/ch06s01s27.html -x atmel-docs/EDBG/protocoldocs/ch06s01s28.html -x atmel-docs/EDBG/protocoldocs/ch06s01s29.html -x atmel-docs/EDBG/protocoldocs/ch06s02.html -x atmel-docs/EDBG/protocoldocs/ch06s02s01.html -x atmel-docs/EDBG/protocoldocs/ch06s02s02.html -x atmel-docs/EDBG/protocoldocs/ch06s02s03.html -x atmel-docs/EDBG/protocoldocs/ch06s02s04.html -x atmel-docs/EDBG/protocoldocs/ch06s02s05.html -x atmel-docs/EDBG/protocoldocs/ch06s03.html -x atmel-docs/EDBG/protocoldocs/ch06s03s01.html -x atmel-docs/EDBG/protocoldocs/ch06s03s02.html -x atmel-docs/EDBG/protocoldocs/ch06s04s01.html -x atmel-docs/EDBG/protocoldocs/ch06s04s02.html -x atmel-docs/EDBG/protocoldocs/ch06s04s03.html -x atmel-docs/EDBG/protocoldocs/ch06s05.html -x atmel-docs/EDBG/protocoldocs/ch06s05s01.html -x atmel-docs/EDBG/protocoldocs/ch06s05s02.html -x atmel-docs/EDBG/protocoldocs/ch06s05s03.html -x atmel-docs/EDBG/protocoldocs/ch06s05s04.html -x atmel-docs/EDBG/protocoldocs/ch06s05s05.html -x atmel-docs/EDBG/protocoldocs/ch06s06.html -x atmel-docs/EDBG/protocoldocs/ch07s01.html -x atmel-docs/EDBG/protocoldocs/ch07s01s01.html -x atmel-docs/EDBG/protocoldocs/ch07s01s02.html -x atmel-docs/EDBG/protocoldocs/ch07s01s03.html -x atmel-docs/EDBG/protocoldocs/ch07s01s04.html -x atmel-docs/EDBG/protocoldocs/ch07s01s05.html -x atmel-docs/EDBG/protocoldocs/ch07s01s06.html -x atmel-docs/EDBG/protocoldocs/ch07s01s07.html -x atmel-docs/EDBG/protocoldocs/ch07s01s08.html -x atmel-docs/EDBG/protocoldocs/ch07s01s09.html -x atmel-docs/EDBG/protocoldocs/ch07s01s10.html -x atmel-docs/EDBG/protocoldocs/ch07s01s11.html -x atmel-docs/EDBG/protocoldocs/ch07s01s12.html -x atmel-docs/EDBG/protocoldocs/ch07s01s13.html -x atmel-docs/EDBG/protocoldocs/ch07s01s14.html -x atmel-docs/EDBG/protocoldocs/ch07s01s15.html -x atmel-docs/EDBG/protocoldocs/ch07s01s16.html -x atmel-docs/EDBG/protocoldocs/ch07s01s17.html -x atmel-docs/EDBG/protocoldocs/ch07s02.html -x atmel-docs/EDBG/protocoldocs/ch07s03.html -x atmel-docs/EDBG/protocoldocs/ch08s01.html -x atmel-docs/EDBG/protocoldocs/ch08s01s01.html -x atmel-docs/EDBG/protocoldocs/ch08s01s02.html -x atmel-docs/EDBG/protocoldocs/ch08s01s03.html -x atmel-docs/EDBG/protocoldocs/ch08s01s04.html -x atmel-docs/EDBG/protocoldocs/ch08s01s05.html -x atmel-docs/EDBG/protocoldocs/ch08s01s06.html -x atmel-docs/EDBG/protocoldocs/ch08s02.html -x atmel-docs/EDBG/protocoldocs/ch08s03.html -x atmel-docs/EDBG/protocoldocs/document.revisions.html -x atmel-docs/EDBG/protocoldocs/index.html -x atmel-docs/EDBG/protocoldocs/pr01.html -x atmel-docs/EDBG/protocoldocs/protocoldocs.Introduction.html -x atmel-docs/EDBG/protocoldocs/protocoldocs.avr32protocol.html -x atmel-docs/EDBG/protocoldocs/protocoldocs.avr8protocol.html -x atmel-docs/EDBG/protocoldocs/protocoldocs.avrispprotocol.html -x atmel-docs/EDBG/protocoldocs/protocoldocs.avrprotocol.Overview.html -x atmel-docs/EDBG/protocoldocs/protocoldocs.cmsis_dap.html -x atmel-docs/EDBG/protocoldocs/protocoldocs.edbg_ctrl_protocol.html -x atmel-docs/EDBG/protocoldocs/protocoldocs.tpiprotocol.html -x atmel-docs/EDBG/protocoldocs/search/htmlFileInfoList.js -x atmel-docs/EDBG/protocoldocs/search/index-1.js -x atmel-docs/EDBG/protocoldocs/search/index-2.js -x atmel-docs/EDBG/protocoldocs/search/index-3.js -x atmel-docs/EDBG/protocoldocs/search/l10n.js -x atmel-docs/EDBG/protocoldocs/search/nwSearchFnt.js -x atmel-docs/EDBG/protocoldocs/search/stemmers/en_stemmer.js -x atmel-docs/EDBG/protocoldocs/section_avr32_memtypes.html -x atmel-docs/EDBG/protocoldocs/section_avr32_setget_params.html -x atmel-docs/EDBG/protocoldocs/section_avr8_memtypes.html -x atmel-docs/EDBG/protocoldocs/section_avr8_query_contexts.html -x atmel-docs/EDBG/protocoldocs/section_avr8_setget_params.html -x atmel-docs/EDBG/protocoldocs/section_edbg_ctrl_setget_params.html -x atmel-docs/EDBG/protocoldocs/section_edbg_query_contexts.html -x atmel-docs/EDBG/protocoldocs/section_housekeeping_start_session.html -x atmel-docs/EDBG/protocoldocs/section_i5v_3yz_rl.html -x atmel-docs/EDBG/protocoldocs/section_jdx_m11_sl.html -x atmel-docs/EDBG/protocoldocs/section_qhb_x1c_sl.html -x atmel-docs/EDBG/protocoldocs/section_serial_trace.html -x atmel-docs/EDBG/protocoldocs/section_t1f_hb1_sl.html -x atmel-docs/JTAGICE-AVR060.pdf -x atmel-docs/JTAGICEmkII-AVR067.pdf -x atmel-docs/STK500-AVR061.pdf -x atmel-docs/STK500v2-AVR068.pdf -- build.sh -GPL-2.0-or-later src/CMakeLists.txt -- src/GNUmakefile.in -GPL-2.0-or-later src/Makefile.am -GPL-2.0-or-later src/arduino.c -GPL-2.0-or-later src/arduino.h -GPL-2.0-or-later src/avr.c -GPL-2.0-or-later src/avr910.c -GPL-2.0-or-later src/avr910.h -GPL-2.0-or-later src/avrcache.c -- src/avrdude.1 -- src/avrdude.conf.in -GPL-2.0-or-later src/avrdude.h -- src/avrdude.spec.in -GPL-2.0-or-later src/avrftdi.c -GPL-2.0-or-later src/avrftdi.h -- src/avrftdi_private.h -- src/avrftdi_tpi.c -- src/avrftdi_tpi.h -GPL-3.0-only src/avrintel.c (NOTE: autogen mkavrintel.pl) -GPL-3.0-only src/avrintel.h (NOTE: see above) -GPL-2.0-or-later src/avrpart.c -GPL-2.0-or-later src/bitbang.c -GPL-2.0-or-later src/bitbang.h -- src/build-helpers/package-version -- src/build-helpers/package-version.mk -- src/bootstrap -GPL-2.0-or-later src/buspirate.c -GPL-2.0-or-later src/buspirate.h -GPL-2.0-or-later src/butterfly.c -GPL-2.0-or-later src/butterfly.h -GPL-2.0-or-later src/ch341a.c -GPL-2.0-or-later src/ch341a.h -GPL-2.0-or-later src/cmake_config.h.in -GPL-2.0-or-later src/config.c -GPL-2.0-or-later src/config.h -GPL-2.0-or-later src/config_gram.y -GPL-2.0-or-later src/configure.ac -GPL-2.0-or-later src/configure.cmake -GPL-2.0-or-later src/confwin.c -- src/crc16.c -- src/crc16.h -GPL-2.0-or-later src/developer_opts.c -GPL-2.0-or-later src/developer_opts.h -GPL-2.0-or-later src/developer_opts_private.h -GPL-2.0-or-later src/dfu.c -GPL-2.0-or-later src/dfu.h -- src/doc/.gitignore -GPL-2.0-or-later src/doc/CMakeLists.txt -GPL-2.0-or-later src/doc/Makefile.am -- src/doc/avrdude.css -- src/doc/avrdude.texi -GPL-2.0-or-later src/doc/parts.cmake -- src/doc/parts_comments.txt -GPL-2.0-or-later src/doc/programmer_types.cmake -GPL-2.0-or-later src/doc/programmers.cmake -GPL-2.0-or-later src/dryrun.c -GPL-2.0-or-later src/dryrun.h -GPL-2.0-or-later src/dryrun_private.h -GPL-2.0-or-later src/fileio.c -GPL-2.0-or-later src/flip1.c -GPL-2.0-or-later src/flip1.h -GPL-2.0-or-later src/flip2.c -GPL-2.0-or-later src/flip2.h -GPL-2.0-or-later src/freebsd_ppi.h -GPL-2.0-or-later src/ft245r.c -- src/ft245r.h -GPL-2.0-or-later src/jtag3.c -GPL-2.0-or-later src/jtag3.h -GPL-2.0-or-later src/jtag3_private.h -GPL-2.0-or-later src/jtagmkI.c -GPL-2.0-or-later src/jtagmkI.h -GPL-2.0-or-later src/jtagmkII.c -GPL-2.0-or-later src/jtagmkII.h -GPL-2.0-or-later src/jtagmkII_private.h -GPL-2.0-or-later src/jtagmkI_private.h -GPL-2.0-or-later src/leds.c -GPL-2.0-or-later src/lexer.l -GPL-2.0-or-later src/libavrdude.h -GPL-2.0-or-later src/linux_ppdev.h -GPL-2.0-or-later src/linuxgpio.c -GPL-2.0-or-later src/linuxgpio.h -GPL-2.0-or-later src/linuxspi.c -GPL-2.0-or-later src/linuxspi.h -GPL-2.0-or-later src/lists.c -GPL-2.0-or-later src/main.c -GPL-2.0-or-later src/micronucleus.c -GPL-2.0-or-later src/micronucleus.h -BSD-2-Clause AND ISC src/msvc/getopt.c -PD src/msvc/getopt.h -PD src/msvc/gettimeofday.c -GPL-2.0-or-later src/msvc/msvc_compat.h -GPL-2.0-or-later src/msvc/readline.cpp -GPL-2.0-or-later src/msvc/readline/history.h -GPL-2.0-or-later src/msvc/readline/readline.h -GPL-2.0-or-later src/msvc/sys/time.h -GPL-2.0-or-later src/msvc/unistd.h -GPL-2.0-or-later src/msvc/usleep.cpp -GPL-2.0-or-later src/par.c -GPL-2.0-or-later src/par.h -GPL-2.0-or-later src/pgm.c -GPL-2.0-or-later src/pgm_type.c -GPL-2.0-or-later src/pickit2.c -GPL-2.0-or-later src/pickit2.h -GPL-2.0-or-later src/pindefs.c -GPL-2.0-or-later src/ppi.c -GPL-2.0-or-later src/ppi.h -GPL-2.0-or-later src/ppiwin.c -GPL-2.0-or-later src/ser_avrdoper.c -GPL-2.0-or-later src/ser_posix.c -GPL-2.0-or-later src/ser_win32.c -GPL-2.0-or-later src/serbb.h -GPL-2.0-or-later src/serbb_posix.c -GPL-2.0-or-later src/serbb_win32.c -GPL-2.0-or-later src/serialadapter.c -GPL-2.0-or-later src/serialupdi.c -GPL-2.0-or-later src/serialupdi.h -GPL-2.0-or-later src/solaris_ecpp.h -GPL-2.0-or-later src/stk500.c -GPL-2.0-or-later src/stk500.h -- src/stk500_private.h (#defines only) -GPL-2.0-or-later src/stk500generic.c -GPL-2.0-or-later src/stk500generic.h -GPL-2.0-or-later src/stk500v2.c -GPL-2.0-or-later src/stk500v2.h -- src/stk500v2_private.h (#defines and struct only) -GPL-2.0-or-later src/strutil.c -GPL-2.0-or-later src/teensy.c -GPL-2.0-or-later src/teensy.h -GPL-2.0-or-later src/term.c -GPL-2.0-or-later src/tpi.h -GPL-2.0-or-later src/update.c -GPL-2.0-or-later src/updi_constants.h -GPL-2.0-or-later src/updi_link.c -GPL-2.0-or-later src/updi_link.h -GPL-2.0-or-later src/updi_nvm.c -GPL-2.0-or-later src/updi_nvm.h -GPL-2.0-or-later src/updi_nvm_v0.c -GPL-2.0-or-later src/updi_nvm_v0.h -GPL-2.0-or-later src/updi_nvm_v2.c -GPL-2.0-or-later src/updi_nvm_v2.h -GPL-2.0-or-later src/updi_nvm_v3.c -GPL-2.0-or-later src/updi_nvm_v3.h -GPL-2.0-or-later src/updi_nvm_v4.c -GPL-2.0-or-later src/updi_nvm_v4.h -GPL-2.0-or-later src/updi_nvm_v5.c -GPL-2.0-or-later src/updi_nvm_v5.h -GPL-2.0-or-later src/updi_readwrite.c -GPL-2.0-or-later src/updi_readwrite.h -GPL-2.0-or-later src/updi_state.c -GPL-2.0-or-later src/updi_state.h -GPL-2.0-or-later src/urclock.c -GPL-2.0-or-later src/urclock.h -GPL-2.0-or-later src/urclock_hash.h -GPL-2.0-or-later src/urclock_private.h -GPL-2.0-or-later src/usb_hidapi.c -GPL-2.0-or-later src/usb_libusb.c -GPL-2.0-or-later src/usbasp.c -GPL-2.0-or-later src/usbasp.h -GPL-2.0-or-later src/usbdevs.h -GPL-2.0-or-later src/usbtiny.c -GPL-2.0-or-later src/usbtiny.h -WTFPLv2 OR MIT src/whereami.c -WTFPLv2 OR MIT src/whereami.h -GPL-2.0-or-later src/windows.rc.in -GPL-2.0-or-later src/wiring.c -GPL-2.0-or-later src/wiring.h -GPL-2.0-or-later src/xbee.c -GPL-2.0-or-later src/xbee.h -- supporting-docs/avrprog.pdf -GPL-2.0-or-later tools/atdf-to-avrdude.xslt -GPL-3.0-only tools/bootloader-hash -Beerware tools/build-mingw32.sh -GPL-2.0-or-later tools/get-dw-params.xsl -GPL-2.0-or-later tools/get-hv-params.xsl -GPL-2.0-or-later tools/get-stk600-cards.xsl -GPL-2.0-or-later tools/get-stk600-devices.xsl -GPL-3.0-only tools/test-avrdude -- tools/test_files/0xff_128B.hex -- tools/test_files/0xff_256B.hex -- tools/test_files/0xff_32B.hex -- tools/test_files/0xff_512B.hex -- tools/test_files/0xff_64B.hex -- tools/test_files/0xff_768B.hex -- tools/test_files/blink-mega2560+lext-test.hex -- tools/test_files/cola-vending-machine.raw -- tools/test_files/expected-flash-m2560.raw -- tools/test_files/generate_test_hex.sh -- tools/test_files/holes_eeprom_0xff_1024B.hex -- tools/test_files/holes_eeprom_0xff_128B.hex -- tools/test_files/holes_eeprom_0xff_2048B.hex -- tools/test_files/holes_eeprom_0xff_256B.hex -- tools/test_files/holes_eeprom_0xff_4096B.hex -- tools/test_files/holes_eeprom_0xff_512B.hex -- tools/test_files/holes_eeprom_0xff_64B.hex -- tools/test_files/holes_eeprom_0xff_8192B.hex -- tools/test_files/holes_flash_0xff_10240B.hex -- tools/test_files/holes_flash_0xff_1024B.hex -- tools/test_files/holes_flash_0xff_131072B.hex -- tools/test_files/holes_flash_0xff_139264B.hex -- tools/test_files/holes_flash_0xff_16384B.hex -- tools/test_files/holes_flash_0xff_204800B.hex -- tools/test_files/holes_flash_0xff_20480B.hex -- tools/test_files/holes_flash_0xff_2048B.hex -- tools/test_files/holes_flash_0xff_262144B.hex -- tools/test_files/holes_flash_0xff_270336B.hex -- tools/test_files/holes_flash_0xff_32768B.hex -- tools/test_files/holes_flash_0xff_36864B.hex -- tools/test_files/holes_flash_0xff_401408B.hex -- tools/test_files/holes_flash_0xff_40960B.hex -- tools/test_files/holes_flash_0xff_4096B.hex -- tools/test_files/holes_flash_0xff_49152B.hex -- tools/test_files/holes_flash_0xff_512B.hex -- tools/test_files/holes_flash_0xff_524288B.hex -- tools/test_files/holes_flash_0xff_65536B.hex -- tools/test_files/holes_flash_0xff_69632B.hex -- tools/test_files/holes_flash_0xff_8192B.hex -- tools/test_files/holes_pack_my_box_1024B.hex -- tools/test_files/holes_pack_my_box_128B.hex -- tools/test_files/holes_pack_my_box_2048B.hex -- tools/test_files/holes_pack_my_box_256B.hex -- tools/test_files/holes_pack_my_box_4096B.hex -- tools/test_files/holes_pack_my_box_512B.hex -- tools/test_files/holes_pack_my_box_64B.hex -- tools/test_files/holes_pack_my_box_8192B.hex -- tools/test_files/holes_rjmp_loops_10240B.hex -- tools/test_files/holes_rjmp_loops_1024B.hex -- tools/test_files/holes_rjmp_loops_131072B.hex -- tools/test_files/holes_rjmp_loops_139264B.hex -- tools/test_files/holes_rjmp_loops_16384B.hex -- tools/test_files/holes_rjmp_loops_204800B.hex -- tools/test_files/holes_rjmp_loops_20480B.hex -- tools/test_files/holes_rjmp_loops_2048B.hex -- tools/test_files/holes_rjmp_loops_262144B.hex -- tools/test_files/holes_rjmp_loops_270336B.hex -- tools/test_files/holes_rjmp_loops_32768B.hex -- tools/test_files/holes_rjmp_loops_36864B.hex -- tools/test_files/holes_rjmp_loops_401408B.hex -- tools/test_files/holes_rjmp_loops_40960B.hex -- tools/test_files/holes_rjmp_loops_4096B.hex -- tools/test_files/holes_rjmp_loops_49152B.hex -- tools/test_files/holes_rjmp_loops_512B.hex -- tools/test_files/holes_rjmp_loops_524288B.hex -- tools/test_files/holes_rjmp_loops_65536B.hex -- tools/test_files/holes_rjmp_loops_69632B.hex -- tools/test_files/holes_rjmp_loops_8192B.hex -- tools/test_files/holes_the_five_boxing_wizards_1024B.hex -- tools/test_files/holes_the_five_boxing_wizards_128B.hex -- tools/test_files/holes_the_five_boxing_wizards_2048B.hex -- tools/test_files/holes_the_five_boxing_wizards_256B.hex -- tools/test_files/holes_the_five_boxing_wizards_4096B.hex -- tools/test_files/holes_the_five_boxing_wizards_512B.hex -- tools/test_files/holes_the_five_boxing_wizards_64B.hex -- tools/test_files/holes_the_five_boxing_wizards_8192B.hex -- tools/test_files/lorem_ipsum_1024B.srec -- tools/test_files/lorem_ipsum_128B.srec -- tools/test_files/lorem_ipsum_2048B.srec -- tools/test_files/lorem_ipsum_256B.srec -- tools/test_files/lorem_ipsum_4096B.srec -- tools/test_files/lorem_ipsum_512B.srec -- tools/test_files/lorem_ipsum_64B.srec -- tools/test_files/lorem_ipsum_8192B.srec -- tools/test_files/random_data_128B.bin -- tools/test_files/random_data_256B.bin -- tools/test_files/random_data_32B.bin -- tools/test_files/random_data_512B.bin -- tools/test_files/random_data_64B.bin -- tools/test_files/random_data_768B.bin -- tools/test_files/rjmp_loops_for_bootloaders_10240B.hex -- tools/test_files/rjmp_loops_for_bootloaders_1024B.hex -- tools/test_files/rjmp_loops_for_bootloaders_131072B.hex -- tools/test_files/rjmp_loops_for_bootloaders_139264B.hex -- tools/test_files/rjmp_loops_for_bootloaders_16384B.hex -- tools/test_files/rjmp_loops_for_bootloaders_204800B.hex -- tools/test_files/rjmp_loops_for_bootloaders_20480B.hex -- tools/test_files/rjmp_loops_for_bootloaders_2048B.hex -- tools/test_files/rjmp_loops_for_bootloaders_262144B.hex -- tools/test_files/rjmp_loops_for_bootloaders_270336B.hex -- tools/test_files/rjmp_loops_for_bootloaders_32768B.hex -- tools/test_files/rjmp_loops_for_bootloaders_36864B.hex -- tools/test_files/rjmp_loops_for_bootloaders_401408B.hex -- tools/test_files/rjmp_loops_for_bootloaders_40960B.hex -- tools/test_files/rjmp_loops_for_bootloaders_4096B.hex -- tools/test_files/rjmp_loops_for_bootloaders_49152B.hex -- tools/test_files/rjmp_loops_for_bootloaders_512B.hex -- tools/test_files/rjmp_loops_for_bootloaders_524288B.hex -- tools/test_files/rjmp_loops_for_bootloaders_65536B.hex -- tools/test_files/rjmp_loops_for_bootloaders_69632B.hex -- tools/test_files/rjmp_loops_for_bootloaders_8192B.hex -- tools/test_files/the_quick_brown_fox_1024B.hex -- tools/test_files/the_quick_brown_fox_128B.hex -- tools/test_files/the_quick_brown_fox_2048B.hex -- tools/test_files/the_quick_brown_fox_256B.hex -- tools/test_files/the_quick_brown_fox_4096B.hex -- tools/test_files/the_quick_brown_fox_512B.hex -- tools/test_files/the_quick_brown_fox_64B.hex -- tools/test_files/the_quick_brown_fox_8192B.hex -- tools/test_files/urboot_m2560_1s_x16m0_115k2_uart0_rxe0_txe1_led+b7_pr_ee_ce.hex - -Local Variables: -tab-width: 25 -End: diff --git a/filter-tarball b/filter-tarball deleted file mode 100755 index d4a08ea..0000000 --- a/filter-tarball +++ /dev/null @@ -1,138 +0,0 @@ -#!/usr/bin/python3 - -"""filter-tarball - filter tarball allowing only known good licensing. - -Usage: filter-tarball - -Read the original tarball 'foo-1.2.3.tar.gz' and write a new tarball -'foo-1.2.3-filtered.tar.xz', containing only the files listed -with a license in the 'file-licensing' file. - -Example: - filter-tarball avrdude-7.2.tar.gz - - Produces a filtered tarball version as 'avrdude-7.2-filtered.tar.gz'. - -""" - - -import io -import sys -import tarfile -from pathlib import Path -from pprint import pprint - - -def load_license_map(license_file_path: Path) -> dict[str, str]: - """Load license map from file.""" - license_map = {} - - with open(license_file_path) as licf: - for line in licf.readlines(): - assert line[-1] == "\n" - line = line[:-1] - if not line: - continue - if line[0] == "#": - continue - items = line.split("\t") - if len(items) == 1: - continue - assert len(items) in [2, 3] - lic_str = items[0] - fname = items[1] - # ignore remarks in items[2] - pprint(items) - if lic_str: - license_map[fname] = lic_str - print - - pprint(license_map) - print - return license_map - - -README_TEXT = """\ -About this filtered tarball -=========================== - -This tarball was created from the original upstream tarball for Fedora -by removing some files due to potential licensing issues. - -The original tarball is available somewhere on - - https://github.com/avrdudes/avrdude -""" - - -def run_filter( - orig_tarfile: tarfile.TarFile, - filtered_tarfile: tarfile.TarFile, - tarbase: str, - license_map: dict[str, str], -): - """Filter orig tarball to filtered tarball.""" - for finfo in orig_tarfile: - match finfo.type: - case tarfile.REGTYPE: - assert finfo.name.startswith(f"{tarbase}/") - rel_fname = finfo.name.replace(f"{tarbase}/", "", 1) - if rel_fname not in license_map: - print("[ERR!]", finfo.name, "not in license map") - sys.exit(1) - match license_map[rel_fname]: - case "x": - print("[EXCL]", finfo.name) - case _: - filtered_tarfile.addfile( - finfo, orig_tarfile.extractfile(finfo) - ) - print("[COPY]", finfo.name, license_map[rel_fname]) - case tarfile.DIRTYPE: - if finfo.name.startswith(f"{tarbase}/atmel-docs"): - print("[SKIP]", finfo.name) - else: - print(" [DIR]", finfo.name) - filtered_tarfile.addfile(finfo) - case _: - raise ValueError(f"Unhandled TarInfo type: {finfo}") - - -def add_readme_file(filtered_tarfile: tarfile.TarFile, tarbase: str): - """Add README file to tarball describing filtered tarball.""" - readme_fname = f"{tarbase}/README.filtered-tarball" - print(" [ADD]", readme_fname, "(remarks on filtered tarball)") - readme_info = tarfile.TarInfo(readme_fname) - readme_bytes = io.BytesIO(README_TEXT.encode("utf-8")) - filtered_tarfile.addfile(readme_info, readme_bytes) - - -def main(argv=None): - """Run main program.""" - if argv is None: - argv = sys.argv[1:] - assert len(argv) == 1 - orig_tarball = Path(argv[0]) - assert orig_tarball.is_file() - assert orig_tarball.match("*.tar.gz") - tarbase = orig_tarball.name[: -len(".tar.gz")] - filtered_tarball = orig_tarball.parent / f"{tarbase}-filtered.tar.xz" - assert not filtered_tarball.exists() - - license_map = load_license_map(Path(__file__).parent / "file-licensing") - - try: - with ( - tarfile.open(orig_tarball) as orig_tarfile, - tarfile.open(filtered_tarball, "w:xz") as filtered_tarfile, - ): - run_filter(orig_tarfile, filtered_tarfile, tarbase, license_map) - add_readme_file(filtered_tarfile, tarbase) - except BaseException as err: - print("Removing incomplete tarball file:", filtered_tarball) - filtered_tarball.unlink(missing_ok=True) - raise err - - -if __name__ == "__main__": - main() diff --git a/sources b/sources index 28a200b..f92914d 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (avrdude-7.3-filtered.tar.xz) = b75cb77ea05b82441794c6e9c0f33e921db580b6993c578e1e27c9191bb0adea7967b004c48600e40283f38d84eb3a35447ed3a13b31de2970091ee3844f9cdc +SHA512 (avrdude-8.0.tar.gz) = c6fa365924aa8ad58a1b2f85c36ecc498c9b049b9bce455994752b8b13c06aa31ac6c8420eea4be307f42e64284c87ec08f75d6eaec640de7dc097c523d02dac From 5a2c1418f9e950b1c8607734800fb6d1cb399178 Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Wed, 28 Aug 2024 20:10:12 +0200 Subject: [PATCH 06/25] Enable libserialport support --- avrdude.spec | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/avrdude.spec b/avrdude.spec index 8191d42..5a70a0d 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -39,8 +39,9 @@ BuildRequires: elfutils-libelf-devel BuildRequires: hidapi-devel # Optional: Still build problems with gpiod in avrdude-7.3 # BuildRequires: libgpiod-devel -# Optional: libserialport -# BuildRequires: libserialport-devel +%if ((0%{?fedora} >= 1) || (0%{?rhel} >= 9)) +BuildRequires: libserialport-devel +%endif # EL does not have libhid-devel %if 0%{?fedora} >= 28 BuildRequires: libhid-devel @@ -145,6 +146,7 @@ install -p -m 644 -t $RPM_BUILD_ROOT%{_pkgdocdir} AUTHORS NEWS README.md %changelog * Sun Aug 25 2024 Hans Ulrich Niedermann - 8.0-1 - Update to avrdude-8.0 release (#2307778) +- Enable libserialport support * Wed Jul 17 2024 Fedora Release Engineering - 7.3-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From c9e07df91fece5ad4b1165e9ea947328051b77e8 Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Thu, 29 Aug 2024 23:53:49 +0200 Subject: [PATCH 07/25] Build without old pre-1.0 libusb --- avrdude.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index 5a70a0d..1f57dab 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -49,7 +49,6 @@ BuildRequires: libhid-devel BuildRequires: readline-devel BuildRequires: ncurses-devel BuildRequires: libftdi-devel -BuildRequires: pkgconfig(libusb) BuildRequires: pkgconfig(libusb-1.0) %if %{with docs} BuildRequires: texi2html @@ -147,6 +146,7 @@ install -p -m 644 -t $RPM_BUILD_ROOT%{_pkgdocdir} AUTHORS NEWS README.md * Sun Aug 25 2024 Hans Ulrich Niedermann - 8.0-1 - Update to avrdude-8.0 release (#2307778) - Enable libserialport support +- Build without old pre-1.0 libusb * Wed Jul 17 2024 Fedora Release Engineering - 7.3-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From 883b13cda6c4137acce4f8b7e4a0c8dcfe56a6e1 Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Thu, 29 Aug 2024 23:54:14 +0200 Subject: [PATCH 08/25] Build with libgpiod-devel --- avrdude.spec | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/avrdude.spec b/avrdude.spec index 1f57dab..c4d7bb8 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -37,8 +37,9 @@ BuildRequires: flex BuildRequires: bison BuildRequires: elfutils-libelf-devel BuildRequires: hidapi-devel -# Optional: Still build problems with gpiod in avrdude-7.3 -# BuildRequires: libgpiod-devel +%if ((0%{?fedora} >= 1) || (0%{?rhel} >= 8)) +BuildRequires: libgpiod-devel +%endif %if ((0%{?fedora} >= 1) || (0%{?rhel} >= 9)) BuildRequires: libserialport-devel %endif @@ -147,6 +148,7 @@ install -p -m 644 -t $RPM_BUILD_ROOT%{_pkgdocdir} AUTHORS NEWS README.md - Update to avrdude-8.0 release (#2307778) - Enable libserialport support - Build without old pre-1.0 libusb +- Build with libgpiod * Wed Jul 17 2024 Fedora Release Engineering - 7.3-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From 8a9cc261285b8ff362c07756bac35761874375bc Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Tue, 27 Aug 2024 20:36:03 +0200 Subject: [PATCH 09/25] Ship elf2tag script --- avrdude.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/avrdude.spec b/avrdude.spec index c4d7bb8..e651136 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -137,6 +137,7 @@ install -p -m 644 -t $RPM_BUILD_ROOT%{_pkgdocdir} AUTHORS NEWS README.md %config(noreplace) %{_sysconfdir}/%{name}/avrdude.conf %{_udevrulesdir}/%{udev_rules} %{_bindir}/%{name} +%{_bindir}/elf2tag %{_mandir}/man1/%{name}.1* %if %{with docs} %{_infodir}/%{name}.info* From 2498696fbaf2f7c1c0bc94ebfce06c72b395cb2c Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Fri, 30 Aug 2024 00:21:22 +0200 Subject: [PATCH 10/25] Use upstream location for config file --- ...ude-7.2-fedora-relocate-avrdude-conf.patch | 65 ------------------- avrdude.spec | 8 +-- 2 files changed, 2 insertions(+), 71 deletions(-) delete mode 100644 avrdude-7.2-fedora-relocate-avrdude-conf.patch diff --git a/avrdude-7.2-fedora-relocate-avrdude-conf.patch b/avrdude-7.2-fedora-relocate-avrdude-conf.patch deleted file mode 100644 index 28b0eff..0000000 --- a/avrdude-7.2-fedora-relocate-avrdude-conf.patch +++ /dev/null @@ -1,65 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 9ab5a832..104fcc5d 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -48,7 +48,7 @@ include(FetchContent) - include(FindPackageMessage) - include(GNUInstallDirs) - --set(CONFIG_DIR "${CMAKE_INSTALL_FULL_SYSCONFDIR}") -+set(CONFIG_DIR "${CMAKE_INSTALL_FULL_SYSCONFDIR}/${CMAKE_PROJECT_NAME}") - set(AVRDUDE_FULL_VERSION ${CMAKE_PROJECT_VERSION}) - - # ===================================== -diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt -index c10a77eb..1afdf495 100644 ---- a/src/CMakeLists.txt -+++ b/src/CMakeLists.txt -@@ -313,7 +313,9 @@ install(TARGETS libavrdude - ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} - PUBLIC_HEADER DESTINATION include COMPONENT dev - ) --install(FILES "${CMAKE_CURRENT_BINARY_DIR}/avrdude.conf" TYPE SYSCONF) -+install(FILES "${CMAKE_CURRENT_BINARY_DIR}/avrdude.conf" -+ DESTINATION "${CONFIG_DIR}" -+) - install(FILES "avrdude.1" - DESTINATION "${CMAKE_INSTALL_MANDIR}/man1" - ) -diff --git a/src/avrdude.1 b/src/avrdude.1 -index 2399f3d4..61962fb4 100644 ---- a/src/avrdude.1 -+++ b/src/avrdude.1 -@@ -423,7 +423,7 @@ contains all programmer and part definitions that - .Nm avrdude - knows about. - See the config file, located at --.Pa ${PREFIX}/etc/avrdude.conf , -+.Pa /etc/avrdude/avrdude.conf , - which contains a description of the format. - .Pp - If -@@ -1823,7 +1823,7 @@ On all other systems, the file is first looked up in - .Pa ../etc/ , - relative to the path of the executable, then in the same directory as - the executable itself, and finally in the system default location --.Pa ${PREFIX}/etc/avrdude.conf . -+.Pa /etc/avrdude/avrdude.conf . - .It Pa ${XDG_CONFIG_HOME}/avrdude/avrdude.rc - Local programmer and parts configuration file (per-user overrides); it follows the same syntax as - .Pa avrdude.conf ; -diff --git a/src/doc/avrdude.texi b/src/doc/avrdude.texi -index ecbcd58d..43730d3f 100644 ---- a/src/doc/avrdude.texi -+++ b/src/doc/avrdude.texi -@@ -540,8 +540,8 @@ two locations: - - @end enumerate - --If not found there, the lookup procedure becomes platform dependent. On FreeBSD --and Linux, AVRDUDE looks at @code{/usr/local/etc/avrdude.conf}. See Appendix A -+If not found there, the lookup procedure becomes platform dependent. On -+Fedora Linux, AVRDUDE looks at @code{/etc/avrdude/avrdude.conf}. See Appendix A - for the method of searching on Windows. - - If @var{config-file} is written as @var{+filename} diff --git a/avrdude.spec b/avrdude.spec index e651136..008fac7 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -27,10 +27,6 @@ Source2: README.fedora # Stop granting blanket access to all /dev/tty{ACM,USB}* devices Patch1: avrdude-udev-no-blanket-access.patch -# Move avrdude.conf from upstream location /usr/etc/ to /etc/avrdude/ -# FIXME: Eventually move avrdude.conf to /usr/share/avrdude/ -Patch: avrdude-7.2-fedora-relocate-avrdude-conf.patch - BuildRequires: cmake BuildRequires: gcc BuildRequires: flex @@ -133,8 +129,7 @@ install -p -m 644 -t $RPM_BUILD_ROOT%{_pkgdocdir} AUTHORS NEWS README.md %doc %{_pkgdocdir}/avrdude-html/ %doc %{_pkgdocdir}/avrdude.pdf %endif -%dir %{_sysconfdir}/%{name} -%config(noreplace) %{_sysconfdir}/%{name}/avrdude.conf +%config(noreplace) %{_sysconfdir}/avrdude.conf %{_udevrulesdir}/%{udev_rules} %{_bindir}/%{name} %{_bindir}/elf2tag @@ -150,6 +145,7 @@ install -p -m 644 -t $RPM_BUILD_ROOT%{_pkgdocdir} AUTHORS NEWS README.md - 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 * Wed Jul 17 2024 Fedora Release Engineering - 7.3-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From 6489176e7d356efc89272a3af3fae7399f53ed11 Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Tue, 27 Aug 2024 23:00:57 +0200 Subject: [PATCH 11/25] Add _deps check ensuring no downloads happened We try to disable upstream's downloading of extra source code, but if that ever fails, this makes sure nothing has been downloaded. --- avrdude.spec | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/avrdude.spec b/avrdude.spec index 008fac7..edc55f1 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -95,6 +95,13 @@ fi -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 From 388ea2667507c0b67ed86d467cbc2675d67bc87a Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Tue, 27 Aug 2024 23:47:29 +0200 Subject: [PATCH 12/25] Stop removing non-existent files Stop removing non-existent files which are not built any more. --- avrdude.spec | 5 ----- 1 file changed, 5 deletions(-) diff --git a/avrdude.spec b/avrdude.spec index edc55f1..81dadbb 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -110,11 +110,6 @@ fi rm -f $RPM_BUILD_ROOT%{_includedir}/libavrdude.h rm -f $RPM_BUILD_ROOT%{_infodir}/dir rm -f $RPM_BUILD_ROOT%{_libdir}/libavrdude.a -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 -rm -f $RPM_BUILD_ROOT%{_pkgdocdir}/avrdude.dvi -rm -f $RPM_BUILD_ROOT%{_pkgdocdir}/avrdude.ps 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} From 68a013db806ecf2cfad8f50c49c56dff8cc85eef Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Tue, 27 Aug 2024 23:50:12 +0200 Subject: [PATCH 13/25] Continue not shipping libavrdude library due to unstable API/ABI --- avrdude.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index 81dadbb..7995c0a 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -107,8 +107,11 @@ fi %install %cmake_install -rm -f $RPM_BUILD_ROOT%{_includedir}/libavrdude.h + rm -f $RPM_BUILD_ROOT%{_infodir}/dir + +rm -f $RPM_BUILD_ROOT%{_includedir}/libavrdude-avrintel.h +rm -f $RPM_BUILD_ROOT%{_includedir}/libavrdude.h 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} @@ -148,6 +151,7 @@ install -p -m 644 -t $RPM_BUILD_ROOT%{_pkgdocdir} AUTHORS NEWS README.md - 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 * Wed Jul 17 2024 Fedora Release Engineering - 7.3-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From 637888765f12a7ee931638e7681dc34d1a64ecd6 Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Tue, 27 Aug 2024 23:27:37 +0200 Subject: [PATCH 14/25] Disable building the SWIG based Python bindings --- avrdude.spec | 3 +++ 1 file changed, 3 insertions(+) diff --git a/avrdude.spec b/avrdude.spec index 7995c0a..6192fd2 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -77,6 +77,7 @@ 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 %build @@ -152,6 +153,8 @@ install -p -m 644 -t $RPM_BUILD_ROOT%{_pkgdocdir} AUTHORS NEWS README.md - 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 * Wed Jul 17 2024 Fedora Release Engineering - 7.3-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From 19eb383adb6da808e0863bb97459a0261f896a16 Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Thu, 29 Aug 2024 22:58:22 +0200 Subject: [PATCH 15/25] Align install dirs for better overview --- avrdude.spec | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/avrdude.spec b/avrdude.spec index 6192fd2..1ba69e0 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -114,11 +114,13 @@ rm -f $RPM_BUILD_ROOT%{_infodir}/dir rm -f $RPM_BUILD_ROOT%{_includedir}/libavrdude-avrintel.h rm -f $RPM_BUILD_ROOT%{_includedir}/libavrdude.h rm -f $RPM_BUILD_ROOT%{_libdir}/libavrdude.a -install -d -m 755 $RPM_BUILD_ROOT%{_udevrulesdir} + +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 -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 -p -m 644 -t $RPM_BUILD_ROOT%{_pkgdocdir} AUTHORS NEWS README.md %check From fdde2b4462b0974c1c91f8d1a7d426955d021ec6 Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Tue, 27 Aug 2024 23:49:42 +0200 Subject: [PATCH 16/25] Autopatch does not need numbered Patch lines --- avrdude.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index 1ba69e0..10863d8 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -25,7 +25,7 @@ Source1: avrdude.udev Source2: README.fedora # Stop granting blanket access to all /dev/tty{ACM,USB}* devices -Patch1: avrdude-udev-no-blanket-access.patch +Patch: avrdude-udev-no-blanket-access.patch BuildRequires: cmake BuildRequires: gcc From b7dee42ccf1f9b698c07d711cf6d35b55c5bd46d Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Tue, 27 Aug 2024 23:51:53 +0200 Subject: [PATCH 17/25] Add new set of autogenerated udev rules --- avrdude.spec | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/avrdude.spec b/avrdude.spec index 10863d8..fbba8b1 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -1,4 +1,5 @@ -%global udev_rules 70-avrdude_usbprog.rules +%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. @@ -18,7 +19,6 @@ Source0: https://github.com/avrdudes/%{name}/archive/refs/tags/v%{version # 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 -# FIXME: Create udev rules from the device list in avrdude.conf Source1: avrdude.udev # Remarks on the Fedora package for the users @@ -105,6 +105,13 @@ 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 + %install %cmake_install @@ -116,7 +123,8 @@ rm -f $RPM_BUILD_ROOT%{_includedir}/libavrdude.h 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} +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} install -p -m 644 %{SOURCE2} $RPM_BUILD_ROOT%{_pkgdocdir}/README.fedora @@ -138,7 +146,8 @@ install -p -m 644 -t $RPM_BUILD_ROOT%{_pkgdocdir} AUTHORS NEWS README.md %doc %{_pkgdocdir}/avrdude.pdf %endif %config(noreplace) %{_sysconfdir}/avrdude.conf -%{_udevrulesdir}/%{udev_rules} +%{_udevrulesdir}/%{udev_rules_old} +%{_udevrulesdir}/%{udev_rules_gen} %{_bindir}/%{name} %{_bindir}/elf2tag %{_mandir}/man1/%{name}.1* @@ -157,6 +166,7 @@ install -p -m 644 -t $RPM_BUILD_ROOT%{_pkgdocdir} AUTHORS NEWS README.md - 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 - 7.3-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From 790041b70e07967319b3df653dfd533767d26dfc Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Fri, 30 Aug 2024 01:40:43 +0200 Subject: [PATCH 18/25] Rebuild for forgotten new-sources --- .gitignore | 4 ++-- avrdude.spec | 5 ++++- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 0e26836..c1a74c9 100644 --- a/.gitignore +++ b/.gitignore @@ -12,5 +12,5 @@ /avrdude-7.*/ /avrdude-7.*.tar.gz /avrdude-7.*-filtered.tar.xz -/avrdude-8.*/ -/avrdude-8.*.tar.gz +/avrdude-8.0/ +/avrdude-8.0.tar.gz diff --git a/avrdude.spec b/avrdude.spec index fbba8b1..5bfec66 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -7,7 +7,7 @@ Name: avrdude Version: 8.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Software for programming Atmel AVR Microcontroller License: GPL-2.0-or-later AND GPL-3.0-only AND (WTFPL OR MIT) @@ -157,6 +157,9 @@ install -p -m 644 -t $RPM_BUILD_ROOT%{_pkgdocdir} AUTHORS NEWS README.md %changelog +* Thu Aug 29 2024 Hans Ulrich Niedermann - 8.0-2 +- Rebuilt for forgotten new-sources + * Sun Aug 25 2024 Hans Ulrich Niedermann - 8.0-1 - Update to avrdude-8.0 release (#2307778) - Enable libserialport support From 3554e3d06a3841c2ac137947f36f2bc12802f1fb Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Fri, 30 Aug 2024 16:59:44 +0200 Subject: [PATCH 19/25] Ship static copy of udev rules as s390x workaround --- avrdude.spec | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/avrdude.spec b/avrdude.spec index 5bfec66..a2ffd12 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -7,7 +7,7 @@ Name: avrdude Version: 8.0 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Software for programming Atmel AVR Microcontroller License: GPL-2.0-or-later AND GPL-3.0-only AND (WTFPL OR MIT) @@ -24,6 +24,12 @@ Source1: avrdude.udev # Remarks on the Fedora package for the users Source2: README.fedora +# Rule set as generated by running "avrdude -c '*/u'" with adapted +# actions. We ship this here instead of generating it at package +# build time because running avrdude at package build time fails on +# s390x. +Source3: %{name}-%{version}-autogen.rules + # Stop granting blanket access to all /dev/tty{ACM,USB}* devices Patch: avrdude-udev-no-blanket-access.patch @@ -105,12 +111,13 @@ 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 +# Generate set of udev rules from avrdude.conf. +# Commented out due to avrdude not running on s390x. +# %{__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 %install @@ -124,7 +131,7 @@ 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 -p -m 644 %{SOURCE3} $RPM_BUILD_ROOT%{_udevrulesdir}/%{udev_rules_gen} install -d -m 755 $RPM_BUILD_ROOT%{_pkgdocdir} install -p -m 644 %{SOURCE2} $RPM_BUILD_ROOT%{_pkgdocdir}/README.fedora @@ -157,6 +164,9 @@ install -p -m 644 -t $RPM_BUILD_ROOT%{_pkgdocdir} AUTHORS NEWS README.md %changelog +* Fri Aug 30 2024 Hans Ulrich Niedermann - 8.0-3 +- Ship static copy of udev rules as s390x workaround + * Thu Aug 29 2024 Hans Ulrich Niedermann - 8.0-2 - Rebuilt for forgotten new-sources From 89ebb3a08584346d2d752738dfcd9d75c255ed94 Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Fri, 30 Aug 2024 17:16:27 +0200 Subject: [PATCH 20/25] Actually ship static copy of udev rules as s390x workaround --- avrdude-8.0-autogen.rules | 216 ++++++++++++++++++++++++++++++++++++++ avrdude.spec | 5 +- 2 files changed, 220 insertions(+), 1 deletion(-) create mode 100644 avrdude-8.0-autogen.rules diff --git a/avrdude-8.0-autogen.rules b/avrdude-8.0-autogen.rules new file mode 100644 index 0000000..4e80963 --- /dev/null +++ b/avrdude-8.0-autogen.rules @@ -0,0 +1,216 @@ +ACTION!="add|change", GOTO="avrdude_end" + +# jtag2dw, jtag2fast, jtag2, jtag2isp, jtag2pdi, jtag2slow, jtagmkII, jtagmkII_avr32, jtag2avr32 +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2103", TAG+="uaccess" + +# avrispmkII, avrisp2 +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2104", TAG+="uaccess" + +# stk600, stk600hvsp, stk600pp +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2106", TAG+="uaccess" + +# dragon_dw, dragon_hvsp, dragon_isp, dragon_jtag, dragon_pdi, dragon_pp +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2107", TAG+="uaccess" + +# jtag3, jtag3dw, jtag3isp, jtag3pdi, jtag3updi +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2110", TAG+="uaccess" +KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2110", TAG+="uaccess" + +# xplainedpro, xplainedpro_jtag, xplainedpro_pdi, xplainedpro_updi +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2111", TAG+="uaccess" +KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2111", TAG+="uaccess" + +# jtag3, jtag3dw, jtag3isp, jtag3pdi, jtag3updi +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2140", TAG+="uaccess" +KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2140", TAG+="uaccess" + +# atmelice, atmelice_jtag, atmelice_dw, atmelice_isp, atmelice_pdi, atmelice_tpi, atmelice_updi +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2141", TAG+="uaccess" +KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2141", TAG+="uaccess" + +# powerdebugger, powerdebugger_jtag, powerdebugger_dw, powerdebugger_isp, powerdebugger_pdi, powerdebugger_tpi, powerdebugger_updi +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2144", TAG+="uaccess" +KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2144", TAG+="uaccess" + +# xplainedmini, xplainedmini_isp, xplainedmini_dw, xplainedmini_tpi, xplainedmini_updi +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2145", TAG+="uaccess" +KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2145", TAG+="uaccess" + +# pkobn_updi +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2175", TAG+="uaccess" +KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2175", TAG+="uaccess" + +# pickit4, pickit4_jtag, pickit4_isp, pickit4_pdi, pickit4_tpi, pickit4_updi +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2177", TAG+="uaccess" +KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2177", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2178", TAG+="uaccess" +KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2178", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2179", TAG+="uaccess" +KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2179", TAG+="uaccess" + +# snap, snap_jtag, snap_isp, snap_pdi, snap_tpi, snap_updi +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="217f", TAG+="uaccess" +KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="217f", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2180", TAG+="uaccess" +KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2180", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2181", TAG+="uaccess" +KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2181", TAG+="uaccess" + +# flip1, flip2 +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fd6", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fd7", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fda", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fdb", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fde", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fdf", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fe0", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fe1", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fe2", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fe3", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fe4", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fe5", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fe6", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fe7", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fe8", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fea", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fec", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fed", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fee", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fef", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ff0", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ff4", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ff7", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ff9", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ffa", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ffb", TAG+="uaccess" + +# usbasp, usbasp-clone +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="c7b4", TAG+="uaccess" + +# arduino-ft232r, diecimila, bwmega, ft232r, ft245r, tc2030, ttl232r, uncompatino +SUBSYSTEM=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", TAG+="uaccess" + +# 2232hio, avrftdi, 2232h, avrisp-u, flyswatter2, ft2232h, ft2232h_jtag, tigard +SUBSYSTEM=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6010", TAG+="uaccess" + +# 4232h, ft4232h +SUBSYSTEM=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6011", TAG+="uaccess" + +# c232hm, digilent-hs2, ft232h, ft232h_jtag, um232h +SUBSYSTEM=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6014", TAG+="uaccess" + +# ft231x, ft234x, ft230x +SUBSYSTEM=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6015", TAG+="uaccess" + +# tumpa, tumpa-b, tumpa_jtag +SUBSYSTEM=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="8a98", TAG+="uaccess" + +# ktlink +SUBSYSTEM=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="bbe2", TAG+="uaccess" + +# lm3s811 +SUBSYSTEM=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="bcd9", TAG+="uaccess" + +# jtagkey +SUBSYSTEM=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="cff8", TAG+="uaccess" + +# pickit2 +SUBSYSTEM=="usb", ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="0033", TAG+="uaccess" + +# pickit5_updi +SUBSYSTEM=="usb", ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="9012", TAG+="uaccess" + +# pickit4, pickit4_jtag, pickit4_isp, pickit4_pdi, pickit4_tpi, pickit4_updi +SUBSYSTEM=="usb", ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="9012", TAG+="uaccess" +KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="9012", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="9017", TAG+="uaccess" +KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="9017", TAG+="uaccess" + +# pickit5_updi +SUBSYSTEM=="usb", ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="9018", TAG+="uaccess" + +# snap, snap_jtag, snap_isp, snap_pdi, snap_tpi, snap_updi +SUBSYSTEM=="usb", ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="9018", TAG+="uaccess" +KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="9018", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="9019", TAG+="uaccess" +KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="9019", TAG+="uaccess" + +# pickit5_updi +SUBSYSTEM=="usb", ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="9036", TAG+="uaccess" + +# pl2303 +SUBSYSTEM=="usb", ATTRS{idVendor}=="067b", ATTRS{idProduct}=="2303", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="067b", ATTRS{idProduct}=="2304", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="067b", ATTRS{idProduct}=="23a3", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="067b", ATTRS{idProduct}=="23b3", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="067b", ATTRS{idProduct}=="23c3", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="067b", ATTRS{idProduct}=="23d3", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="067b", ATTRS{idProduct}=="23e3", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="067b", ATTRS{idProduct}=="23f3", TAG+="uaccess" + +# cp210x +SUBSYSTEM=="usb", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea60", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea70", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea71", TAG+="uaccess" + +# iseavrprog +SUBSYSTEM=="usb", ATTRS{idVendor}=="1209", ATTRS{idProduct}=="6570", TAG+="uaccess" + +# o-link +SUBSYSTEM=="usb", ATTRS{idVendor}=="1457", ATTRS{idProduct}=="5118", TAG+="uaccess" + +# teensy +SUBSYSTEM=="usb", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="0478", TAG+="uaccess" + +# usbasp, usbasp-clone +SUBSYSTEM=="usb", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="05dc", TAG+="uaccess" + +# nibobee +SUBSYSTEM=="usb", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="092f", TAG+="uaccess" + +# micronucleus +SUBSYSTEM=="usb", ATTRS{idVendor}=="16d0", ATTRS{idProduct}=="0753", TAG+="uaccess" + +# ehajo-isp +SUBSYSTEM=="usb", ATTRS{idVendor}=="16d0", ATTRS{idProduct}=="0ba5", TAG+="uaccess" + +# adafruit_gemma, usbtiny +SUBSYSTEM=="usb", ATTRS{idVendor}=="1781", ATTRS{idProduct}=="0c9f", TAG+="uaccess" + +# ch341a +SUBSYSTEM=="usb", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="5512", TAG+="uaccess" + +# ch342 +SUBSYSTEM=="usb", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="55d2", TAG+="uaccess" + +# ch343 +SUBSYSTEM=="usb", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="55d3", TAG+="uaccess" + +# ch9102 +SUBSYSTEM=="usb", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="55d4", TAG+="uaccess" + +# ch344 +SUBSYSTEM=="usb", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="55d5", TAG+="uaccess" + +# ch9103 +SUBSYSTEM=="usb", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="55d7", TAG+="uaccess" + +# ch347 +SUBSYSTEM=="usb", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="55da", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="55db", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="55dd", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="55de", TAG+="uaccess" + +# ch340 +SUBSYSTEM=="usb", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="7523", TAG+="uaccess" + +# arduinoisp +SUBSYSTEM=="usb", ATTRS{idVendor}=="2341", ATTRS{idProduct}=="0049", TAG+="uaccess" + +# arduino_gemma +SUBSYSTEM=="usb", ATTRS{idVendor}=="2341", ATTRS{idProduct}=="0c9f", TAG+="uaccess" + +# arduinoisporg +SUBSYSTEM=="usb", ATTRS{idVendor}=="2a03", ATTRS{idProduct}=="0049", TAG+="uaccess" + +LABEL="avrdude_end" diff --git a/avrdude.spec b/avrdude.spec index a2ffd12..68f51b4 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -7,7 +7,7 @@ Name: avrdude Version: 8.0 -Release: 3%{?dist} +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) @@ -164,6 +164,9 @@ install -p -m 644 -t $RPM_BUILD_ROOT%{_pkgdocdir} AUTHORS NEWS README.md %changelog +* Fri Aug 30 2024 Hans Ulrich Niedermann - 8.0-4 +- Actually ship static copy of udev rules as s390x workaround + * Fri Aug 30 2024 Hans Ulrich Niedermann - 8.0-3 - Ship static copy of udev rules as s390x workaround From 0b375292246502c422a032407d845d08f1a33b48 Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Sun, 1 Sep 2024 23:57:34 +0200 Subject: [PATCH 21/25] ExcludeArch: s390x (#2308947 avrdude is little endian only) --- avrdude-8.0-autogen.rules | 216 -------------------------------------- avrdude.spec | 31 +++--- 2 files changed, 16 insertions(+), 231 deletions(-) delete mode 100644 avrdude-8.0-autogen.rules diff --git a/avrdude-8.0-autogen.rules b/avrdude-8.0-autogen.rules deleted file mode 100644 index 4e80963..0000000 --- a/avrdude-8.0-autogen.rules +++ /dev/null @@ -1,216 +0,0 @@ -ACTION!="add|change", GOTO="avrdude_end" - -# jtag2dw, jtag2fast, jtag2, jtag2isp, jtag2pdi, jtag2slow, jtagmkII, jtagmkII_avr32, jtag2avr32 -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2103", TAG+="uaccess" - -# avrispmkII, avrisp2 -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2104", TAG+="uaccess" - -# stk600, stk600hvsp, stk600pp -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2106", TAG+="uaccess" - -# dragon_dw, dragon_hvsp, dragon_isp, dragon_jtag, dragon_pdi, dragon_pp -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2107", TAG+="uaccess" - -# jtag3, jtag3dw, jtag3isp, jtag3pdi, jtag3updi -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2110", TAG+="uaccess" -KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2110", TAG+="uaccess" - -# xplainedpro, xplainedpro_jtag, xplainedpro_pdi, xplainedpro_updi -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2111", TAG+="uaccess" -KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2111", TAG+="uaccess" - -# jtag3, jtag3dw, jtag3isp, jtag3pdi, jtag3updi -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2140", TAG+="uaccess" -KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2140", TAG+="uaccess" - -# atmelice, atmelice_jtag, atmelice_dw, atmelice_isp, atmelice_pdi, atmelice_tpi, atmelice_updi -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2141", TAG+="uaccess" -KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2141", TAG+="uaccess" - -# powerdebugger, powerdebugger_jtag, powerdebugger_dw, powerdebugger_isp, powerdebugger_pdi, powerdebugger_tpi, powerdebugger_updi -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2144", TAG+="uaccess" -KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2144", TAG+="uaccess" - -# xplainedmini, xplainedmini_isp, xplainedmini_dw, xplainedmini_tpi, xplainedmini_updi -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2145", TAG+="uaccess" -KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2145", TAG+="uaccess" - -# pkobn_updi -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2175", TAG+="uaccess" -KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2175", TAG+="uaccess" - -# pickit4, pickit4_jtag, pickit4_isp, pickit4_pdi, pickit4_tpi, pickit4_updi -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2177", TAG+="uaccess" -KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2177", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2178", TAG+="uaccess" -KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2178", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2179", TAG+="uaccess" -KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2179", TAG+="uaccess" - -# snap, snap_jtag, snap_isp, snap_pdi, snap_tpi, snap_updi -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="217f", TAG+="uaccess" -KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="217f", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2180", TAG+="uaccess" -KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2180", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2181", TAG+="uaccess" -KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2181", TAG+="uaccess" - -# flip1, flip2 -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fd6", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fd7", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fda", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fdb", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fde", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fdf", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fe0", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fe1", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fe2", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fe3", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fe4", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fe5", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fe6", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fe7", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fe8", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fea", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fec", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fed", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fee", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2fef", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ff0", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ff4", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ff7", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ff9", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ffa", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ffb", TAG+="uaccess" - -# usbasp, usbasp-clone -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="c7b4", TAG+="uaccess" - -# arduino-ft232r, diecimila, bwmega, ft232r, ft245r, tc2030, ttl232r, uncompatino -SUBSYSTEM=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", TAG+="uaccess" - -# 2232hio, avrftdi, 2232h, avrisp-u, flyswatter2, ft2232h, ft2232h_jtag, tigard -SUBSYSTEM=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6010", TAG+="uaccess" - -# 4232h, ft4232h -SUBSYSTEM=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6011", TAG+="uaccess" - -# c232hm, digilent-hs2, ft232h, ft232h_jtag, um232h -SUBSYSTEM=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6014", TAG+="uaccess" - -# ft231x, ft234x, ft230x -SUBSYSTEM=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6015", TAG+="uaccess" - -# tumpa, tumpa-b, tumpa_jtag -SUBSYSTEM=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="8a98", TAG+="uaccess" - -# ktlink -SUBSYSTEM=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="bbe2", TAG+="uaccess" - -# lm3s811 -SUBSYSTEM=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="bcd9", TAG+="uaccess" - -# jtagkey -SUBSYSTEM=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="cff8", TAG+="uaccess" - -# pickit2 -SUBSYSTEM=="usb", ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="0033", TAG+="uaccess" - -# pickit5_updi -SUBSYSTEM=="usb", ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="9012", TAG+="uaccess" - -# pickit4, pickit4_jtag, pickit4_isp, pickit4_pdi, pickit4_tpi, pickit4_updi -SUBSYSTEM=="usb", ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="9012", TAG+="uaccess" -KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="9012", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="9017", TAG+="uaccess" -KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="9017", TAG+="uaccess" - -# pickit5_updi -SUBSYSTEM=="usb", ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="9018", TAG+="uaccess" - -# snap, snap_jtag, snap_isp, snap_pdi, snap_tpi, snap_updi -SUBSYSTEM=="usb", ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="9018", TAG+="uaccess" -KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="9018", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="9019", TAG+="uaccess" -KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="9019", TAG+="uaccess" - -# pickit5_updi -SUBSYSTEM=="usb", ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="9036", TAG+="uaccess" - -# pl2303 -SUBSYSTEM=="usb", ATTRS{idVendor}=="067b", ATTRS{idProduct}=="2303", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="067b", ATTRS{idProduct}=="2304", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="067b", ATTRS{idProduct}=="23a3", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="067b", ATTRS{idProduct}=="23b3", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="067b", ATTRS{idProduct}=="23c3", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="067b", ATTRS{idProduct}=="23d3", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="067b", ATTRS{idProduct}=="23e3", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="067b", ATTRS{idProduct}=="23f3", TAG+="uaccess" - -# cp210x -SUBSYSTEM=="usb", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea60", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea70", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea71", TAG+="uaccess" - -# iseavrprog -SUBSYSTEM=="usb", ATTRS{idVendor}=="1209", ATTRS{idProduct}=="6570", TAG+="uaccess" - -# o-link -SUBSYSTEM=="usb", ATTRS{idVendor}=="1457", ATTRS{idProduct}=="5118", TAG+="uaccess" - -# teensy -SUBSYSTEM=="usb", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="0478", TAG+="uaccess" - -# usbasp, usbasp-clone -SUBSYSTEM=="usb", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="05dc", TAG+="uaccess" - -# nibobee -SUBSYSTEM=="usb", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="092f", TAG+="uaccess" - -# micronucleus -SUBSYSTEM=="usb", ATTRS{idVendor}=="16d0", ATTRS{idProduct}=="0753", TAG+="uaccess" - -# ehajo-isp -SUBSYSTEM=="usb", ATTRS{idVendor}=="16d0", ATTRS{idProduct}=="0ba5", TAG+="uaccess" - -# adafruit_gemma, usbtiny -SUBSYSTEM=="usb", ATTRS{idVendor}=="1781", ATTRS{idProduct}=="0c9f", TAG+="uaccess" - -# ch341a -SUBSYSTEM=="usb", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="5512", TAG+="uaccess" - -# ch342 -SUBSYSTEM=="usb", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="55d2", TAG+="uaccess" - -# ch343 -SUBSYSTEM=="usb", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="55d3", TAG+="uaccess" - -# ch9102 -SUBSYSTEM=="usb", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="55d4", TAG+="uaccess" - -# ch344 -SUBSYSTEM=="usb", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="55d5", TAG+="uaccess" - -# ch9103 -SUBSYSTEM=="usb", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="55d7", TAG+="uaccess" - -# ch347 -SUBSYSTEM=="usb", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="55da", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="55db", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="55dd", TAG+="uaccess" -SUBSYSTEM=="usb", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="55de", TAG+="uaccess" - -# ch340 -SUBSYSTEM=="usb", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="7523", TAG+="uaccess" - -# arduinoisp -SUBSYSTEM=="usb", ATTRS{idVendor}=="2341", ATTRS{idProduct}=="0049", TAG+="uaccess" - -# arduino_gemma -SUBSYSTEM=="usb", ATTRS{idVendor}=="2341", ATTRS{idProduct}=="0c9f", TAG+="uaccess" - -# arduinoisporg -SUBSYSTEM=="usb", ATTRS{idVendor}=="2a03", ATTRS{idProduct}=="0049", TAG+="uaccess" - -LABEL="avrdude_end" diff --git a/avrdude.spec b/avrdude.spec index 68f51b4..ec9748b 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -7,12 +7,17 @@ Name: avrdude Version: 8.0 -Release: 4%{?dist} +Release: 5%{?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 @@ -24,12 +29,6 @@ Source1: avrdude.udev # Remarks on the Fedora package for the users Source2: README.fedora -# Rule set as generated by running "avrdude -c '*/u'" with adapted -# actions. We ship this here instead of generating it at package -# build time because running avrdude at package build time fails on -# s390x. -Source3: %{name}-%{version}-autogen.rules - # Stop granting blanket access to all /dev/tty{ACM,USB}* devices Patch: avrdude-udev-no-blanket-access.patch @@ -111,13 +110,12 @@ fi %cmake_build -# Generate set of udev rules from avrdude.conf. -# Commented out due to avrdude not running on s390x. -# %{__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 +# 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 %install @@ -131,7 +129,7 @@ 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 %{SOURCE3} $RPM_BUILD_ROOT%{_udevrulesdir}/%{udev_rules_gen} +install -p -m 644 genset.rules $RPM_BUILD_ROOT%{_udevrulesdir}/%{udev_rules_gen} install -d -m 755 $RPM_BUILD_ROOT%{_pkgdocdir} install -p -m 644 %{SOURCE2} $RPM_BUILD_ROOT%{_pkgdocdir}/README.fedora @@ -164,6 +162,9 @@ install -p -m 644 -t $RPM_BUILD_ROOT%{_pkgdocdir} AUTHORS NEWS README.md %changelog +* Sun Sep 1 2024 Hans Ulrich Niedermann - 8.0-5 +- ExcludeArch: s390x (#2308947) + * Fri Aug 30 2024 Hans Ulrich Niedermann - 8.0-4 - Actually ship static copy of udev rules as s390x workaround From 76c4791419031e29f0dadbf93aad4d0a6b35d1a2 Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Mon, 2 Sep 2024 00:10:58 +0200 Subject: [PATCH 22/25] Add elf2tag.1 man page Add elf2tag.1 man page from upstream draft PR https://github.com/avrdudes/avrdude/pull/1916 --- avrdude.spec | 14 +++++++++--- elf2tag.1 | 63 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 74 insertions(+), 3 deletions(-) create mode 100644 elf2tag.1 diff --git a/avrdude.spec b/avrdude.spec index ec9748b..be46ce3 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -29,6 +29,9 @@ Source1: avrdude.udev # Remarks on the Fedora package for the users Source2: README.fedora +# Quick fix elf2tag man page +Source5: elf2tag.1 + # Stop granting blanket access to all /dev/tty{ACM,USB}* devices Patch: avrdude-udev-no-blanket-access.patch @@ -135,6 +138,9 @@ 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 @@ -153,17 +159,19 @@ install -p -m 644 -t $RPM_BUILD_ROOT%{_pkgdocdir} AUTHORS NEWS README.md %config(noreplace) %{_sysconfdir}/avrdude.conf %{_udevrulesdir}/%{udev_rules_old} %{_udevrulesdir}/%{udev_rules_gen} -%{_bindir}/%{name} +%{_bindir}/avrdude %{_bindir}/elf2tag -%{_mandir}/man1/%{name}.1* +%{_mandir}/man1/avrdude.1* +%{_mandir}/man1/elf2tag.1* %if %{with docs} -%{_infodir}/%{name}.info* +%{_infodir}/avrdude.info* %endif %changelog * Sun Sep 1 2024 Hans Ulrich Niedermann - 8.0-5 - ExcludeArch: s390x (#2308947) +- Add elf2tag.1 man page * Fri Aug 30 2024 Hans Ulrich Niedermann - 8.0-4 - Actually ship static copy of udev rules as s390x workaround diff --git a/elf2tag.1 b/elf2tag.1 new file mode 100644 index 0000000..765c364 --- /dev/null +++ b/elf2tag.1 @@ -0,0 +1,63 @@ +'\" 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 +.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 \ No newline at end of file From 1a5070245e0f6bf31d20a2641211109067803c67 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 16 Jan 2025 12:05:09 +0000 Subject: [PATCH 23/25] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild --- avrdude.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index be46ce3..7b57302 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -7,7 +7,7 @@ Name: avrdude Version: 8.0 -Release: 5%{?dist} +Release: 6%{?dist} Summary: Software for programming Atmel AVR Microcontroller License: GPL-2.0-or-later AND GPL-3.0-only AND (WTFPL OR MIT) @@ -169,6 +169,9 @@ install -p -m 644 %{SOURCE5} $RPM_BUILD_ROOT%{_mandir}/man1/elf2tag.1 %changelog +* Thu Jan 16 2025 Fedora Release Engineering - 8.0-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + * Sun Sep 1 2024 Hans Ulrich Niedermann - 8.0-5 - ExcludeArch: s390x (#2308947) - Add elf2tag.1 man page From a5783c89b885a8b9dc799ee3fa2545dc696406b3 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 23 Jul 2025 17:30:06 +0000 Subject: [PATCH 24/25] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild --- avrdude.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index 7b57302..54816a7 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -7,7 +7,7 @@ Name: avrdude Version: 8.0 -Release: 6%{?dist} +Release: 7%{?dist} Summary: Software for programming Atmel AVR Microcontroller License: GPL-2.0-or-later AND GPL-3.0-only AND (WTFPL OR MIT) @@ -169,6 +169,9 @@ install -p -m 644 %{SOURCE5} $RPM_BUILD_ROOT%{_mandir}/man1/elf2tag.1 %changelog +* Wed Jul 23 2025 Fedora Release Engineering - 8.0-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + * Thu Jan 16 2025 Fedora Release Engineering - 8.0-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild From e9e636381d993ff3ab654f4a823cc90e65116294 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 16 Jan 2026 04:12:13 +0000 Subject: [PATCH 25/25] Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild --- avrdude.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index 54816a7..58d5948 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -7,7 +7,7 @@ Name: avrdude Version: 8.0 -Release: 7%{?dist} +Release: 8%{?dist} Summary: Software for programming Atmel AVR Microcontroller License: GPL-2.0-or-later AND GPL-3.0-only AND (WTFPL OR MIT) @@ -169,6 +169,9 @@ install -p -m 644 %{SOURCE5} $RPM_BUILD_ROOT%{_mandir}/man1/elf2tag.1 %changelog +* Fri Jan 16 2026 Fedora Release Engineering - 8.0-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild + * Wed Jul 23 2025 Fedora Release Engineering - 8.0-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild