From 01f8e6508a98630a3e25b88a117e4ba8c80d2214 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Fri, 2 Aug 2013 21:50:39 -0500 Subject: [PATCH 01/87] - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild --- avrdude.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index 174fa2f..1b35753 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -1,6 +1,6 @@ Name: avrdude Version: 5.11.1 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Software for programming Atmel AVR Microcontroller Group: Applications/Engineering @@ -88,6 +88,9 @@ fi %changelog +* Sat Aug 03 2013 Fedora Release Engineering - 5.11.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + * Mon Jun 17 2013 jcapik@redhat.com - 5.11.1-4 - Fixing texi errors (causing builds to fail) - Introducing aarch64 support (#925062) From 262d5ab5c19fcec575c934523aeb33862f552b64 Mon Sep 17 00:00:00 2001 From: Hans de Goede Date: Sat, 8 Mar 2014 16:35:49 +0100 Subject: [PATCH 02/87] Upgrade to new upstream release 6.0.1 (rhbz#1056138) --- .gitignore | 1 + avrdude-udev-rules | 17 +++++++++++++++++ avrdude.spec | 34 ++++++++++++---------------------- sources | 2 +- 4 files changed, 31 insertions(+), 23 deletions(-) create mode 100644 avrdude-udev-rules diff --git a/.gitignore b/.gitignore index 4505726..f7a8ded 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ /avrdude-5.10.tar.gz /avrdude-5.11.tar.gz /avrdude-5.11.1.tar.gz +/avrdude-6.0.1.tar.gz diff --git a/avrdude-udev-rules b/avrdude-udev-rules new file mode 100644 index 0000000..14b7922 --- /dev/null +++ b/avrdude-udev-rules @@ -0,0 +1,17 @@ +# Atmel AVR ISP mkII +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2103", TAG+="uaccess" + +# Atmel Corp. JTAG ICE mkII +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2104", TAG+="uaccess" + +# Atmel Corp. JTAGICE3 +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2110", TAG+="uaccess" + +# usbprog bootloader +ATTRS{idVendor}=="1781", ATTRS{idProduct}=="0c62", TAG+="uaccess" + +# USBasp programmer +ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="05dc", TAG+="uaccess" + +# USBtiny programmer +ATTRS{idVendor}=="1781", ATTRS{idProduct}=="0c9f", TAG+="uaccess" diff --git a/avrdude.spec b/avrdude.spec index 1b35753..5711d4b 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -1,17 +1,15 @@ +%global udev_rules 70-avrdude_usbprog.rules + Name: avrdude -Version: 5.11.1 -Release: 5%{?dist} +Version: 6.0.1 +Release: 1%{?dist} Summary: Software for programming Atmel AVR Microcontroller Group: Applications/Engineering License: GPLv2+ URL: http://www.nongnu.org/avrdude Source0: http://download.savannah.gnu.org/releases/%{name}/%{name}-%{version}.tar.gz - -Patch0: avrdude-5.11.1-fix-texi-errors.patch -Patch1: avrdude-aarch64.patch - -BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX) +Source1: avrdude-udev-rules BuildRequires: flex BuildRequires: bison @@ -25,7 +23,6 @@ BuildRequires: tetex-dvips Requires(post): /sbin/install-info Requires(preun): /sbin/install-info - %description AVRDUDE is a program for programming Atmel's AVR CPU's. It can program the Flash and EEPROM, and where supported by the serial programming protocol, it @@ -37,10 +34,6 @@ particular chip. %prep %setup -q - -%patch0 -p1 -%patch1 -p1 - chmod -x safemode.c doc/TODO sed -i 's|/usr/local/etc/avrdude.conf|/etc/avrdude/avrdude.conf|g' doc/avrdude.texi avrdude.1 sed -i 's|/etc/avrdude.conf|/etc/avrdude/avrdude.conf|g' doc/avrdude.texi avrdude.1 @@ -50,28 +43,22 @@ iconv -f ISO88591 -t UTF8 < NEWS > NEWS~ mv NEWS~ NEWS - - %build %configure --enable-doc --sysconfdir=%{_sysconfdir}/%{name} make %install -rm -rf $RPM_BUILD_ROOT -make install DESTDIR=$RPM_BUILD_ROOT +%make_install mv $RPM_BUILD_ROOT/%{_docdir}/%{name}-%{version} installed-docs rm -f $RPM_BUILD_ROOT%{_infodir}/dir - - -%clean -rm -rf $RPM_BUILD_ROOT +install -d -m 755 $RPM_BUILD_ROOT%{_udevrulesdir} +install -p -m 644 %{SOURCE1} $RPM_BUILD_ROOT%{_udevrulesdir}/%{udev_rules} %post /sbin/install-info %{_infodir}/%{name}.info %{_infodir}/dir || : - %preun if [ $1 = 0 ]; then /sbin/install-info --delete %{_infodir}/%{name}.info %{_infodir}/dir || : @@ -79,15 +66,18 @@ fi %files -%defattr(-,root,root,-) %doc README AUTHORS ChangeLog* COPYING NEWS doc/TODO installed-docs/* %config(noreplace) %{_sysconfdir}/%{name} +%{_udevrulesdir}/%{udev_rules} %{_bindir}/%{name} %{_mandir}/man1/%{name}.1.gz %{_infodir}/%{name}.info.gz %changelog +* Sat Mar 08 2014 Hans de Goede - 6.0.1-1 +- Upgrade to new upstream release 6.0.1 (rhbz#1056138) + * Sat Aug 03 2013 Fedora Release Engineering - 5.11.1-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild diff --git a/sources b/sources index 6444582..a60cd78 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -3a43e288cb32916703b6945e3f260df9 avrdude-5.11.1.tar.gz +346ec2e46393a54ac152b95abf1d9850 avrdude-6.0.1.tar.gz From 1252afc9375f5da609fa2604365a9e8d300c4a64 Mon Sep 17 00:00:00 2001 From: Hans de Goede Date: Sat, 8 Mar 2014 16:53:33 +0100 Subject: [PATCH 03/87] Remove unused patches --- avrdude-5.11.1-fix-texi-errors.patch | 120 -- avrdude-aarch64.patch | 2663 -------------------------- 2 files changed, 2783 deletions(-) delete mode 100644 avrdude-5.11.1-fix-texi-errors.patch delete mode 100644 avrdude-aarch64.patch diff --git a/avrdude-5.11.1-fix-texi-errors.patch b/avrdude-5.11.1-fix-texi-errors.patch deleted file mode 100644 index cfe7f33..0000000 --- a/avrdude-5.11.1-fix-texi-errors.patch +++ /dev/null @@ -1,120 +0,0 @@ -diff -Naur avrdude-5.11.1.orig/doc/avrdude.texi avrdude-5.11.1/doc/avrdude.texi ---- avrdude-5.11.1.orig/doc/avrdude.texi 2013-06-17 21:01:46.000000000 +0200 -+++ avrdude-5.11.1/doc/avrdude.texi 2013-06-17 20:58:07.000000000 +0200 -@@ -643,7 +643,7 @@ - the exitspec arguments provided, as follows: - - @table @code --@itemx reset -+@item reset - The `/RESET' signal will be left activated at program exit, that is it - will be held low, in order to keep the MCU in reset state afterwards. - Note in particular that the programming algorithm for the AT90S1200 -@@ -652,24 +652,24 @@ - a previous invocation of AVRDUDE with this option specified is one of - the possible ways to guarantee this condition. - --@itemx noreset -+@item noreset - The `/RESET' line will be deactivated at program exit, thus allowing the - MCU target program to run while the programming hardware remains - connected. - --@itemx vcc -+@item vcc - This option will leave those parallel port pins active (i. e. high) that - can be used to supply `Vcc' power to the MCU. - --@itemx novcc -+@item novcc - This option will pull the `Vcc' pins of the parallel port down at - program exit. - --@itemx d_high -+@item d_high - This option will leave the 8 data pins on the parallel port active - (i. e. high). - --@itemx d_low -+@item d_low - This option will leave the 8 data pins on the parallel port inactive - (i. e. low). - -@@ -839,13 +839,13 @@ - The @var{op} field specifies what operation to perform: - - @table @code --@itemx r -+@item r - read the specified device memory and write to the specified file - --@itemx w -+@item w - read the specified file and write it to the specified device memory - --@itemx v -+@item v - read the specified device memory and the specified file and perform a verify operation - - @end table -@@ -855,16 +855,16 @@ - the file to read or write. Possible values are: - - @table @code --@itemx i -+@item i - Intel Hex - --@itemx s -+@item s - Motorola S-record - --@itemx r -+@item r - raw binary; little-endian byte order, in the case of the flash ROM data - --@itemx m -+@item m - immediate mode; actual byte values specified on the command line, - separated by commas or spaces in place of the @var{filename} field of - the @option{-U} option. This is useful -@@ -874,25 +874,25 @@ - leading zero (@code{0}) it is treated as octal. Otherwise, the value is - treated as decimal. - --@itemx a -+@item a - auto detect; valid for input only, and only if the input is not provided - at stdin. - --@itemx d -+@item d - decimal; this and the following formats are only valid on output. - They generate one line of output for the respective memory section, - forming a comma-separated list of the values. - This can be particularly useful for subsequent processing, like for - fuse bit settings. - --@itemx h -+@item h - hexadecimal; each value will get the string @emph{0x} prepended. - --@itemx o -+@item o - octal; each value will get a @emph{0} - prepended unless it is less than 8 in which case it gets no prefix. - --@itemx b -+@item b - binary; each value will get the string @emph{0b} prepended. - - @end table -@@ -1724,7 +1724,7 @@ - and socket card: - - @multitable @columnfractions .25 .25 .5 --Routing card @tab Socket card @tab Devices -+@item Routing card @tab Socket card @tab Devices - @item @code{} @tab @code{STK600-ATTINY10} @tab ATtiny4 ATtiny5 ATtiny9 ATtiny10 - @item @code{STK600-RC008T-2} @tab @code{STK600-DIP} @tab ATtiny11 ATtiny12 ATtiny13 ATtiny13A ATtiny25 ATtiny45 ATtiny85 - @item @code{STK600-RC008T-7} @tab @code{STK600-DIP} @tab ATtiny15 diff --git a/avrdude-aarch64.patch b/avrdude-aarch64.patch deleted file mode 100644 index 892e35b..0000000 --- a/avrdude-aarch64.patch +++ /dev/null @@ -1,2663 +0,0 @@ -diff -urN avrdude-5.11.1/config.guess avrdude-5.11.1-aarch64/config.guess ---- avrdude-5.11.1/config.guess 2011-09-15 09:48:27.000000000 -0500 -+++ avrdude-5.11.1-aarch64/config.guess 2013-03-07 19:38:13.898726946 -0600 -@@ -1,9 +1,10 @@ - #! /bin/sh - # Attempt to guess a canonical system name. - # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, --# 2000, 2001, 2002, 2003 Free Software Foundation, Inc. -+# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, -+# 2011, 2012 Free Software Foundation, Inc. - --timestamp='2003-07-02' -+timestamp='2012-09-25' - - # This file is free software; you can redistribute it and/or modify it - # under the terms of the GNU General Public License as published by -@@ -16,24 +17,24 @@ - # General Public License for more details. - # - # You should have received a copy of the GNU General Public License --# along with this program; if not, write to the Free Software --# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -+# along with this program; if not, see . - # - # As a special exception to the GNU General Public License, if you - # distribute this file as part of a program that contains a - # configuration script generated by Autoconf, you may include it under - # the same distribution terms that you use for the rest of that program. - --# Originally written by Per Bothner . --# Please send patches to . Submit a context --# diff and a properly formatted ChangeLog entry. -+ -+# Originally written by Per Bothner. Please send patches (context -+# diff format) to and include a ChangeLog -+# entry. - # - # This script attempts to guess a canonical system name similar to - # config.sub. If it succeeds, it prints the system name on stdout, and - # exits with 0. Otherwise, it exits with 1. - # --# The plan is that this can be called by configure scripts if you --# don't specify an explicit build system type. -+# You can get the latest version of this script from: -+# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD - - me=`echo "$0" | sed -e 's,.*/,,'` - -@@ -53,7 +54,8 @@ - GNU config.guess ($timestamp) - - Originally written by Per Bothner. --Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 -+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, -+2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 - Free Software Foundation, Inc. - - This is free software; see the source for copying conditions. There is NO -@@ -66,11 +68,11 @@ - while test $# -gt 0 ; do - case $1 in - --time-stamp | --time* | -t ) -- echo "$timestamp" ; exit 0 ;; -+ echo "$timestamp" ; exit ;; - --version | -v ) -- echo "$version" ; exit 0 ;; -+ echo "$version" ; exit ;; - --help | --h* | -h ) -- echo "$usage"; exit 0 ;; -+ echo "$usage"; exit ;; - -- ) # Stop option processing - shift; break ;; - - ) # Use stdin as input. -@@ -104,7 +106,7 @@ - trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; - trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; - : ${TMPDIR=/tmp} ; -- { tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || -+ { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || - { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || - { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || - { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; -@@ -123,7 +125,7 @@ - ;; - ,,*) CC_FOR_BUILD=$CC ;; - ,*,*) CC_FOR_BUILD=$HOST_CC ;; --esac ;' -+esac ; set_cc_for_build= ;' - - # This is needed to find uname on a Pyramid OSx when run in the BSD universe. - # (ghazi@noc.rutgers.edu 1994-08-24) -@@ -141,7 +143,7 @@ - case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in - *:NetBSD:*:*) - # NetBSD (nbsd) targets should (where applicable) match one or -- # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, -+ # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*, - # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently - # switched to ELF, *-*-netbsd* would select the old - # object file format. This provides both forward -@@ -158,6 +160,7 @@ - arm*) machine=arm-unknown ;; - sh3el) machine=shl-unknown ;; - sh3eb) machine=sh-unknown ;; -+ sh5el) machine=sh5le-unknown ;; - *) machine=${UNAME_MACHINE_ARCH}-unknown ;; - esac - # The Operating System including object format, if it has switched -@@ -166,7 +169,7 @@ - arm*|i386|m68k|ns32k|sh3*|sparc|vax) - eval $set_cc_for_build - if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ -- | grep __ELF__ >/dev/null -+ | grep -q __ELF__ - then - # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). - # Return netbsd for either. FIX? -@@ -176,7 +179,7 @@ - fi - ;; - *) -- os=netbsd -+ os=netbsd - ;; - esac - # The OS release -@@ -196,50 +199,36 @@ - # contains redundant information, the shorter form: - # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. - echo "${machine}-${os}${release}" -- exit 0 ;; -- amiga:OpenBSD:*:*) -- echo m68k-unknown-openbsd${UNAME_RELEASE} -- exit 0 ;; -- arc:OpenBSD:*:*) -- echo mipsel-unknown-openbsd${UNAME_RELEASE} -- exit 0 ;; -- hp300:OpenBSD:*:*) -- echo m68k-unknown-openbsd${UNAME_RELEASE} -- exit 0 ;; -- mac68k:OpenBSD:*:*) -- echo m68k-unknown-openbsd${UNAME_RELEASE} -- exit 0 ;; -- macppc:OpenBSD:*:*) -- echo powerpc-unknown-openbsd${UNAME_RELEASE} -- exit 0 ;; -- mvme68k:OpenBSD:*:*) -- echo m68k-unknown-openbsd${UNAME_RELEASE} -- exit 0 ;; -- mvme88k:OpenBSD:*:*) -- echo m88k-unknown-openbsd${UNAME_RELEASE} -- exit 0 ;; -- mvmeppc:OpenBSD:*:*) -- echo powerpc-unknown-openbsd${UNAME_RELEASE} -- exit 0 ;; -- pmax:OpenBSD:*:*) -- echo mipsel-unknown-openbsd${UNAME_RELEASE} -- exit 0 ;; -- sgi:OpenBSD:*:*) -- echo mipseb-unknown-openbsd${UNAME_RELEASE} -- exit 0 ;; -- sun3:OpenBSD:*:*) -- echo m68k-unknown-openbsd${UNAME_RELEASE} -- exit 0 ;; -- wgrisc:OpenBSD:*:*) -- echo mipsel-unknown-openbsd${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; -+ *:Bitrig:*:*) -+ UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'` -+ echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE} -+ exit ;; - *:OpenBSD:*:*) -- echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE} -- exit 0 ;; -+ UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` -+ echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} -+ exit ;; -+ *:ekkoBSD:*:*) -+ echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} -+ exit ;; -+ *:SolidBSD:*:*) -+ echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} -+ exit ;; -+ macppc:MirBSD:*:*) -+ echo powerpc-unknown-mirbsd${UNAME_RELEASE} -+ exit ;; -+ *:MirBSD:*:*) -+ echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} -+ exit ;; - alpha:OSF1:*:*) -- if test $UNAME_RELEASE = "V4.0"; then -+ case $UNAME_RELEASE in -+ *4.0) - UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` -- fi -+ ;; -+ *5.*) -+ UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` -+ ;; -+ esac - # According to Compaq, /usr/sbin/psrinfo has been available on - # OSF/1 and Tru64 systems produced since 1995. I hope that - # covers most systems running today. This code pipes the CPU -@@ -277,42 +266,52 @@ - "EV7.9 (21364A)") - UNAME_MACHINE="alphaev79" ;; - esac -+ # A Pn.n version is a patched version. - # A Vn.n version is a released version. - # A Tn.n version is a released field test version. - # A Xn.n version is an unreleased experimental baselevel. - # 1.2 uses "1.2" for uname -r. -- echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` -- exit 0 ;; -- Alpha*:OpenVMS:*:*) -- echo alpha-hp-vms -- exit 0 ;; -+ echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` -+ # Reset EXIT trap before exiting to avoid spurious non-zero exit code. -+ exitcode=$? -+ trap '' 0 -+ exit $exitcode ;; - Alpha\ *:Windows_NT*:*) - # How do we know it's Interix rather than the generic POSIX subsystem? - # Should we change UNAME_MACHINE based on the output of uname instead - # of the specific Alpha model? - echo alpha-pc-interix -- exit 0 ;; -+ exit ;; - 21064:Windows_NT:50:3) - echo alpha-dec-winnt3.5 -- exit 0 ;; -+ exit ;; - Amiga*:UNIX_System_V:4.0:*) - echo m68k-unknown-sysv4 -- exit 0;; -+ exit ;; - *:[Aa]miga[Oo][Ss]:*:*) - echo ${UNAME_MACHINE}-unknown-amigaos -- exit 0 ;; -+ exit ;; - *:[Mm]orph[Oo][Ss]:*:*) - echo ${UNAME_MACHINE}-unknown-morphos -- exit 0 ;; -+ exit ;; - *:OS/390:*:*) - echo i370-ibm-openedition -- exit 0 ;; -+ exit ;; -+ *:z/VM:*:*) -+ echo s390-ibm-zvmoe -+ exit ;; -+ *:OS400:*:*) -+ echo powerpc-ibm-os400 -+ exit ;; - arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) - echo arm-acorn-riscix${UNAME_RELEASE} -- exit 0;; -+ exit ;; -+ arm*:riscos:*:*|arm*:RISCOS:*:*) -+ echo arm-unknown-riscos -+ exit ;; - SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) - echo hppa1.1-hitachi-hiuxmpp -- exit 0;; -+ exit ;; - Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) - # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. - if test "`(/bin/universe) 2>/dev/null`" = att ; then -@@ -320,32 +319,51 @@ - else - echo pyramid-pyramid-bsd - fi -- exit 0 ;; -+ exit ;; - NILE*:*:*:dcosx) - echo pyramid-pyramid-svr4 -- exit 0 ;; -+ exit ;; - DRS?6000:unix:4.0:6*) - echo sparc-icl-nx6 -- exit 0 ;; -- DRS?6000:UNIX_SV:4.2*:7*) -+ exit ;; -+ DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) - case `/usr/bin/uname -p` in -- sparc) echo sparc-icl-nx7 && exit 0 ;; -+ sparc) echo sparc-icl-nx7; exit ;; - esac ;; -+ s390x:SunOS:*:*) -+ echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` -+ exit ;; - sun4H:SunOS:5.*:*) - echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` -- exit 0 ;; -+ exit ;; - sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) - echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` -- exit 0 ;; -- i86pc:SunOS:5.*:*) -- echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` -- exit 0 ;; -+ exit ;; -+ i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) -+ echo i386-pc-auroraux${UNAME_RELEASE} -+ exit ;; -+ i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) -+ eval $set_cc_for_build -+ SUN_ARCH="i386" -+ # If there is a compiler, see if it is configured for 64-bit objects. -+ # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. -+ # This test works for both compilers. -+ if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then -+ if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ -+ (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ -+ grep IS_64BIT_ARCH >/dev/null -+ then -+ SUN_ARCH="x86_64" -+ fi -+ fi -+ echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` -+ exit ;; - sun4*:SunOS:6*:*) - # According to config.sub, this is the proper way to canonicalize - # SunOS6. Hard to guess exactly what SunOS6 will be like, but - # it's likely to be more like Solaris than SunOS4. - echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` -- exit 0 ;; -+ exit ;; - sun4*:SunOS:*:*) - case "`/usr/bin/arch -k`" in - Series*|S4*) -@@ -354,10 +372,10 @@ - esac - # Japanese Language versions have a version number like `4.1.3-JL'. - echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` -- exit 0 ;; -+ exit ;; - sun3*:SunOS:*:*) - echo m68k-sun-sunos${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - sun*:*:4.2BSD:*) - UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` - test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 -@@ -369,10 +387,10 @@ - echo sparc-sun-sunos${UNAME_RELEASE} - ;; - esac -- exit 0 ;; -+ exit ;; - aushp:SunOS:*:*) - echo sparc-auspex-sunos${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - # The situation for MiNT is a little confusing. The machine name - # can be virtually everything (everything which is not - # "atarist" or "atariste" at least should have a processor -@@ -382,38 +400,41 @@ - # MiNT. But MiNT is downward compatible to TOS, so this should - # be no problem. - atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) -- echo m68k-atari-mint${UNAME_RELEASE} -- exit 0 ;; -+ echo m68k-atari-mint${UNAME_RELEASE} -+ exit ;; - atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) -- echo m68k-atari-mint${UNAME_RELEASE} -- exit 0 ;; -+ echo m68k-atari-mint${UNAME_RELEASE} -+ exit ;; - milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) -- echo m68k-milan-mint${UNAME_RELEASE} -- exit 0 ;; -+ echo m68k-milan-mint${UNAME_RELEASE} -+ exit ;; - hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) -- echo m68k-hades-mint${UNAME_RELEASE} -- exit 0 ;; -+ echo m68k-hades-mint${UNAME_RELEASE} -+ exit ;; - *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) -- echo m68k-unknown-mint${UNAME_RELEASE} -- exit 0 ;; -+ echo m68k-unknown-mint${UNAME_RELEASE} -+ exit ;; -+ m68k:machten:*:*) -+ echo m68k-apple-machten${UNAME_RELEASE} -+ exit ;; - powerpc:machten:*:*) - echo powerpc-apple-machten${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - RISC*:Mach:*:*) - echo mips-dec-mach_bsd4.3 -- exit 0 ;; -+ exit ;; - RISC*:ULTRIX:*:*) - echo mips-dec-ultrix${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - VAX*:ULTRIX*:*:*) - echo vax-dec-ultrix${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - 2020:CLIX:*:* | 2430:CLIX:*:*) - echo clipper-intergraph-clix${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - mips:*:*:UMIPS | mips:*:*:RISCos) - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c -@@ -437,35 +458,36 @@ - exit (-1); - } - EOF -- $CC_FOR_BUILD -o $dummy $dummy.c \ -- && $dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \ -- && exit 0 -+ $CC_FOR_BUILD -o $dummy $dummy.c && -+ dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && -+ SYSTEM_NAME=`$dummy $dummyarg` && -+ { echo "$SYSTEM_NAME"; exit; } - echo mips-mips-riscos${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - Motorola:PowerMAX_OS:*:*) - echo powerpc-motorola-powermax -- exit 0 ;; -+ exit ;; - Motorola:*:4.3:PL8-*) - echo powerpc-harris-powermax -- exit 0 ;; -+ exit ;; - Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) - echo powerpc-harris-powermax -- exit 0 ;; -+ exit ;; - Night_Hawk:Power_UNIX:*:*) - echo powerpc-harris-powerunix -- exit 0 ;; -+ exit ;; - m88k:CX/UX:7*:*) - echo m88k-harris-cxux7 -- exit 0 ;; -+ exit ;; - m88k:*:4*:R4*) - echo m88k-motorola-sysv4 -- exit 0 ;; -+ exit ;; - m88k:*:3*:R3*) - echo m88k-motorola-sysv3 -- exit 0 ;; -+ exit ;; - AViiON:dgux:*:*) -- # DG/UX returns AViiON for all architectures -- UNAME_PROCESSOR=`/usr/bin/uname -p` -+ # DG/UX returns AViiON for all architectures -+ UNAME_PROCESSOR=`/usr/bin/uname -p` - if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] - then - if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ -@@ -478,29 +500,29 @@ - else - echo i586-dg-dgux${UNAME_RELEASE} - fi -- exit 0 ;; -+ exit ;; - M88*:DolphinOS:*:*) # DolphinOS (SVR3) - echo m88k-dolphin-sysv3 -- exit 0 ;; -+ exit ;; - M88*:*:R3*:*) - # Delta 88k system running SVR3 - echo m88k-motorola-sysv3 -- exit 0 ;; -+ exit ;; - XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) - echo m88k-tektronix-sysv3 -- exit 0 ;; -+ exit ;; - Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) - echo m68k-tektronix-bsd -- exit 0 ;; -+ exit ;; - *:IRIX*:*:*) - echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` -- exit 0 ;; -+ exit ;; - ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. -- echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id -- exit 0 ;; # Note that: echo "'`uname -s`'" gives 'AIX ' -+ echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id -+ exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' - i*86:AIX:*:*) - echo i386-ibm-aix -- exit 0 ;; -+ exit ;; - ia64:AIX:*:*) - if [ -x /usr/bin/oslevel ] ; then - IBM_REV=`/usr/bin/oslevel` -@@ -508,7 +530,7 @@ - IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} - fi - echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} -- exit 0 ;; -+ exit ;; - *:AIX:2:3) - if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then - eval $set_cc_for_build -@@ -523,15 +545,19 @@ - exit(0); - } - EOF -- $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0 -- echo rs6000-ibm-aix3.2.5 -+ if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` -+ then -+ echo "$SYSTEM_NAME" -+ else -+ echo rs6000-ibm-aix3.2.5 -+ fi - elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then - echo rs6000-ibm-aix3.2.4 - else - echo rs6000-ibm-aix3.2 - fi -- exit 0 ;; -- *:AIX:*:[45]) -+ exit ;; -+ *:AIX:*:[4567]) - IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` - if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then - IBM_ARCH=rs6000 -@@ -544,28 +570,28 @@ - IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} - fi - echo ${IBM_ARCH}-ibm-aix${IBM_REV} -- exit 0 ;; -+ exit ;; - *:AIX:*:*) - echo rs6000-ibm-aix -- exit 0 ;; -+ exit ;; - ibmrt:4.4BSD:*|romp-ibm:BSD:*) - echo romp-ibm-bsd4.4 -- exit 0 ;; -+ exit ;; - ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and - echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to -- exit 0 ;; # report: romp-ibm BSD 4.3 -+ exit ;; # report: romp-ibm BSD 4.3 - *:BOSX:*:*) - echo rs6000-bull-bosx -- exit 0 ;; -+ exit ;; - DPX/2?00:B.O.S.:*:*) - echo m68k-bull-sysv3 -- exit 0 ;; -+ exit ;; - 9000/[34]??:4.3bsd:1.*:*) - echo m68k-hp-bsd -- exit 0 ;; -+ exit ;; - hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) - echo m68k-hp-bsd4.4 -- exit 0 ;; -+ exit ;; - 9000/[34678]??:HP-UX:*:*) - HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` - case "${UNAME_MACHINE}" in -@@ -574,52 +600,52 @@ - 9000/[678][0-9][0-9]) - if [ -x /usr/bin/getconf ]; then - sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` -- sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` -- case "${sc_cpu_version}" in -- 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 -- 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 -- 532) # CPU_PA_RISC2_0 -- case "${sc_kernel_bits}" in -- 32) HP_ARCH="hppa2.0n" ;; -- 64) HP_ARCH="hppa2.0w" ;; -+ sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` -+ case "${sc_cpu_version}" in -+ 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 -+ 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 -+ 532) # CPU_PA_RISC2_0 -+ case "${sc_kernel_bits}" in -+ 32) HP_ARCH="hppa2.0n" ;; -+ 64) HP_ARCH="hppa2.0w" ;; - '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 -- esac ;; -- esac -+ esac ;; -+ esac - fi - if [ "${HP_ARCH}" = "" ]; then - eval $set_cc_for_build -- sed 's/^ //' << EOF >$dummy.c -+ sed 's/^ //' << EOF >$dummy.c -+ -+ #define _HPUX_SOURCE -+ #include -+ #include - -- #define _HPUX_SOURCE -- #include -- #include -- -- int main () -- { -- #if defined(_SC_KERNEL_BITS) -- long bits = sysconf(_SC_KERNEL_BITS); -- #endif -- long cpu = sysconf (_SC_CPU_VERSION); -- -- switch (cpu) -- { -- case CPU_PA_RISC1_0: puts ("hppa1.0"); break; -- case CPU_PA_RISC1_1: puts ("hppa1.1"); break; -- case CPU_PA_RISC2_0: -- #if defined(_SC_KERNEL_BITS) -- switch (bits) -- { -- case 64: puts ("hppa2.0w"); break; -- case 32: puts ("hppa2.0n"); break; -- default: puts ("hppa2.0"); break; -- } break; -- #else /* !defined(_SC_KERNEL_BITS) */ -- puts ("hppa2.0"); break; -- #endif -- default: puts ("hppa1.0"); break; -- } -- exit (0); -- } -+ int main () -+ { -+ #if defined(_SC_KERNEL_BITS) -+ long bits = sysconf(_SC_KERNEL_BITS); -+ #endif -+ long cpu = sysconf (_SC_CPU_VERSION); -+ -+ switch (cpu) -+ { -+ case CPU_PA_RISC1_0: puts ("hppa1.0"); break; -+ case CPU_PA_RISC1_1: puts ("hppa1.1"); break; -+ case CPU_PA_RISC2_0: -+ #if defined(_SC_KERNEL_BITS) -+ switch (bits) -+ { -+ case 64: puts ("hppa2.0w"); break; -+ case 32: puts ("hppa2.0n"); break; -+ default: puts ("hppa2.0"); break; -+ } break; -+ #else /* !defined(_SC_KERNEL_BITS) */ -+ puts ("hppa2.0"); break; -+ #endif -+ default: puts ("hppa1.0"); break; -+ } -+ exit (0); -+ } - EOF - (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` - test -z "$HP_ARCH" && HP_ARCH=hppa -@@ -627,9 +653,19 @@ - esac - if [ ${HP_ARCH} = "hppa2.0w" ] - then -- # avoid double evaluation of $set_cc_for_build -- test -n "$CC_FOR_BUILD" || eval $set_cc_for_build -- if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E -) | grep __LP64__ >/dev/null -+ eval $set_cc_for_build -+ -+ # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating -+ # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler -+ # generating 64-bit code. GNU and HP use different nomenclature: -+ # -+ # $ CC_FOR_BUILD=cc ./config.guess -+ # => hppa2.0w-hp-hpux11.23 -+ # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess -+ # => hppa64-hp-hpux11.23 -+ -+ if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | -+ grep -q __LP64__ - then - HP_ARCH="hppa2.0w" - else -@@ -637,11 +673,11 @@ - fi - fi - echo ${HP_ARCH}-hp-hpux${HPUX_REV} -- exit 0 ;; -+ exit ;; - ia64:HP-UX:*:*) - HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` - echo ia64-hp-hpux${HPUX_REV} -- exit 0 ;; -+ exit ;; - 3050*:HI-UX:*:*) - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c -@@ -669,211 +705,269 @@ - exit (0); - } - EOF -- $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0 -+ $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && -+ { echo "$SYSTEM_NAME"; exit; } - echo unknown-hitachi-hiuxwe2 -- exit 0 ;; -+ exit ;; - 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) - echo hppa1.1-hp-bsd -- exit 0 ;; -+ exit ;; - 9000/8??:4.3bsd:*:*) - echo hppa1.0-hp-bsd -- exit 0 ;; -+ exit ;; - *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) - echo hppa1.0-hp-mpeix -- exit 0 ;; -+ exit ;; - hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) - echo hppa1.1-hp-osf -- exit 0 ;; -+ exit ;; - hp8??:OSF1:*:*) - echo hppa1.0-hp-osf -- exit 0 ;; -+ exit ;; - i*86:OSF1:*:*) - if [ -x /usr/sbin/sysversion ] ; then - echo ${UNAME_MACHINE}-unknown-osf1mk - else - echo ${UNAME_MACHINE}-unknown-osf1 - fi -- exit 0 ;; -+ exit ;; - parisc*:Lites*:*:*) - echo hppa1.1-hp-lites -- exit 0 ;; -+ exit ;; - C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) - echo c1-convex-bsd -- exit 0 ;; -+ exit ;; - C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) - if getsysinfo -f scalar_acc - then echo c32-convex-bsd - else echo c2-convex-bsd - fi -- exit 0 ;; -+ exit ;; - C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) - echo c34-convex-bsd -- exit 0 ;; -+ exit ;; - C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) - echo c38-convex-bsd -- exit 0 ;; -+ exit ;; - C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) - echo c4-convex-bsd -- exit 0 ;; -+ exit ;; - CRAY*Y-MP:*:*:*) - echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' -- exit 0 ;; -+ exit ;; - CRAY*[A-Z]90:*:*:*) - echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ - | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ - -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ - -e 's/\.[^.]*$/.X/' -- exit 0 ;; -+ exit ;; - CRAY*TS:*:*:*) - echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' -- exit 0 ;; -+ exit ;; - CRAY*T3E:*:*:*) - echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' -- exit 0 ;; -+ exit ;; - CRAY*SV1:*:*:*) - echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' -- exit 0 ;; -+ exit ;; - *:UNICOS/mp:*:*) -- echo nv1-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' -- exit 0 ;; -+ echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' -+ exit ;; - F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) - FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` -- FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` -- FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` -- echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" -- exit 0 ;; -+ FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` -+ FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` -+ echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" -+ exit ;; -+ 5000:UNIX_System_V:4.*:*) -+ FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` -+ FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` -+ echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" -+ exit ;; - i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) - echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - sparc*:BSD/OS:*:*) - echo sparc-unknown-bsdi${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - *:BSD/OS:*:*) - echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} -- exit 0 ;; -- *:FreeBSD:*:*|*:GNU/FreeBSD:*:*) -- # Determine whether the default compiler uses glibc. -- eval $set_cc_for_build -- sed 's/^ //' << EOF >$dummy.c -- #include -- #if __GLIBC__ >= 2 -- LIBC=gnu -- #else -- LIBC= -- #endif --EOF -- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=` -- # GNU/FreeBSD systems have a "k" prefix to indicate we are using -- # FreeBSD's kernel, but not the complete OS. -- case ${LIBC} in gnu) kernel_only='k' ;; esac -- echo ${UNAME_MACHINE}-unknown-${kernel_only}freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`${LIBC:+-$LIBC} -- exit 0 ;; -+ exit ;; -+ *:FreeBSD:*:*) -+ UNAME_PROCESSOR=`/usr/bin/uname -p` -+ case ${UNAME_PROCESSOR} in -+ amd64) -+ echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; -+ *) -+ echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; -+ esac -+ exit ;; - i*:CYGWIN*:*) - echo ${UNAME_MACHINE}-pc-cygwin -- exit 0 ;; -- i*:MINGW*:*) -+ exit ;; -+ *:MINGW64*:*) -+ echo ${UNAME_MACHINE}-pc-mingw64 -+ exit ;; -+ *:MINGW*:*) - echo ${UNAME_MACHINE}-pc-mingw32 -- exit 0 ;; -+ exit ;; -+ i*:MSYS*:*) -+ echo ${UNAME_MACHINE}-pc-msys -+ exit ;; -+ i*:windows32*:*) -+ # uname -m includes "-pc" on this system. -+ echo ${UNAME_MACHINE}-mingw32 -+ exit ;; - i*:PW*:*) - echo ${UNAME_MACHINE}-pc-pw32 -- exit 0 ;; -- x86:Interix*:[34]*) -- echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//' -- exit 0 ;; -+ exit ;; -+ *:Interix*:*) -+ case ${UNAME_MACHINE} in -+ x86) -+ echo i586-pc-interix${UNAME_RELEASE} -+ exit ;; -+ authenticamd | genuineintel | EM64T) -+ echo x86_64-unknown-interix${UNAME_RELEASE} -+ exit ;; -+ IA64) -+ echo ia64-unknown-interix${UNAME_RELEASE} -+ exit ;; -+ esac ;; - [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) - echo i${UNAME_MACHINE}-pc-mks -- exit 0 ;; -+ exit ;; -+ 8664:Windows_NT:*) -+ echo x86_64-pc-mks -+ exit ;; - i*:Windows_NT*:* | Pentium*:Windows_NT*:*) - # How do we know it's Interix rather than the generic POSIX subsystem? - # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we - # UNAME_MACHINE based on the output of uname instead of i386? - echo i586-pc-interix -- exit 0 ;; -+ exit ;; - i*:UWIN*:*) - echo ${UNAME_MACHINE}-pc-uwin -- exit 0 ;; -+ exit ;; -+ amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) -+ echo x86_64-unknown-cygwin -+ exit ;; - p*:CYGWIN*:*) - echo powerpcle-unknown-cygwin -- exit 0 ;; -+ exit ;; - prep*:SunOS:5.*:*) - echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` -- exit 0 ;; -+ exit ;; - *:GNU:*:*) -+ # the GNU system - echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` -- exit 0 ;; -+ exit ;; -+ *:GNU/*:*:*) -+ # other systems with GNU libc and userland -+ echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu -+ exit ;; - i*86:Minix:*:*) - echo ${UNAME_MACHINE}-pc-minix -- exit 0 ;; -+ exit ;; -+ aarch64:Linux:*:*) -+ echo ${UNAME_MACHINE}-unknown-linux-gnu -+ exit ;; -+ aarch64_be:Linux:*:*) -+ UNAME_MACHINE=aarch64_be -+ echo ${UNAME_MACHINE}-unknown-linux-gnu -+ exit ;; -+ alpha:Linux:*:*) -+ case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in -+ EV5) UNAME_MACHINE=alphaev5 ;; -+ EV56) UNAME_MACHINE=alphaev56 ;; -+ PCA56) UNAME_MACHINE=alphapca56 ;; -+ PCA57) UNAME_MACHINE=alphapca56 ;; -+ EV6) UNAME_MACHINE=alphaev6 ;; -+ EV67) UNAME_MACHINE=alphaev67 ;; -+ EV68*) UNAME_MACHINE=alphaev68 ;; -+ esac -+ objdump --private-headers /bin/sh | grep -q ld.so.1 -+ if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi -+ echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} -+ exit ;; - arm*:Linux:*:*) -+ eval $set_cc_for_build -+ if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ -+ | grep -q __ARM_EABI__ -+ then -+ echo ${UNAME_MACHINE}-unknown-linux-gnu -+ else -+ if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ -+ | grep -q __ARM_PCS_VFP -+ then -+ echo ${UNAME_MACHINE}-unknown-linux-gnueabi -+ else -+ echo ${UNAME_MACHINE}-unknown-linux-gnueabihf -+ fi -+ fi -+ exit ;; -+ avr32*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu -- exit 0 ;; -+ exit ;; - cris:Linux:*:*) -- echo cris-axis-linux-gnu -- exit 0 ;; -- ia64:Linux:*:*) -+ echo ${UNAME_MACHINE}-axis-linux-gnu -+ exit ;; -+ crisv32:Linux:*:*) -+ echo ${UNAME_MACHINE}-axis-linux-gnu -+ exit ;; -+ frv:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu -- exit 0 ;; -- m68*:Linux:*:*) -+ exit ;; -+ hexagon:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu -- exit 0 ;; -- mips:Linux:*:*) -+ exit ;; -+ i*86:Linux:*:*) -+ LIBC=gnu - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c -- #undef CPU -- #undef mips -- #undef mipsel -- #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) -- CPU=mipsel -- #else -- #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) -- CPU=mips -- #else -- CPU= -- #endif -+ #ifdef __dietlibc__ -+ LIBC=dietlibc - #endif - EOF -- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=` -- test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0 -- ;; -- mips64:Linux:*:*) -+ eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'` -+ echo "${UNAME_MACHINE}-pc-linux-${LIBC}" -+ exit ;; -+ ia64:Linux:*:*) -+ echo ${UNAME_MACHINE}-unknown-linux-gnu -+ exit ;; -+ m32r*:Linux:*:*) -+ echo ${UNAME_MACHINE}-unknown-linux-gnu -+ exit ;; -+ m68*:Linux:*:*) -+ echo ${UNAME_MACHINE}-unknown-linux-gnu -+ exit ;; -+ mips:Linux:*:* | mips64:Linux:*:*) - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #undef CPU -- #undef mips64 -- #undef mips64el -+ #undef ${UNAME_MACHINE} -+ #undef ${UNAME_MACHINE}el - #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) -- CPU=mips64el -+ CPU=${UNAME_MACHINE}el - #else - #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) -- CPU=mips64 -+ CPU=${UNAME_MACHINE} - #else - CPU= - #endif - #endif - EOF -- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=` -- test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0 -+ eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` -+ test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } - ;; -- ppc:Linux:*:*) -- echo powerpc-unknown-linux-gnu -- exit 0 ;; -- ppc64:Linux:*:*) -- echo powerpc64-unknown-linux-gnu -- exit 0 ;; -- alpha:Linux:*:*) -- case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in -- EV5) UNAME_MACHINE=alphaev5 ;; -- EV56) UNAME_MACHINE=alphaev56 ;; -- PCA56) UNAME_MACHINE=alphapca56 ;; -- PCA57) UNAME_MACHINE=alphapca56 ;; -- EV6) UNAME_MACHINE=alphaev6 ;; -- EV67) UNAME_MACHINE=alphaev67 ;; -- EV68*) UNAME_MACHINE=alphaev68 ;; -- esac -- objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null -- if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi -- echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} -- exit 0 ;; -+ or32:Linux:*:*) -+ echo ${UNAME_MACHINE}-unknown-linux-gnu -+ exit ;; -+ padre:Linux:*:*) -+ echo sparc-unknown-linux-gnu -+ exit ;; -+ parisc64:Linux:*:* | hppa64:Linux:*:*) -+ echo hppa64-unknown-linux-gnu -+ exit ;; - parisc:Linux:*:* | hppa:Linux:*:*) - # Look for CPU level - case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in -@@ -881,109 +975,71 @@ - PA8*) echo hppa2.0-unknown-linux-gnu ;; - *) echo hppa-unknown-linux-gnu ;; - esac -- exit 0 ;; -- parisc64:Linux:*:* | hppa64:Linux:*:*) -- echo hppa64-unknown-linux-gnu -- exit 0 ;; -+ exit ;; -+ ppc64:Linux:*:*) -+ echo powerpc64-unknown-linux-gnu -+ exit ;; -+ ppc:Linux:*:*) -+ echo powerpc-unknown-linux-gnu -+ exit ;; - s390:Linux:*:* | s390x:Linux:*:*) - echo ${UNAME_MACHINE}-ibm-linux -- exit 0 ;; -+ exit ;; - sh64*:Linux:*:*) -- echo ${UNAME_MACHINE}-unknown-linux-gnu -- exit 0 ;; -+ echo ${UNAME_MACHINE}-unknown-linux-gnu -+ exit ;; - sh*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu -- exit 0 ;; -+ exit ;; - sparc:Linux:*:* | sparc64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu -- exit 0 ;; -+ exit ;; -+ tile*:Linux:*:*) -+ echo ${UNAME_MACHINE}-unknown-linux-gnu -+ exit ;; -+ vax:Linux:*:*) -+ echo ${UNAME_MACHINE}-dec-linux-gnu -+ exit ;; - x86_64:Linux:*:*) -- echo x86_64-unknown-linux-gnu -- exit 0 ;; -- i*86:Linux:*:*) -- # The BFD linker knows what the default object file format is, so -- # first see if it will tell us. cd to the root directory to prevent -- # problems with other programs or directories called `ld' in the path. -- # Set LC_ALL=C to ensure ld outputs messages in English. -- ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \ -- | sed -ne '/supported targets:/!d -- s/[ ][ ]*/ /g -- s/.*supported targets: *// -- s/ .*// -- p'` -- case "$ld_supported_targets" in -- elf32-i386) -- TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" -- ;; -- a.out-i386-linux) -- echo "${UNAME_MACHINE}-pc-linux-gnuaout" -- exit 0 ;; -- coff-i386) -- echo "${UNAME_MACHINE}-pc-linux-gnucoff" -- exit 0 ;; -- "") -- # Either a pre-BFD a.out linker (linux-gnuoldld) or -- # one that does not give us useful --help. -- echo "${UNAME_MACHINE}-pc-linux-gnuoldld" -- exit 0 ;; -- esac -- # Determine whether the default compiler is a.out or elf -- eval $set_cc_for_build -- sed 's/^ //' << EOF >$dummy.c -- #include -- #ifdef __ELF__ -- # ifdef __GLIBC__ -- # if __GLIBC__ >= 2 -- LIBC=gnu -- # else -- LIBC=gnulibc1 -- # endif -- # else -- LIBC=gnulibc1 -- # endif -- #else -- #ifdef __INTEL_COMPILER -- LIBC=gnu -- #else -- LIBC=gnuaout -- #endif -- #endif --EOF -- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=` -- test x"${LIBC}" != x && echo "${UNAME_MACHINE}-pc-linux-${LIBC}" && exit 0 -- test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0 -- ;; -+ echo ${UNAME_MACHINE}-unknown-linux-gnu -+ exit ;; -+ xtensa*:Linux:*:*) -+ echo ${UNAME_MACHINE}-unknown-linux-gnu -+ exit ;; - i*86:DYNIX/ptx:4*:*) - # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. - # earlier versions are messed up and put the nodename in both - # sysname and nodename. - echo i386-sequent-sysv4 -- exit 0 ;; -+ exit ;; - i*86:UNIX_SV:4.2MP:2.*) -- # Unixware is an offshoot of SVR4, but it has its own version -- # number series starting with 2... -- # I am not positive that other SVR4 systems won't match this, -+ # Unixware is an offshoot of SVR4, but it has its own version -+ # number series starting with 2... -+ # I am not positive that other SVR4 systems won't match this, - # I just have to hope. -- rms. -- # Use sysv4.2uw... so that sysv4* matches it. -+ # Use sysv4.2uw... so that sysv4* matches it. - echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} -- exit 0 ;; -+ exit ;; - i*86:OS/2:*:*) - # If we were able to find `uname', then EMX Unix compatibility - # is probably installed. - echo ${UNAME_MACHINE}-pc-os2-emx -- exit 0 ;; -+ exit ;; - i*86:XTS-300:*:STOP) - echo ${UNAME_MACHINE}-unknown-stop -- exit 0 ;; -+ exit ;; - i*86:atheos:*:*) - echo ${UNAME_MACHINE}-unknown-atheos -- exit 0 ;; -- i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*) -+ exit ;; -+ i*86:syllable:*:*) -+ echo ${UNAME_MACHINE}-pc-syllable -+ exit ;; -+ i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) - echo i386-unknown-lynxos${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - i*86:*DOS:*:*) - echo ${UNAME_MACHINE}-pc-msdosdjgpp -- exit 0 ;; -+ exit ;; - i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) - UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` - if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then -@@ -991,15 +1047,16 @@ - else - echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} - fi -- exit 0 ;; -- i*86:*:5:[78]*) -+ exit ;; -+ i*86:*:5:[678]*) -+ # UnixWare 7.x, OpenUNIX and OpenServer 6. - case `/bin/uname -X | grep "^Machine"` in - *486*) UNAME_MACHINE=i486 ;; - *Pentium) UNAME_MACHINE=i586 ;; - *Pent*|*Celeron) UNAME_MACHINE=i686 ;; - esac - echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} -- exit 0 ;; -+ exit ;; - i*86:*:3.2:*) - if test -f /usr/options/cb.name; then - UNAME_REL=`sed -n 's/.*Version //p' /dev/null 2>&1 ; then - echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 - else # Add other i860-SVR4 vendors below as they are discovered. - echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 - fi -- exit 0 ;; -+ exit ;; - mini*:CTIX:SYS*5:*) - # "miniframe" - echo m68010-convergent-sysv -- exit 0 ;; -+ exit ;; - mc68k:UNIX:SYSTEM5:3.51m) - echo m68k-convergent-sysv -- exit 0 ;; -+ exit ;; - M680?0:D-NIX:5.3:*) - echo m68k-diab-dnix -- exit 0 ;; -- M68*:*:R3V[567]*:*) -- test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;; -- 3[34]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0) -+ exit ;; -+ M68*:*:R3V[5678]*:*) -+ test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; -+ 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0) - OS_REL='' - test -r /etc/.relid \ - && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` - /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ -- && echo i486-ncr-sysv4.3${OS_REL} && exit 0 -+ && { echo i486-ncr-sysv4.3${OS_REL}; exit; } - /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ -- && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;; -+ && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; - 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) -- /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ -- && echo i486-ncr-sysv4 && exit 0 ;; -+ /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ -+ && { echo i486-ncr-sysv4; exit; } ;; -+ NCR*:*:4.2:* | MPRAS*:*:4.2:*) -+ OS_REL='.3' -+ test -r /etc/.relid \ -+ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` -+ /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ -+ && { echo i486-ncr-sysv4.3${OS_REL}; exit; } -+ /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ -+ && { echo i586-ncr-sysv4.3${OS_REL}; exit; } -+ /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ -+ && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; - m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) - echo m68k-unknown-lynxos${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - mc68030:UNIX_System_V:4.*:*) - echo m68k-atari-sysv4 -- exit 0 ;; -+ exit ;; - TSUNAMI:LynxOS:2.*:*) - echo sparc-unknown-lynxos${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - rs6000:LynxOS:2.*:*) - echo rs6000-unknown-lynxos${UNAME_RELEASE} -- exit 0 ;; -- PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*) -+ exit ;; -+ PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) - echo powerpc-unknown-lynxos${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - SM[BE]S:UNIX_SV:*:*) - echo mips-dde-sysv${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - RM*:ReliantUNIX-*:*:*) - echo mips-sni-sysv4 -- exit 0 ;; -+ exit ;; - RM*:SINIX-*:*:*) - echo mips-sni-sysv4 -- exit 0 ;; -+ exit ;; - *:SINIX-*:*:*) - if uname -p 2>/dev/null >/dev/null ; then - UNAME_MACHINE=`(uname -p) 2>/dev/null` -@@ -1091,68 +1161,97 @@ - else - echo ns32k-sni-sysv - fi -- exit 0 ;; -- PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort -- # says -- echo i586-unisys-sysv4 -- exit 0 ;; -+ exit ;; -+ PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort -+ # says -+ echo i586-unisys-sysv4 -+ exit ;; - *:UNIX_System_V:4*:FTX*) - # From Gerald Hewes . - # How about differentiating between stratus architectures? -djm - echo hppa1.1-stratus-sysv4 -- exit 0 ;; -+ exit ;; - *:*:*:FTX*) - # From seanf@swdc.stratus.com. - echo i860-stratus-sysv4 -- exit 0 ;; -+ exit ;; -+ i*86:VOS:*:*) -+ # From Paul.Green@stratus.com. -+ echo ${UNAME_MACHINE}-stratus-vos -+ exit ;; - *:VOS:*:*) - # From Paul.Green@stratus.com. - echo hppa1.1-stratus-vos -- exit 0 ;; -+ exit ;; - mc68*:A/UX:*:*) - echo m68k-apple-aux${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - news*:NEWS-OS:6*:*) - echo mips-sony-newsos6 -- exit 0 ;; -+ exit ;; - R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) - if [ -d /usr/nec ]; then -- echo mips-nec-sysv${UNAME_RELEASE} -+ echo mips-nec-sysv${UNAME_RELEASE} - else -- echo mips-unknown-sysv${UNAME_RELEASE} -+ echo mips-unknown-sysv${UNAME_RELEASE} - fi -- exit 0 ;; -+ exit ;; - BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. - echo powerpc-be-beos -- exit 0 ;; -+ exit ;; - BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. - echo powerpc-apple-beos -- exit 0 ;; -+ exit ;; - BePC:BeOS:*:*) # BeOS running on Intel PC compatible. - echo i586-pc-beos -- exit 0 ;; -+ exit ;; -+ BePC:Haiku:*:*) # Haiku running on Intel PC compatible. -+ echo i586-pc-haiku -+ exit ;; -+ x86_64:Haiku:*:*) -+ echo x86_64-unknown-haiku -+ exit ;; - SX-4:SUPER-UX:*:*) - echo sx4-nec-superux${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - SX-5:SUPER-UX:*:*) - echo sx5-nec-superux${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - SX-6:SUPER-UX:*:*) - echo sx6-nec-superux${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; -+ SX-7:SUPER-UX:*:*) -+ echo sx7-nec-superux${UNAME_RELEASE} -+ exit ;; -+ SX-8:SUPER-UX:*:*) -+ echo sx8-nec-superux${UNAME_RELEASE} -+ exit ;; -+ SX-8R:SUPER-UX:*:*) -+ echo sx8r-nec-superux${UNAME_RELEASE} -+ exit ;; - Power*:Rhapsody:*:*) - echo powerpc-apple-rhapsody${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - *:Rhapsody:*:*) - echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - *:Darwin:*:*) -- case `uname -p` in -- *86) UNAME_PROCESSOR=i686 ;; -- powerpc) UNAME_PROCESSOR=powerpc ;; -+ UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown -+ case $UNAME_PROCESSOR in -+ i386) -+ eval $set_cc_for_build -+ if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then -+ if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ -+ (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ -+ grep IS_64BIT_ARCH >/dev/null -+ then -+ UNAME_PROCESSOR="x86_64" -+ fi -+ fi ;; -+ unknown) UNAME_PROCESSOR=powerpc ;; - esac - echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - *:procnto*:*:* | *:QNX:[0123456789]*:*) - UNAME_PROCESSOR=`uname -p` - if test "$UNAME_PROCESSOR" = "x86"; then -@@ -1160,22 +1259,28 @@ - UNAME_MACHINE=pc - fi - echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - *:QNX:*:4*) - echo i386-pc-qnx -- exit 0 ;; -- NSR-[DGKLNPTVW]:NONSTOP_KERNEL:*:*) -+ exit ;; -+ NEO-?:NONSTOP_KERNEL:*:*) -+ echo neo-tandem-nsk${UNAME_RELEASE} -+ exit ;; -+ NSE-*:NONSTOP_KERNEL:*:*) -+ echo nse-tandem-nsk${UNAME_RELEASE} -+ exit ;; -+ NSR-?:NONSTOP_KERNEL:*:*) - echo nsr-tandem-nsk${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - *:NonStop-UX:*:*) - echo mips-compaq-nonstopux -- exit 0 ;; -+ exit ;; - BS2000:POSIX*:*:*) - echo bs2000-siemens-sysv -- exit 0 ;; -+ exit ;; - DS/*:UNIX_System_V:*:*) - echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - *:Plan9:*:*) - # "uname -m" is not consistent, so use $cputype instead. 386 - # is converted to i386 for consistency with other x86 -@@ -1186,33 +1291,55 @@ - UNAME_MACHINE="$cputype" - fi - echo ${UNAME_MACHINE}-unknown-plan9 -- exit 0 ;; -+ exit ;; - *:TOPS-10:*:*) - echo pdp10-unknown-tops10 -- exit 0 ;; -+ exit ;; - *:TENEX:*:*) - echo pdp10-unknown-tenex -- exit 0 ;; -+ exit ;; - KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) - echo pdp10-dec-tops20 -- exit 0 ;; -+ exit ;; - XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) - echo pdp10-xkl-tops20 -- exit 0 ;; -+ exit ;; - *:TOPS-20:*:*) - echo pdp10-unknown-tops20 -- exit 0 ;; -+ exit ;; - *:ITS:*:*) - echo pdp10-unknown-its -- exit 0 ;; -+ exit ;; - SEI:*:*:SEIUX) -- echo mips-sei-seiux${UNAME_RELEASE} -- exit 0 ;; -+ echo mips-sei-seiux${UNAME_RELEASE} -+ exit ;; -+ *:DragonFly:*:*) -+ echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` -+ exit ;; -+ *:*VMS:*:*) -+ UNAME_MACHINE=`(uname -p) 2>/dev/null` -+ case "${UNAME_MACHINE}" in -+ A*) echo alpha-dec-vms ; exit ;; -+ I*) echo ia64-dec-vms ; exit ;; -+ V*) echo vax-dec-vms ; exit ;; -+ esac ;; -+ *:XENIX:*:SysV) -+ echo i386-pc-xenix -+ exit ;; -+ i*86:skyos:*:*) -+ echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' -+ exit ;; -+ i*86:rdos:*:*) -+ echo ${UNAME_MACHINE}-pc-rdos -+ exit ;; -+ i*86:AROS:*:*) -+ echo ${UNAME_MACHINE}-pc-aros -+ exit ;; -+ x86_64:VMkernel:*:*) -+ echo ${UNAME_MACHINE}-unknown-esx -+ exit ;; - esac - --#echo '(No uname command or uname output not recognized.)' 1>&2 --#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 -- - eval $set_cc_for_build - cat >$dummy.c < - printf ("m68k-sony-newsos%s\n", - #ifdef NEWSOS4 -- "4" -+ "4" - #else -- "" -+ "" - #endif -- ); exit (0); -+ ); exit (0); - #endif - #endif - - #if defined (__arm) && defined (__acorn) && defined (__unix) -- printf ("arm-acorn-riscix"); exit (0); -+ printf ("arm-acorn-riscix\n"); exit (0); - #endif - - #if defined (hp300) && !defined (hpux) -@@ -1328,11 +1455,12 @@ - } - EOF - --$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && $dummy && exit 0 -+$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && -+ { echo "$SYSTEM_NAME"; exit; } - - # Apollos put the system type in the environment. - --test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; } -+test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } - - # Convex versions that predate uname can use getsysinfo(1) - -@@ -1341,22 +1469,22 @@ - case `getsysinfo -f cpu_type` in - c1*) - echo c1-convex-bsd -- exit 0 ;; -+ exit ;; - c2*) - if getsysinfo -f scalar_acc - then echo c32-convex-bsd - else echo c2-convex-bsd - fi -- exit 0 ;; -+ exit ;; - c34*) - echo c34-convex-bsd -- exit 0 ;; -+ exit ;; - c38*) - echo c38-convex-bsd -- exit 0 ;; -+ exit ;; - c4*) - echo c4-convex-bsd -- exit 0 ;; -+ exit ;; - esac - fi - -@@ -1367,7 +1495,9 @@ - the operating system you are using. It is advised that you - download the most up to date version of the config scripts from - -- ftp://ftp.gnu.org/pub/gnu/config/ -+ http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD -+and -+ http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD - - If the version you run ($0) is already up to date, please - send the following data and any information you think might be -diff -urN avrdude-5.11.1/config.sub avrdude-5.11.1-aarch64/config.sub ---- avrdude-5.11.1/config.sub 2011-09-15 09:48:27.000000000 -0500 -+++ avrdude-5.11.1-aarch64/config.sub 2013-03-07 19:38:13.908725819 -0600 -@@ -1,9 +1,10 @@ - #! /bin/sh - # Configuration validation subroutine script. - # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, --# 2000, 2001, 2002, 2003 Free Software Foundation, Inc. -+# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, -+# 2011, 2012 Free Software Foundation, Inc. - --timestamp='2003-07-04' -+timestamp='2012-10-10' - - # This file is (in principle) common to ALL GNU software. - # The presence of a machine in this file suggests that SOME GNU software -@@ -20,23 +21,25 @@ - # GNU General Public License for more details. - # - # You should have received a copy of the GNU General Public License --# along with this program; if not, write to the Free Software --# Foundation, Inc., 59 Temple Place - Suite 330, --# Boston, MA 02111-1307, USA. -- -+# along with this program; if not, see . -+# - # As a special exception to the GNU General Public License, if you - # distribute this file as part of a program that contains a - # configuration script generated by Autoconf, you may include it under - # the same distribution terms that you use for the rest of that program. - -+ - # Please send patches to . Submit a context --# diff and a properly formatted ChangeLog entry. -+# diff and a properly formatted GNU ChangeLog entry. - # - # Configuration subroutine to validate and canonicalize a configuration type. - # Supply the specified configuration type as an argument. - # If it is invalid, we print an error message on stderr and exit with code 1. - # Otherwise, we print the canonical config type on stdout and succeed. - -+# You can get the latest version of this script from: -+# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD -+ - # This file is supposed to be the same for all GNU packages - # and recognize all the CPU types, system types and aliases - # that are meaningful with *any* GNU software. -@@ -70,7 +73,8 @@ - version="\ - GNU config.sub ($timestamp) - --Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 -+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, -+2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 - Free Software Foundation, Inc. - - This is free software; see the source for copying conditions. There is NO -@@ -83,11 +87,11 @@ - while test $# -gt 0 ; do - case $1 in - --time-stamp | --time* | -t ) -- echo "$timestamp" ; exit 0 ;; -+ echo "$timestamp" ; exit ;; - --version | -v ) -- echo "$version" ; exit 0 ;; -+ echo "$version" ; exit ;; - --help | --h* | -h ) -- echo "$usage"; exit 0 ;; -+ echo "$usage"; exit ;; - -- ) # Stop option processing - shift; break ;; - - ) # Use stdin as input. -@@ -99,7 +103,7 @@ - *local*) - # First pass through any local machine types. - echo $1 -- exit 0;; -+ exit ;; - - * ) - break ;; -@@ -118,10 +122,18 @@ - # Here we must recognize all the valid KERNEL-OS combinations. - maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` - case $maybe_os in -- nto-qnx* | linux-gnu* | kfreebsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*) -+ nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ -+ linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ -+ knetbsd*-gnu* | netbsd*-gnu* | \ -+ kopensolaris*-gnu* | \ -+ storm-chaos* | os2-emx* | rtmk-nova*) - os=-$maybe_os - basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` - ;; -+ android-linux) -+ os=-linux-android -+ basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown -+ ;; - *) - basic_machine=`echo $1 | sed 's/-[^-]*$//'` - if [ $basic_machine != $1 ] -@@ -144,10 +156,13 @@ - -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ - -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ - -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ -- -apple | -axis) -+ -apple | -axis | -knuth | -cray | -microblaze*) - os= - basic_machine=$1 - ;; -+ -bluegene*) -+ os=-cnk -+ ;; - -sim | -cisco | -oki | -wec | -winbond) - os= - basic_machine=$1 -@@ -162,13 +177,17 @@ - os=-chorusos - basic_machine=$1 - ;; -- -chorusrdb) -- os=-chorusrdb -+ -chorusrdb) -+ os=-chorusrdb - basic_machine=$1 -- ;; -+ ;; - -hiux*) - os=-hiuxwe2 - ;; -+ -sco6) -+ os=-sco5v6 -+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` -+ ;; - -sco5) - os=-sco3.2v5 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` -@@ -185,6 +204,10 @@ - # Don't forget version if it is 3.2v4 or newer. - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; -+ -sco5v6*) -+ # Don't forget version if it is 3.2v4 or newer. -+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` -+ ;; - -sco*) - os=-sco3.2v2 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` -@@ -202,6 +225,12 @@ - -isc*) - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; -+ -lynx*178) -+ os=-lynxos178 -+ ;; -+ -lynx*5) -+ os=-lynxos5 -+ ;; - -lynx*) - os=-lynxos - ;; -@@ -226,55 +255,103 @@ - # Some are omitted here because they have special meanings below. - 1750a | 580 \ - | a29k \ -+ | aarch64 | aarch64_be \ - | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ - | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ -- | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \ -+ | am33_2.0 \ -+ | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ -+ | be32 | be64 \ -+ | bfin \ - | c4x | clipper \ - | d10v | d30v | dlx | dsp16xx \ -- | fr30 | frv \ -+ | epiphany \ -+ | fido | fr30 | frv \ - | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ -+ | hexagon \ - | i370 | i860 | i960 | ia64 \ -- | ip2k \ -- | m32r | m68000 | m68k | m88k | mcore \ -+ | ip2k | iq2000 \ -+ | le32 | le64 \ -+ | lm32 \ -+ | m32c | m32r | m32rle | m68000 | m68k | m88k \ -+ | maxq | mb | microblaze | microblazeel | mcore | mep | metag \ - | mips | mipsbe | mipseb | mipsel | mipsle \ - | mips16 \ - | mips64 | mips64el \ -- | mips64vr | mips64vrel \ -+ | mips64octeon | mips64octeonel \ - | mips64orion | mips64orionel \ -+ | mips64r5900 | mips64r5900el \ -+ | mips64vr | mips64vrel \ - | mips64vr4100 | mips64vr4100el \ - | mips64vr4300 | mips64vr4300el \ - | mips64vr5000 | mips64vr5000el \ -+ | mips64vr5900 | mips64vr5900el \ - | mipsisa32 | mipsisa32el \ - | mipsisa32r2 | mipsisa32r2el \ - | mipsisa64 | mipsisa64el \ -+ | mipsisa64r2 | mipsisa64r2el \ - | mipsisa64sb1 | mipsisa64sb1el \ - | mipsisa64sr71k | mipsisa64sr71kel \ - | mipstx39 | mipstx39el \ - | mn10200 | mn10300 \ -+ | moxie \ -+ | mt \ - | msp430 \ -+ | nds32 | nds32le | nds32be \ -+ | nios | nios2 \ - | ns16k | ns32k \ -- | openrisc | or32 \ -+ | open8 \ -+ | or32 \ - | pdp10 | pdp11 | pj | pjl \ -- | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ -+ | powerpc | powerpc64 | powerpc64le | powerpcle \ - | pyramid \ -- | sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \ -+ | rl78 | rx \ -+ | score \ -+ | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ - | sh64 | sh64le \ -- | sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv9 | sparcv9b \ -- | strongarm \ -- | tahoe | thumb | tic4x | tic80 | tron \ -- | v850 | v850e \ -+ | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ -+ | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ -+ | spu \ -+ | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ -+ | ubicom32 \ -+ | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ - | we32k \ -- | x86 | xscale | xstormy16 | xtensa \ -- | z8k) -+ | x86 | xc16x | xstormy16 | xtensa \ -+ | z8k | z80) - basic_machine=$basic_machine-unknown - ;; -- m6811 | m68hc11 | m6812 | m68hc12) -- # Motorola 68HC11/12. -+ c54x) -+ basic_machine=tic54x-unknown -+ ;; -+ c55x) -+ basic_machine=tic55x-unknown -+ ;; -+ c6x) -+ basic_machine=tic6x-unknown -+ ;; -+ m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip) - basic_machine=$basic_machine-unknown - os=-none - ;; - m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) - ;; -+ ms1) -+ basic_machine=mt-unknown -+ ;; -+ -+ strongarm | thumb | xscale) -+ basic_machine=arm-unknown -+ ;; -+ xgate) -+ basic_machine=$basic_machine-unknown -+ os=-none -+ ;; -+ xscaleeb) -+ basic_machine=armeb-unknown -+ ;; -+ -+ xscaleel) -+ basic_machine=armel-unknown -+ ;; - - # We use `pc' rather than `unknown' - # because (1) that's what they normally are, and -@@ -290,58 +367,81 @@ - # Recognize the basic CPU types with company name. - 580-* \ - | a29k-* \ -+ | aarch64-* | aarch64_be-* \ - | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ - | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ -- | alphapca5[67]-* | alpha64pca5[67]-* | amd64-* | arc-* \ -+ | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ - | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ -- | avr-* \ -- | bs2000-* \ -- | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \ -- | clipper-* | cydra-* \ -+ | avr-* | avr32-* \ -+ | be32-* | be64-* \ -+ | bfin-* | bs2000-* \ -+ | c[123]* | c30-* | [cjt]90-* | c4x-* \ -+ | clipper-* | craynv-* | cydra-* \ - | d10v-* | d30v-* | dlx-* \ - | elxsi-* \ -- | f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \ -+ | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ - | h8300-* | h8500-* \ - | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ -+ | hexagon-* \ - | i*86-* | i860-* | i960-* | ia64-* \ -- | ip2k-* \ -- | m32r-* \ -+ | ip2k-* | iq2000-* \ -+ | le32-* | le64-* \ -+ | lm32-* \ -+ | m32c-* | m32r-* | m32rle-* \ - | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ -- | m88110-* | m88k-* | mcore-* \ -+ | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ -+ | microblaze-* | microblazeel-* \ - | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ - | mips16-* \ - | mips64-* | mips64el-* \ -- | mips64vr-* | mips64vrel-* \ -+ | mips64octeon-* | mips64octeonel-* \ - | mips64orion-* | mips64orionel-* \ -+ | mips64r5900-* | mips64r5900el-* \ -+ | mips64vr-* | mips64vrel-* \ - | mips64vr4100-* | mips64vr4100el-* \ - | mips64vr4300-* | mips64vr4300el-* \ - | mips64vr5000-* | mips64vr5000el-* \ -+ | mips64vr5900-* | mips64vr5900el-* \ - | mipsisa32-* | mipsisa32el-* \ - | mipsisa32r2-* | mipsisa32r2el-* \ - | mipsisa64-* | mipsisa64el-* \ -+ | mipsisa64r2-* | mipsisa64r2el-* \ - | mipsisa64sb1-* | mipsisa64sb1el-* \ - | mipsisa64sr71k-* | mipsisa64sr71kel-* \ - | mipstx39-* | mipstx39el-* \ -+ | mmix-* \ -+ | mt-* \ - | msp430-* \ -- | none-* | np1-* | nv1-* | ns16k-* | ns32k-* \ -+ | nds32-* | nds32le-* | nds32be-* \ -+ | nios-* | nios2-* \ -+ | none-* | np1-* | ns16k-* | ns32k-* \ -+ | open8-* \ - | orion-* \ - | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ -- | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ -+ | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ - | pyramid-* \ -- | romp-* | rs6000-* \ -- | sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \ -+ | rl78-* | romp-* | rs6000-* | rx-* \ -+ | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ - | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ -- | sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \ -- | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \ -- | tahoe-* | thumb-* \ -+ | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ -+ | sparclite-* \ -+ | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \ -+ | tahoe-* \ - | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ -+ | tile*-* \ - | tron-* \ -- | v850-* | v850e-* | vax-* \ -+ | ubicom32-* \ -+ | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ -+ | vax-* \ - | we32k-* \ -- | x86-* | x86_64-* | xps100-* | xscale-* | xstormy16-* \ -- | xtensa-* \ -+ | x86-* | x86_64-* | xc16x-* | xps100-* \ -+ | xstormy16-* | xtensa*-* \ - | ymp-* \ -- | z8k-*) -+ | z8k-* | z80-*) -+ ;; -+ # Recognize the basic CPU types without company name, with glob match. -+ xtensa*) -+ basic_machine=$basic_machine-unknown - ;; - # Recognize the various machine names and aliases which stand - # for a CPU type and a company and sometimes even an OS. -@@ -359,6 +459,9 @@ - basic_machine=a29k-amd - os=-udi - ;; -+ abacus) -+ basic_machine=abacus-unknown -+ ;; - adobe68k) - basic_machine=m68010-adobe - os=-scout -@@ -376,6 +479,9 @@ - amd64) - basic_machine=x86_64-pc - ;; -+ amd64-*) -+ basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` -+ ;; - amdahl) - basic_machine=580-amdahl - os=-sysv -@@ -399,6 +505,10 @@ - basic_machine=m68k-apollo - os=-bsd - ;; -+ aros) -+ basic_machine=i386-pc -+ os=-aros -+ ;; - aux) - basic_machine=m68k-apple - os=-aux -@@ -407,10 +517,35 @@ - basic_machine=ns32k-sequent - os=-dynix - ;; -+ blackfin) -+ basic_machine=bfin-unknown -+ os=-linux -+ ;; -+ blackfin-*) -+ basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` -+ os=-linux -+ ;; -+ bluegene*) -+ basic_machine=powerpc-ibm -+ os=-cnk -+ ;; -+ c54x-*) -+ basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` -+ ;; -+ c55x-*) -+ basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` -+ ;; -+ c6x-*) -+ basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` -+ ;; - c90) - basic_machine=c90-cray - os=-unicos - ;; -+ cegcc) -+ basic_machine=arm-unknown -+ os=-cegcc -+ ;; - convex-c1) - basic_machine=c1-convex - os=-bsd -@@ -435,12 +570,27 @@ - basic_machine=j90-cray - os=-unicos - ;; -+ craynv) -+ basic_machine=craynv-cray -+ os=-unicosmp -+ ;; -+ cr16 | cr16-*) -+ basic_machine=cr16-unknown -+ os=-elf -+ ;; - crds | unos) - basic_machine=m68k-crds - ;; -+ crisv32 | crisv32-* | etraxfs*) -+ basic_machine=crisv32-axis -+ ;; - cris | cris-* | etrax*) - basic_machine=cris-axis - ;; -+ crx) -+ basic_machine=crx-unknown -+ os=-elf -+ ;; - da30 | da30-*) - basic_machine=m68k-da30 - ;; -@@ -463,6 +613,14 @@ - basic_machine=m88k-motorola - os=-sysv3 - ;; -+ dicos) -+ basic_machine=i686-pc -+ os=-dicos -+ ;; -+ djgpp) -+ basic_machine=i586-pc -+ os=-msdosdjgpp -+ ;; - dpx20 | dpx20-*) - basic_machine=rs6000-bull - os=-bosx -@@ -574,7 +732,6 @@ - i370-ibm* | ibm*) - basic_machine=i370-ibm - ;; --# I'm not sure what "Sysv32" means. Should this be sysv3.2? - i*86v32) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv32 -@@ -613,6 +770,14 @@ - basic_machine=m68k-isi - os=-sysv - ;; -+ m68knommu) -+ basic_machine=m68k-unknown -+ os=-linux -+ ;; -+ m68knommu-*) -+ basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` -+ os=-linux -+ ;; - m88k-omron*) - basic_machine=m88k-omron - ;; -@@ -624,10 +789,21 @@ - basic_machine=ns32k-utek - os=-sysv - ;; -+ microblaze*) -+ basic_machine=microblaze-xilinx -+ ;; -+ mingw64) -+ basic_machine=x86_64-pc -+ os=-mingw64 -+ ;; - mingw32) - basic_machine=i386-pc - os=-mingw32 - ;; -+ mingw32ce) -+ basic_machine=arm-unknown -+ os=-mingw32ce -+ ;; - miniframe) - basic_machine=m68000-convergent - ;; -@@ -641,10 +817,6 @@ - mips3*) - basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown - ;; -- mmix*) -- basic_machine=mmix-knuth -- os=-mmixware -- ;; - monitor) - basic_machine=m68k-rom68k - os=-coff -@@ -657,10 +829,21 @@ - basic_machine=i386-pc - os=-msdos - ;; -+ ms1-*) -+ basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` -+ ;; -+ msys) -+ basic_machine=i386-pc -+ os=-msys -+ ;; - mvs) - basic_machine=i370-ibm - os=-mvs - ;; -+ nacl) -+ basic_machine=le32-unknown -+ os=-nacl -+ ;; - ncr3000) - basic_machine=i486-ncr - os=-sysv4 -@@ -725,9 +908,11 @@ - np1) - basic_machine=np1-gould - ;; -- nv1) -- basic_machine=nv1-cray -- os=-unicosmp -+ neo-tandem) -+ basic_machine=neo-tandem -+ ;; -+ nse-tandem) -+ basic_machine=nse-tandem - ;; - nsr-tandem) - basic_machine=nsr-tandem -@@ -736,9 +921,12 @@ - basic_machine=hppa1.1-oki - os=-proelf - ;; -- or32 | or32-*) -+ openrisc | openrisc-*) - basic_machine=or32-unknown -- os=-coff -+ ;; -+ os400) -+ basic_machine=powerpc-ibm -+ os=-os400 - ;; - OSE68000 | ose68000) - basic_machine=m68000-ericsson -@@ -756,6 +944,14 @@ - basic_machine=i860-intel - os=-osf - ;; -+ parisc) -+ basic_machine=hppa-unknown -+ os=-linux -+ ;; -+ parisc-*) -+ basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` -+ os=-linux -+ ;; - pbd) - basic_machine=sparc-tti - ;; -@@ -765,6 +961,12 @@ - pc532 | pc532-*) - basic_machine=ns32k-pc532 - ;; -+ pc98) -+ basic_machine=i386-pc -+ ;; -+ pc98-*) -+ basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` -+ ;; - pentium | p5 | k5 | k6 | nexgen | viac3) - basic_machine=i586-pc - ;; -@@ -794,9 +996,10 @@ - ;; - power) basic_machine=power-ibm - ;; -- ppc) basic_machine=powerpc-unknown -+ ppc | ppcbe) basic_machine=powerpc-unknown - ;; -- ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` -+ ppc-* | ppcbe-*) -+ basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ppcle | powerpclittle | ppc-le | powerpc-little) - basic_machine=powerpcle-unknown -@@ -821,6 +1024,10 @@ - basic_machine=i586-unknown - os=-pw32 - ;; -+ rdos) -+ basic_machine=i386-pc -+ os=-rdos -+ ;; - rom68k) - basic_machine=m68k-rom68k - os=-coff -@@ -847,6 +1054,10 @@ - sb1el) - basic_machine=mipsisa64sb1el-unknown - ;; -+ sde) -+ basic_machine=mipsisa32-sde -+ os=-elf -+ ;; - sei) - basic_machine=mips-sei - os=-seiux -@@ -858,6 +1069,9 @@ - basic_machine=sh-hitachi - os=-hms - ;; -+ sh5el) -+ basic_machine=sh5le-unknown -+ ;; - sh64) - basic_machine=sh64-unknown - ;; -@@ -879,6 +1093,9 @@ - basic_machine=i860-stratus - os=-sysv4 - ;; -+ strongarm-* | thumb-*) -+ basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` -+ ;; - sun2) - basic_machine=m68000-sun - ;; -@@ -935,17 +1152,9 @@ - basic_machine=t90-cray - os=-unicos - ;; -- tic54x | c54x*) -- basic_machine=tic54x-unknown -- os=-coff -- ;; -- tic55x | c55x*) -- basic_machine=tic55x-unknown -- os=-coff -- ;; -- tic6x | c6x*) -- basic_machine=tic6x-unknown -- os=-coff -+ tile*) -+ basic_machine=$basic_machine-unknown -+ os=-linux-gnu - ;; - tx39) - basic_machine=mipstx39-unknown -@@ -960,6 +1169,10 @@ - tower | tower-32) - basic_machine=m68k-ncr - ;; -+ tpf) -+ basic_machine=s390x-ibm -+ os=-tpf -+ ;; - udi29k) - basic_machine=a29k-amd - os=-udi -@@ -1003,9 +1216,16 @@ - basic_machine=hppa1.1-winbond - os=-proelf - ;; -+ xbox) -+ basic_machine=i686-pc -+ os=-mingw32 -+ ;; - xps | xps100) - basic_machine=xps100-honeywell - ;; -+ xscale-* | xscalee[bl]-*) -+ basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` -+ ;; - ymp) - basic_machine=ymp-cray - os=-unicos -@@ -1014,6 +1234,10 @@ - basic_machine=z8k-unknown - os=-sim - ;; -+ z80-*-coff) -+ basic_machine=z80-unknown -+ os=-sim -+ ;; - none) - basic_machine=none-none - os=-none -@@ -1033,6 +1257,9 @@ - romp) - basic_machine=romp-ibm - ;; -+ mmix) -+ basic_machine=mmix-knuth -+ ;; - rs6000) - basic_machine=rs6000-ibm - ;; -@@ -1049,13 +1276,10 @@ - we32k) - basic_machine=we32k-att - ;; -- sh3 | sh4 | sh[34]eb | sh[1234]le | sh[23]ele) -+ sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) - basic_machine=sh-unknown - ;; -- sh64) -- basic_machine=sh64-unknown -- ;; -- sparc | sparcv9 | sparcv9b) -+ sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) - basic_machine=sparc-sun - ;; - cydra) -@@ -1099,9 +1323,12 @@ - if [ x"$os" != x"" ] - then - case $os in -- # First match some system type aliases -- # that might get confused with valid system types. -+ # First match some system type aliases -+ # that might get confused with valid system types. - # -solaris* is a basic system type, with this one exception. -+ -auroraux) -+ os=-auroraux -+ ;; - -solaris1 | -solaris1.*) - os=`echo $os | sed -e 's|solaris1|sunos4|'` - ;; -@@ -1122,25 +1349,31 @@ - # Each alternative MUST END IN A *, to match a version number. - # -sysv* is not here because it comes later, after sysvr4. - -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ -- | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\ -- | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ -+ | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ -+ | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ -+ | -sym* | -kopensolaris* \ - | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ -- | -aos* \ -+ | -aos* | -aros* \ - | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ - | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ -- | -hiux* | -386bsd* | -netbsd* | -openbsd* | -kfreebsd* | -freebsd* | -riscix* \ -- | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ -+ | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ -+ | -bitrig* | -openbsd* | -solidbsd* \ -+ | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ -+ | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ - | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ - | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ -- | -chorusos* | -chorusrdb* \ -- | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ -- | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \ -+ | -chorusos* | -chorusrdb* | -cegcc* \ -+ | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ -+ | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ -+ | -linux-newlib* | -linux-musl* | -linux-uclibc* \ -+ | -uxpv* | -beos* | -mpeix* | -udk* \ - | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ - | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ - | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ - | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ - | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ -- | -powermax* | -dnix* | -nx6 | -nx7 | -sei*) -+ | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ -+ | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) - # Remember, each alternative MUST END IN *, to match a version number. - ;; - -qnx*) -@@ -1158,12 +1391,15 @@ - os=`echo $os | sed -e 's|nto|nto-qnx|'` - ;; - -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ -- | -windows* | -osx | -abug | -netware* | -os9* | -beos* \ -+ | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ - | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) - ;; - -mac*) - os=`echo $os | sed -e 's|mac|macos|'` - ;; -+ -linux-dietlibc) -+ os=-linux-dietlibc -+ ;; - -linux*) - os=`echo $os | sed -e 's|linux|linux-gnu|'` - ;; -@@ -1176,6 +1412,9 @@ - -opened*) - os=-openedition - ;; -+ -os400*) -+ os=-os400 -+ ;; - -wince*) - os=-wince - ;; -@@ -1197,6 +1436,9 @@ - -atheos*) - os=-atheos - ;; -+ -syllable*) -+ os=-syllable -+ ;; - -386bsd) - os=-bsd - ;; -@@ -1219,6 +1461,9 @@ - -sinix*) - os=-sysv4 - ;; -+ -tpf*) -+ os=-tpf -+ ;; - -triton*) - os=-sysv3 - ;; -@@ -1255,6 +1500,14 @@ - -kaos*) - os=-kaos - ;; -+ -zvmoe) -+ os=-zvmoe -+ ;; -+ -dicos*) -+ os=-dicos -+ ;; -+ -nacl*) -+ ;; - -none) - ;; - *) -@@ -1277,6 +1530,12 @@ - # system, and we'll never get to this point. - - case $basic_machine in -+ score-*) -+ os=-elf -+ ;; -+ spu-*) -+ os=-elf -+ ;; - *-acorn) - os=-riscix1.2 - ;; -@@ -1286,9 +1545,21 @@ - arm*-semi) - os=-aout - ;; -- c4x-* | tic4x-*) -- os=-coff -- ;; -+ c4x-* | tic4x-*) -+ os=-coff -+ ;; -+ hexagon-*) -+ os=-elf -+ ;; -+ tic54x-*) -+ os=-coff -+ ;; -+ tic55x-*) -+ os=-coff -+ ;; -+ tic6x-*) -+ os=-coff -+ ;; - # This must come before the *-dec entry. - pdp10-*) - os=-tops20 -@@ -1307,13 +1578,13 @@ - ;; - m68000-sun) - os=-sunos3 -- # This also exists in the configure program, but was not the -- # default. -- # os=-sunos4 - ;; - m68*-cisco) - os=-aout - ;; -+ mep-*) -+ os=-elf -+ ;; - mips*-cisco) - os=-elf - ;; -@@ -1332,9 +1603,15 @@ - *-be) - os=-beos - ;; -+ *-haiku) -+ os=-haiku -+ ;; - *-ibm) - os=-aix - ;; -+ *-knuth) -+ os=-mmixware -+ ;; - *-wec) - os=-proelf - ;; -@@ -1437,7 +1714,7 @@ - -sunos*) - vendor=sun - ;; -- -aix*) -+ -cnk*|-aix*) - vendor=ibm - ;; - -beos*) -@@ -1467,9 +1744,15 @@ - -mvs* | -opened*) - vendor=ibm - ;; -+ -os400*) -+ vendor=ibm -+ ;; - -ptx*) - vendor=sequent - ;; -+ -tpf*) -+ vendor=ibm -+ ;; - -vxsim* | -vxworks* | -windiss*) - vendor=wrs - ;; -@@ -1494,7 +1777,7 @@ - esac - - echo $basic_machine$os --exit 0 -+exit - - # Local variables: - # eval: (add-hook 'write-file-hooks 'time-stamp) From a6b24135ea1b24aa42ca1d56bbfd05e2f265fd71 Mon Sep 17 00:00:00 2001 From: Peter Robinson Date: Fri, 30 May 2014 12:55:00 +0100 Subject: [PATCH 04/87] Build with libusbx and libfdti 1 --- avrdude.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/avrdude.spec b/avrdude.spec index 5711d4b..d69ad43 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -2,7 +2,7 @@ Name: avrdude Version: 6.0.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Software for programming Atmel AVR Microcontroller Group: Applications/Engineering @@ -16,7 +16,7 @@ BuildRequires: bison BuildRequires: readline-devel BuildRequires: ncurses-devel BuildRequires: libftdi-devel -BuildRequires: libusb-devel +BuildRequires: libusbx-devel BuildRequires: texi2html BuildRequires: texinfo-tex BuildRequires: tetex-dvips @@ -75,6 +75,9 @@ fi %changelog +* Fri May 30 2014 Peter Robinson 6.0.1-2 +- Build with libusbx and libfdti 1 + * Sat Mar 08 2014 Hans de Goede - 6.0.1-1 - Upgrade to new upstream release 6.0.1 (rhbz#1056138) From a540543a39cefdf556c6eecd2deb1177f2b4949b Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Fri, 6 Jun 2014 21:20:23 -0500 Subject: [PATCH 05/87] - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild --- avrdude.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index d69ad43..94b7749 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -2,7 +2,7 @@ Name: avrdude Version: 6.0.1 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Software for programming Atmel AVR Microcontroller Group: Applications/Engineering @@ -75,6 +75,9 @@ fi %changelog +* Sat Jun 07 2014 Fedora Release Engineering - 6.0.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + * Fri May 30 2014 Peter Robinson 6.0.1-2 - Build with libusbx and libfdti 1 From 68e01f38a41c7d2a5c7933fc1e7184447107f466 Mon Sep 17 00:00:00 2001 From: Hans de Goede Date: Sat, 14 Jun 2014 09:20:40 +0200 Subject: [PATCH 06/87] Upgrade to new upstream release 6.1 (rhbz#1056138) --- .gitignore | 1 + avrdude-6.1_includes.patch | 13 +++++++++++++ avrdude.spec | 10 ++++++++-- sources | 2 +- 4 files changed, 23 insertions(+), 3 deletions(-) create mode 100644 avrdude-6.1_includes.patch diff --git a/.gitignore b/.gitignore index f7a8ded..a4d7b7d 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ /avrdude-5.11.tar.gz /avrdude-5.11.1.tar.gz /avrdude-6.0.1.tar.gz +/avrdude-6.1.tar.gz diff --git a/avrdude-6.1_includes.patch b/avrdude-6.1_includes.patch new file mode 100644 index 0000000..5fc8904 --- /dev/null +++ b/avrdude-6.1_includes.patch @@ -0,0 +1,13 @@ +diff -p -up ./configure.org ./configure +--- ./configure.org 2014-06-04 21:00:03.027735142 +0200 ++++ ./configure 2014-06-04 21:04:46.428267513 +0200 +@@ -5650,7 +5650,8 @@ fi + LIBPTHREAD=$LIBPTHREAD + + # Checks for header files. +-for ac_header in limits.h stdlib.h string.h ++for ac_header in limits.h stdlib.h string.h inttypes.h stdint.h memory.h \ ++ strings.h sys/stat.h sys_time.h sys_types.h termios.h + do : + as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` + ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" diff --git a/avrdude.spec b/avrdude.spec index 94b7749..338e82b 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -1,8 +1,8 @@ %global udev_rules 70-avrdude_usbprog.rules Name: avrdude -Version: 6.0.1 -Release: 3%{?dist} +Version: 6.1 +Release: 1%{?dist} Summary: Software for programming Atmel AVR Microcontroller Group: Applications/Engineering @@ -10,6 +10,8 @@ License: GPLv2+ URL: http://www.nongnu.org/avrdude Source0: http://download.savannah.gnu.org/releases/%{name}/%{name}-%{version}.tar.gz Source1: avrdude-udev-rules +# From: http://savannah.nongnu.org/bugs/?42517 +Patch0: avrdude-6.1_includes.patch BuildRequires: flex BuildRequires: bison @@ -34,6 +36,7 @@ particular chip. %prep %setup -q +%patch0 -p0 chmod -x safemode.c doc/TODO sed -i 's|/usr/local/etc/avrdude.conf|/etc/avrdude/avrdude.conf|g' doc/avrdude.texi avrdude.1 sed -i 's|/etc/avrdude.conf|/etc/avrdude/avrdude.conf|g' doc/avrdude.texi avrdude.1 @@ -75,6 +78,9 @@ fi %changelog +* Sat Jun 14 2014 Hans de Goede - 6.1-1 +- Upgrade to new upstream release 6.1 (rhbz#1056138) + * Sat Jun 07 2014 Fedora Release Engineering - 6.0.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild diff --git a/sources b/sources index a60cd78..38dfb2a 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -346ec2e46393a54ac152b95abf1d9850 avrdude-6.0.1.tar.gz +9db8c25b935d34234b9b1ba16ad55fd5 avrdude-6.1.tar.gz From 62c148dd9a4f01814e4366ece5c0c2ca5fff8400 Mon Sep 17 00:00:00 2001 From: Hans de Goede Date: Sat, 14 Jun 2014 09:33:45 +0200 Subject: [PATCH 07/87] Some supported devices will only get build if libusb-0.1 is present --- avrdude.spec | 3 +++ 1 file changed, 3 insertions(+) diff --git a/avrdude.spec b/avrdude.spec index 338e82b..81fe780 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -18,6 +18,7 @@ BuildRequires: bison BuildRequires: readline-devel BuildRequires: ncurses-devel BuildRequires: libftdi-devel +BuildRequires: libusb-devel BuildRequires: libusbx-devel BuildRequires: texi2html BuildRequires: texinfo-tex @@ -80,6 +81,8 @@ fi %changelog * Sat Jun 14 2014 Hans de Goede - 6.1-1 - Upgrade to new upstream release 6.1 (rhbz#1056138) +- Some supported devices will only get build if libusb-0.1 is present, so + build with both libusb-0.1 and libusbx-1.0 * Sat Jun 07 2014 Fedora Release Engineering - 6.0.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild From db20c473feaacdb9ca5fea23da2a0ebc539e7981 Mon Sep 17 00:00:00 2001 From: Peter Robinson Date: Fri, 15 Aug 2014 22:02:02 +0000 Subject: [PATCH 08/87] - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild --- avrdude.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index 81fe780..fb184f1 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -2,7 +2,7 @@ Name: avrdude Version: 6.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Software for programming Atmel AVR Microcontroller Group: Applications/Engineering @@ -79,6 +79,9 @@ fi %changelog +* Fri Aug 15 2014 Fedora Release Engineering - 6.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + * Sat Jun 14 2014 Hans de Goede - 6.1-1 - Upgrade to new upstream release 6.1 (rhbz#1056138) - Some supported devices will only get build if libusb-0.1 is present, so From b9f41e2eddeb5e7a1ad3066919ce588fe064caf6 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Wed, 17 Jun 2015 01:27:39 +0000 Subject: [PATCH 09/87] - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild --- avrdude.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index fb184f1..685c3d2 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -2,7 +2,7 @@ Name: avrdude Version: 6.1 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Software for programming Atmel AVR Microcontroller Group: Applications/Engineering @@ -79,6 +79,9 @@ fi %changelog +* Wed Jun 17 2015 Fedora Release Engineering - 6.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + * Fri Aug 15 2014 Fedora Release Engineering - 6.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild From d319a7015e457153d9fde68ca60c25aa137777b5 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Wed, 3 Feb 2016 16:47:26 +0000 Subject: [PATCH 10/87] - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild --- avrdude.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index 685c3d2..84391a6 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -2,7 +2,7 @@ Name: avrdude Version: 6.1 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Software for programming Atmel AVR Microcontroller Group: Applications/Engineering @@ -79,6 +79,9 @@ fi %changelog +* Wed Feb 03 2016 Fedora Release Engineering - 6.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + * Wed Jun 17 2015 Fedora Release Engineering - 6.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild From 14b1b54df5b1b3b75e4ae21a539ed2ce764affc8 Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Sat, 21 May 2016 20:05:03 +0200 Subject: [PATCH 11/87] Fix trailing spaces in package description --- avrdude.spec | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/avrdude.spec b/avrdude.spec index 84391a6..d361b52 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -27,11 +27,11 @@ Requires(post): /sbin/install-info Requires(preun): /sbin/install-info %description -AVRDUDE is a program for programming Atmel's AVR CPU's. It can program the -Flash and EEPROM, and where supported by the serial programming protocol, it -can program fuse and lock bits. AVRDUDE also supplies a direct instruction -mode allowing one to issue any programming instruction to the AVR chip -regardless of whether AVRDUDE implements that specific feature of a +AVRDUDE is a program for programming Atmel's AVR CPU's. It can program the +Flash and EEPROM, and where supported by the serial programming protocol, it +can program fuse and lock bits. AVRDUDE also supplies a direct instruction +mode allowing one to issue any programming instruction to the AVR chip +regardless of whether AVRDUDE implements that specific feature of a particular chip. From 1de9fd222b48d56fbff8c41cf8f5af981a5f9181 Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Sat, 21 May 2016 20:16:33 +0200 Subject: [PATCH 12/87] 6.1-5: Build avrdude with libelf ELF support (#1325530) --- avrdude.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index d361b52..f6ba690 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -2,7 +2,7 @@ Name: avrdude Version: 6.1 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Software for programming Atmel AVR Microcontroller Group: Applications/Engineering @@ -15,6 +15,7 @@ Patch0: avrdude-6.1_includes.patch BuildRequires: flex BuildRequires: bison +BuildRequires: elfutils-libelf-devel BuildRequires: readline-devel BuildRequires: ncurses-devel BuildRequires: libftdi-devel @@ -79,6 +80,9 @@ fi %changelog +* Sat May 21 2016 Hans Ulrich Niedermann - 6.1-5 +- Build avrdude with libelf ELF support (#1325530) + * Wed Feb 03 2016 Fedora Release Engineering - 6.1-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild From 3859057d05b66860ed5544ca6033fdf400ae5c11 Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Sat, 21 May 2016 21:04:24 +0200 Subject: [PATCH 13/87] 6.1-6: Build avrdude with libhid and hidapi support --- avrdude.spec | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index f6ba690..691e8ad 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -2,7 +2,7 @@ Name: avrdude Version: 6.1 -Release: 5%{?dist} +Release: 6%{?dist} Summary: Software for programming Atmel AVR Microcontroller Group: Applications/Engineering @@ -16,6 +16,8 @@ Patch0: avrdude-6.1_includes.patch BuildRequires: flex BuildRequires: bison BuildRequires: elfutils-libelf-devel +BuildRequires: hidapi-devel +BuildRequires: libhid-devel BuildRequires: readline-devel BuildRequires: ncurses-devel BuildRequires: libftdi-devel @@ -80,6 +82,9 @@ fi %changelog +* Sat May 21 2016 Hans Ulrich Niedermann - 6.1-6 +- Build avrdude with libhid and hidapi support + * Sat May 21 2016 Hans Ulrich Niedermann - 6.1-5 - Build avrdude with libelf ELF support (#1325530) From 312cd82198b7bbe9cbfbc8f977997c75954199cc Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Sat, 21 May 2016 22:21:05 +0200 Subject: [PATCH 14/87] avrdude-6.3-7: Update to avrdude-6.3 release --- .gitignore | 1 + avrdude.spec | 17 ++++++++++++++--- sources | 2 +- 3 files changed, 16 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index a4d7b7d..04ab7d0 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ /avrdude-5.11.1.tar.gz /avrdude-6.0.1.tar.gz /avrdude-6.1.tar.gz +/avrdude-6.3.tar.gz diff --git a/avrdude.spec b/avrdude.spec index 691e8ad..8dc333c 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -1,8 +1,8 @@ %global udev_rules 70-avrdude_usbprog.rules Name: avrdude -Version: 6.1 -Release: 6%{?dist} +Version: 6.3 +Release: 7%{?dist} Summary: Software for programming Atmel AVR Microcontroller Group: Applications/Engineering @@ -51,14 +51,20 @@ mv NEWS~ NEWS %build -%configure --enable-doc --sysconfdir=%{_sysconfdir}/%{name} +%configure --enable-doc --enable-linuxgpio --sysconfdir=%{_sysconfdir}/%{name} make %install %make_install mv $RPM_BUILD_ROOT/%{_docdir}/%{name}-%{version} installed-docs +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.la +rm -f $RPM_BUILD_ROOT%{_libdir}/libavrdude.so +rm -f $RPM_BUILD_ROOT%{_libdir}/libavrdude.so.1 +rm -f $RPM_BUILD_ROOT%{_libdir}/libavrdude.so.1.0.0 install -d -m 755 $RPM_BUILD_ROOT%{_udevrulesdir} install -p -m 644 %{SOURCE1} $RPM_BUILD_ROOT%{_udevrulesdir}/%{udev_rules} @@ -82,6 +88,11 @@ fi %changelog +* Sat May 21 2016 Hans Ulrich Niedermann - 6.3-7 +- Update to avrdude-6.3 release +- Build avrdude with linuxgpio support +- Do not ship new libavrdude as avrdude executable is statically linked + * Sat May 21 2016 Hans Ulrich Niedermann - 6.1-6 - Build avrdude with libhid and hidapi support diff --git a/sources b/sources index 38dfb2a..3855537 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -9db8c25b935d34234b9b1ba16ad55fd5 avrdude-6.1.tar.gz +58bb42049122cf80fe4f4d0ce36d92ee avrdude-6.3.tar.gz From c410895ea2c284462867a355a0fc701306138838 Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Thu, 12 Jan 2017 17:30:24 +0100 Subject: [PATCH 15/87] Rebuild for readline 7.x Signed-off-by: Igor Gnatenko --- avrdude.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index 8dc333c..be019be 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -2,7 +2,7 @@ Name: avrdude Version: 6.3 -Release: 7%{?dist} +Release: 8%{?dist} Summary: Software for programming Atmel AVR Microcontroller Group: Applications/Engineering @@ -88,6 +88,9 @@ fi %changelog +* Thu Jan 12 2017 Igor Gnatenko - 6.3-8 +- Rebuild for readline 7.x + * Sat May 21 2016 Hans Ulrich Niedermann - 6.3-7 - Update to avrdude-6.3 release - Build avrdude with linuxgpio support From 4282b28a3518a706627588b4c267f8e3aac41524 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 10 Feb 2017 06:38:37 +0000 Subject: [PATCH 16/87] - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild --- avrdude.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index be019be..e4712ad 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -2,7 +2,7 @@ Name: avrdude Version: 6.3 -Release: 8%{?dist} +Release: 9%{?dist} Summary: Software for programming Atmel AVR Microcontroller Group: Applications/Engineering @@ -88,6 +88,9 @@ fi %changelog +* Fri Feb 10 2017 Fedora Release Engineering - 6.3-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + * Thu Jan 12 2017 Igor Gnatenko - 6.3-8 - Rebuild for readline 7.x From fd4db15ab0a4d24176bc1d5f8941fccd63c79d90 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 26 Jul 2017 03:39:26 +0000 Subject: [PATCH 17/87] - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild --- avrdude.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index e4712ad..ebc4baa 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -2,7 +2,7 @@ Name: avrdude Version: 6.3 -Release: 9%{?dist} +Release: 10%{?dist} Summary: Software for programming Atmel AVR Microcontroller Group: Applications/Engineering @@ -88,6 +88,9 @@ fi %changelog +* Wed Jul 26 2017 Fedora Release Engineering - 6.3-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + * Fri Feb 10 2017 Fedora Release Engineering - 6.3-9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild From 84d4ef84c3f0a59f1ebd3efe54b4e72ee134d7b8 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 2 Aug 2017 18:03:27 +0000 Subject: [PATCH 18/87] - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild --- avrdude.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index ebc4baa..49b659c 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -2,7 +2,7 @@ Name: avrdude Version: 6.3 -Release: 10%{?dist} +Release: 11%{?dist} Summary: Software for programming Atmel AVR Microcontroller Group: Applications/Engineering @@ -88,6 +88,9 @@ fi %changelog +* Wed Aug 02 2017 Fedora Release Engineering - 6.3-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + * Wed Jul 26 2017 Fedora Release Engineering - 6.3-10 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild From a5251ec54be46985c1426a637f081057762339c9 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 7 Feb 2018 03:26:53 +0000 Subject: [PATCH 19/87] - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- avrdude.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index 49b659c..f43428f 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -2,7 +2,7 @@ Name: avrdude Version: 6.3 -Release: 11%{?dist} +Release: 12%{?dist} Summary: Software for programming Atmel AVR Microcontroller Group: Applications/Engineering @@ -88,6 +88,9 @@ fi %changelog +* Wed Feb 07 2018 Fedora Release Engineering - 6.3-12 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + * Wed Aug 02 2017 Fedora Release Engineering - 6.3-11 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild From e313b765979bb43a483e4a21ad57c272d48e81bc Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Mon, 9 Jul 2018 19:06:42 +0200 Subject: [PATCH 20/87] add BuildRequires: gcc Reference: https://fedoraproject.org/wiki/Changes/Remove_GCC_from_BuildRoot --- avrdude.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/avrdude.spec b/avrdude.spec index f43428f..e1c0ff2 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -13,6 +13,7 @@ Source1: avrdude-udev-rules # From: http://savannah.nongnu.org/bugs/?42517 Patch0: avrdude-6.1_includes.patch +BuildRequires: gcc BuildRequires: flex BuildRequires: bison BuildRequires: elfutils-libelf-devel From d68f27f6680fd8e2103d3536e085e398e5355558 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 12 Jul 2018 20:51:26 +0000 Subject: [PATCH 21/87] - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- avrdude.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index e1c0ff2..2187819 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -2,7 +2,7 @@ Name: avrdude Version: 6.3 -Release: 12%{?dist} +Release: 13%{?dist} Summary: Software for programming Atmel AVR Microcontroller Group: Applications/Engineering @@ -89,6 +89,9 @@ fi %changelog +* Thu Jul 12 2018 Fedora Release Engineering - 6.3-13 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + * Wed Feb 07 2018 Fedora Release Engineering - 6.3-12 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild From c8e42e243a2e51f37443504a9277a8cf8d4bd14b Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Sun, 27 Jan 2019 15:24:57 +0100 Subject: [PATCH 22/87] Remove obsolete scriptlets References: https://fedoraproject.org/wiki/Changes/RemoveObsoleteScriptlets Signed-off-by: Igor Gnatenko --- avrdude.spec | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/avrdude.spec b/avrdude.spec index 2187819..690c09d 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -27,8 +27,6 @@ BuildRequires: libusbx-devel BuildRequires: texi2html BuildRequires: texinfo-tex BuildRequires: tetex-dvips -Requires(post): /sbin/install-info -Requires(preun): /sbin/install-info %description AVRDUDE is a program for programming Atmel's AVR CPU's. It can program the @@ -69,16 +67,6 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libavrdude.so.1.0.0 install -d -m 755 $RPM_BUILD_ROOT%{_udevrulesdir} install -p -m 644 %{SOURCE1} $RPM_BUILD_ROOT%{_udevrulesdir}/%{udev_rules} - -%post -/sbin/install-info %{_infodir}/%{name}.info %{_infodir}/dir || : - -%preun -if [ $1 = 0 ]; then - /sbin/install-info --delete %{_infodir}/%{name}.info %{_infodir}/dir || : -fi - - %files %doc README AUTHORS ChangeLog* COPYING NEWS doc/TODO installed-docs/* %config(noreplace) %{_sysconfdir}/%{name} From 7592c91152116bbcbaeab29e66bb2b1435c99ba6 Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Sun, 27 Jan 2019 17:50:28 +0100 Subject: [PATCH 23/87] Do not accidentally build this spec for F < 30 After https://fedoraproject.org/wiki/Changes/RemoveObsoleteScriptlets this spec file lacks the install-info scriptlets required for older distributions than Fedora 30. This makes sure the build fails if you ever tried to build this scriptlet-less F30-and-later spec file for older distributions such as F28 or EL7 or ... A failed build is better than silently not properly installing the rpm package. --- avrdude.spec | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/avrdude.spec b/avrdude.spec index 690c09d..96f5b93 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -28,6 +28,14 @@ BuildRequires: texi2html BuildRequires: texinfo-tex BuildRequires: tetex-dvips +# https://fedoraproject.org/wiki/Changes/RemoveObsoleteScriptlets +%if 0%{?fedora} >= 30 +%{nil} +%else +%{error:No install-info scriptlets for Fedora prior to F30 or EL7/EL6.} +%endif + + %description AVRDUDE is a program for programming Atmel's AVR CPU's. It can program the Flash and EEPROM, and where supported by the serial programming protocol, it From 8661d4f77a9db681a8e643134b80c3da7802f6ec Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Sun, 27 Jan 2019 17:58:01 +0100 Subject: [PATCH 24/87] gitignore: ignore build artifacts --- .gitignore | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.gitignore b/.gitignore index 04ab7d0..d66df96 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,7 @@ /avrdude-6.0.1.tar.gz /avrdude-6.1.tar.gz /avrdude-6.3.tar.gz +/avrdude-6.*/ +/.build-*.log +/*.src.rpm +/x86_64/ From 9c0e7bade433e982357f01d3b8f8f7b94b5f21ed Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Mon, 28 Jan 2019 20:05:00 +0100 Subject: [PATCH 25/87] Adapt check for obsolete scriptlets being obsolete Fedora >= f28 and EPEL >= el8 both support the scriptlet-less packages, so we adapt the logic and the message to reflect that. --- avrdude.spec | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/avrdude.spec b/avrdude.spec index 96f5b93..1978812 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -29,10 +29,8 @@ BuildRequires: texinfo-tex BuildRequires: tetex-dvips # https://fedoraproject.org/wiki/Changes/RemoveObsoleteScriptlets -%if 0%{?fedora} >= 30 -%{nil} -%else -%{error:No install-info scriptlets for Fedora prior to F30 or EL7/EL6.} +%if !((0%{?fedora} >= 28) || (0%{?rhel} >= 8)) +%{error:No install-info scriptlets for Fedora prior to F28 or EL prior to EL8.} %endif From fb61b3182e7cbaaf11912b5aa29a84e2079dad54 Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Mon, 28 Jan 2019 20:17:39 +0100 Subject: [PATCH 26/87] Remove obsolete Group tag References: https://fedoraproject.org/wiki/Changes/Remove_Group_Tag --- avrdude.spec | 1 - 1 file changed, 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index 1978812..d39eb93 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -5,7 +5,6 @@ Version: 6.3 Release: 13%{?dist} Summary: Software for programming Atmel AVR Microcontroller -Group: Applications/Engineering License: GPLv2+ URL: http://www.nongnu.org/avrdude Source0: http://download.savannah.gnu.org/releases/%{name}/%{name}-%{version}.tar.gz From d0f4bb9892ae29781d0b5e274bf10577a586a2cd Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 31 Jan 2019 14:16:59 +0000 Subject: [PATCH 27/87] - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- avrdude.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index d39eb93..b321af4 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -2,7 +2,7 @@ Name: avrdude Version: 6.3 -Release: 13%{?dist} +Release: 14%{?dist} Summary: Software for programming Atmel AVR Microcontroller License: GPLv2+ @@ -82,6 +82,9 @@ install -p -m 644 %{SOURCE1} $RPM_BUILD_ROOT%{_udevrulesdir}/%{udev_rules} %changelog +* Thu Jan 31 2019 Fedora Release Engineering - 6.3-14 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + * Thu Jul 12 2018 Fedora Release Engineering - 6.3-13 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild From d80e5b77d4aaf02c78f8a0e3ad754c3e568e11c2 Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Sun, 17 Feb 2019 09:30:49 +0100 Subject: [PATCH 28/87] Rebuild for readline 8.0 --- avrdude.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index b321af4..74d6950 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -2,7 +2,7 @@ Name: avrdude Version: 6.3 -Release: 14%{?dist} +Release: 15%{?dist} Summary: Software for programming Atmel AVR Microcontroller License: GPLv2+ @@ -82,6 +82,9 @@ install -p -m 644 %{SOURCE1} $RPM_BUILD_ROOT%{_udevrulesdir}/%{udev_rules} %changelog +* Sun Feb 17 2019 Igor Gnatenko - 6.3-15 +- Rebuild for readline 8.0 + * Thu Jan 31 2019 Fedora Release Engineering - 6.3-14 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild From bf1e4ed9a6ddc50f085be1a28e0e4a6dc83bda54 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Esser?= Date: Wed, 24 Apr 2019 14:56:29 +0200 Subject: [PATCH 29/87] Remove hardcoded gzip suffix from GNU info pages --- avrdude.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/avrdude.spec b/avrdude.spec index 74d6950..c53b986 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -2,7 +2,7 @@ Name: avrdude Version: 6.3 -Release: 15%{?dist} +Release: 16%{?dist} Summary: Software for programming Atmel AVR Microcontroller License: GPLv2+ @@ -78,10 +78,13 @@ install -p -m 644 %{SOURCE1} $RPM_BUILD_ROOT%{_udevrulesdir}/%{udev_rules} %{_udevrulesdir}/%{udev_rules} %{_bindir}/%{name} %{_mandir}/man1/%{name}.1.gz -%{_infodir}/%{name}.info.gz +%{_infodir}/%{name}.info.* %changelog +* Wed Apr 24 2019 Björn Esser - 6.3-16 +- Remove hardcoded gzip suffix from GNU info pages + * Sun Feb 17 2019 Igor Gnatenko - 6.3-15 - Rebuild for readline 8.0 From 45a8a64a2912df621ca287a09c62d89ae2233160 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 24 Jul 2019 18:54:38 +0000 Subject: [PATCH 30/87] - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- avrdude.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index c53b986..85ed50c 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -2,7 +2,7 @@ Name: avrdude Version: 6.3 -Release: 16%{?dist} +Release: 17%{?dist} Summary: Software for programming Atmel AVR Microcontroller License: GPLv2+ @@ -82,6 +82,9 @@ install -p -m 644 %{SOURCE1} $RPM_BUILD_ROOT%{_udevrulesdir}/%{udev_rules} %changelog +* Wed Jul 24 2019 Fedora Release Engineering - 6.3-17 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + * Wed Apr 24 2019 Björn Esser - 6.3-16 - Remove hardcoded gzip suffix from GNU info pages From 10d5dfd17a308ff0f9031e91f994efb9cd0f2ec5 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Tue, 28 Jan 2020 12:34:47 +0000 Subject: [PATCH 31/87] - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- avrdude.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index 85ed50c..9059af1 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -2,7 +2,7 @@ Name: avrdude Version: 6.3 -Release: 17%{?dist} +Release: 18%{?dist} Summary: Software for programming Atmel AVR Microcontroller License: GPLv2+ @@ -82,6 +82,9 @@ install -p -m 644 %{SOURCE1} $RPM_BUILD_ROOT%{_udevrulesdir}/%{udev_rules} %changelog +* Tue Jan 28 2020 Fedora Release Engineering - 6.3-18 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + * Wed Jul 24 2019 Fedora Release Engineering - 6.3-17 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild From 9cdef535f108455fd9d69f3fbfc48d445ec2d6ee Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Mon, 27 Jul 2020 12:48:02 +0000 Subject: [PATCH 32/87] - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- avrdude.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index 9059af1..d5706b5 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -2,7 +2,7 @@ Name: avrdude Version: 6.3 -Release: 18%{?dist} +Release: 19%{?dist} Summary: Software for programming Atmel AVR Microcontroller License: GPLv2+ @@ -82,6 +82,9 @@ install -p -m 644 %{SOURCE1} $RPM_BUILD_ROOT%{_udevrulesdir}/%{udev_rules} %changelog +* Mon Jul 27 2020 Fedora Release Engineering - 6.3-19 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + * Tue Jan 28 2020 Fedora Release Engineering - 6.3-18 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild From 0d82380c6d21276c61f6c1540d7dd0a496236ee2 Mon Sep 17 00:00:00 2001 From: Tom Stellard Date: Thu, 17 Dec 2020 02:38:53 +0000 Subject: [PATCH 33/87] Add BuildRequires: make https://fedoraproject.org/wiki/Changes/Remove_make_from_BuildRoot --- avrdude.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/avrdude.spec b/avrdude.spec index d5706b5..ac15bcb 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -26,6 +26,7 @@ BuildRequires: libusbx-devel BuildRequires: texi2html BuildRequires: texinfo-tex BuildRequires: tetex-dvips +BuildRequires: make # https://fedoraproject.org/wiki/Changes/RemoveObsoleteScriptlets %if !((0%{?fedora} >= 28) || (0%{?rhel} >= 8)) From 40e116578a4bec504c6a26b0d8beae4e14aab276 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Tue, 26 Jan 2021 00:50:15 +0000 Subject: [PATCH 34/87] - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- avrdude.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index ac15bcb..7864922 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -2,7 +2,7 @@ Name: avrdude Version: 6.3 -Release: 19%{?dist} +Release: 20%{?dist} Summary: Software for programming Atmel AVR Microcontroller License: GPLv2+ @@ -83,6 +83,9 @@ install -p -m 644 %{SOURCE1} $RPM_BUILD_ROOT%{_udevrulesdir}/%{udev_rules} %changelog +* Tue Jan 26 2021 Fedora Release Engineering - 6.3-20 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + * Mon Jul 27 2020 Fedora Release Engineering - 6.3-19 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild From 3900d4af4f0dedce4a993a38e4e4dc7aeb3da398 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 21 Jul 2021 13:21:31 +0000 Subject: [PATCH 35/87] - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild Signed-off-by: Fedora Release Engineering From ac944bb88a1676c69b313f335212ce7c18eb0c2a Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 21 Jul 2021 18:17:44 +0000 Subject: [PATCH 36/87] - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- avrdude.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index 7864922..ea61c56 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -2,7 +2,7 @@ Name: avrdude Version: 6.3 -Release: 20%{?dist} +Release: 21%{?dist} Summary: Software for programming Atmel AVR Microcontroller License: GPLv2+ @@ -83,6 +83,9 @@ install -p -m 644 %{SOURCE1} $RPM_BUILD_ROOT%{_udevrulesdir}/%{udev_rules} %changelog +* Wed Jul 21 2021 Fedora Release Engineering - 6.3-21 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + * Tue Jan 26 2021 Fedora Release Engineering - 6.3-20 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild From a529136e6c922ac283b85a81c2024563703b7121 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 19 Jan 2022 22:01:23 +0000 Subject: [PATCH 37/87] - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- avrdude.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index ea61c56..9ca24ed 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -2,7 +2,7 @@ Name: avrdude Version: 6.3 -Release: 21%{?dist} +Release: 22%{?dist} Summary: Software for programming Atmel AVR Microcontroller License: GPLv2+ @@ -83,6 +83,9 @@ install -p -m 644 %{SOURCE1} $RPM_BUILD_ROOT%{_udevrulesdir}/%{udev_rules} %changelog +* Wed Jan 19 2022 Fedora Release Engineering - 6.3-22 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + * Wed Jul 21 2021 Fedora Release Engineering - 6.3-21 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild From 775de87f6691c6048cd6d9087cab715e2d1542da Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dan=20Hor=C3=A1k?= Date: Sat, 25 Dec 2021 22:39:18 +0100 Subject: [PATCH 38/87] - update to 6.4 - switch to Debian udev rules - enable Linux SPI driver --- .gitignore | 1 + avrdude-udev-rules | 17 -------- avrdude.spec | 17 +++++--- avrdude.udev | 106 +++++++++++++++++++++++++++++++++++++++++++++ sources | 2 +- 5 files changed, 119 insertions(+), 24 deletions(-) delete mode 100644 avrdude-udev-rules create mode 100644 avrdude.udev diff --git a/.gitignore b/.gitignore index d66df96..551fdce 100644 --- a/.gitignore +++ b/.gitignore @@ -8,3 +8,4 @@ /.build-*.log /*.src.rpm /x86_64/ +/avrdude-6.4.tar.gz diff --git a/avrdude-udev-rules b/avrdude-udev-rules deleted file mode 100644 index 14b7922..0000000 --- a/avrdude-udev-rules +++ /dev/null @@ -1,17 +0,0 @@ -# Atmel AVR ISP mkII -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2103", TAG+="uaccess" - -# Atmel Corp. JTAG ICE mkII -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2104", TAG+="uaccess" - -# Atmel Corp. JTAGICE3 -SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2110", TAG+="uaccess" - -# usbprog bootloader -ATTRS{idVendor}=="1781", ATTRS{idProduct}=="0c62", TAG+="uaccess" - -# USBasp programmer -ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="05dc", TAG+="uaccess" - -# USBtiny programmer -ATTRS{idVendor}=="1781", ATTRS{idProduct}=="0c9f", TAG+="uaccess" diff --git a/avrdude.spec b/avrdude.spec index 9ca24ed..232ab63 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -1,14 +1,14 @@ %global udev_rules 70-avrdude_usbprog.rules Name: avrdude -Version: 6.3 -Release: 22%{?dist} +Version: 6.4 +Release: 1%{?dist} Summary: Software for programming Atmel AVR Microcontroller License: GPLv2+ URL: http://www.nongnu.org/avrdude Source0: http://download.savannah.gnu.org/releases/%{name}/%{name}-%{version}.tar.gz -Source1: avrdude-udev-rules +Source1: https://salsa.debian.org/debian/avrdude/-/raw/master/debian/avrdude.udev # From: http://savannah.nongnu.org/bugs/?42517 Patch0: avrdude-6.1_includes.patch @@ -26,7 +26,7 @@ BuildRequires: libusbx-devel BuildRequires: texi2html BuildRequires: texinfo-tex BuildRequires: tetex-dvips -BuildRequires: make +BuildRequires: make # https://fedoraproject.org/wiki/Changes/RemoveObsoleteScriptlets %if !((0%{?fedora} >= 28) || (0%{?rhel} >= 8)) @@ -56,8 +56,8 @@ mv NEWS~ NEWS %build -%configure --enable-doc --enable-linuxgpio --sysconfdir=%{_sysconfdir}/%{name} -make +%configure --enable-doc --enable-linuxgpio --enable-linuxspi --sysconfdir=%{_sysconfdir}/%{name} +%make_build %install @@ -83,6 +83,11 @@ install -p -m 644 %{SOURCE1} $RPM_BUILD_ROOT%{_udevrulesdir}/%{udev_rules} %changelog +* Sat Dec 25 2021 Dan Horák - 6.4-1 +- update to 6.4 +- switch to Debian udev rules +- enable Linux SPI driver + * Wed Jan 19 2022 Fedora Release Engineering - 6.3-22 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild diff --git a/avrdude.udev b/avrdude.udev new file mode 100644 index 0000000..012395f --- /dev/null +++ b/avrdude.udev @@ -0,0 +1,106 @@ +ACTION!="add|change", GOTO="avrdude_end" + +# /dev/ttyUSB +SUBSYSTEMS=="usb-serial", TAG+="uaccess" + +# /dev/ttyACM +SUBSYSTEMS=="usb", DRIVERS=="cdc_acm", TAG+="uaccess" + +SUBSYSTEM!="usb", GOTO="avrdude_end" + +# JTAG ICE mkII +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2103", TAG+="uaccess" +# AVR ISP mkII +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2104", TAG+="uaccess" +# STK600 +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2106", TAG+="uaccess" +# AVR Dragon +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2107", TAG+="uaccess" +# AVR JTAGICE3 +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2110", TAG+="uaccess" +# Xplained Pro board +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2111", TAG+="uaccess" +# AVR JTAGICE3 (v3.x) +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2140", TAG+="uaccess" +# Atmel-ICE +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2141", TAG+="uaccess" +# Atmel Power Debugger +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2144", TAG+="uaccess" +# Xplained Mini board +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2145", TAG+="uaccess" +# ATxmega64C3 DFU +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2fd6", TAG+="uaccess" +# ATxmega128C3 DFU +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2fd7", TAG+="uaccess" +# ATxmega256C3 DFU +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2fda", TAG+="uaccess" +# ATxmega384C3 DFU +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2fdb", TAG+="uaccess" +# ATxmega128A4U DFU +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2fde", TAG+="uaccess" +# ATxmega64B3 DFU +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2fdf", TAG+="uaccess" +# ATxmega128B3 DFU +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2fe0", TAG+="uaccess" +# ATxmega64B1 DFU +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2fe1", TAG+="uaccess" +# ATxmega256A3BU DFU +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2fe2", TAG+="uaccess" +# ATxmega16A4U DFU +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2fe3", TAG+="uaccess" +# ATxmega32A4U DFU +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2fe4", TAG+="uaccess" +# ATxmega64A4U DFU +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2fe5", TAG+="uaccess" +# Cactus V6 DFU +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2fe6", TAG+="uaccess" +# ATxmega192A3U DFU +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2fe7", TAG+="uaccess" +# ATxmega64A1U DFU +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2fe8", TAG+="uaccess" +# Cactus RF60 DFU +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2fea", TAG+="uaccess" +# ATxmega256A3U DFU +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2fec", TAG+="uaccess" +# ATxmega128A1U DFU +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2fed", TAG+="uaccess" +# atmega8u2 DFU +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2fee", TAG+="uaccess" +# atmega16u2 DFU +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2fef", TAG+="uaccess" +# atmega32u2 DFU +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2ff0", TAG+="uaccess" +# at32uc3a3 DFU +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2ff1", TAG+="uaccess" +# atmega16u4 DFU +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2ff3", TAG+="uaccess" +# atmega32u4 DFU +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2ff4", TAG+="uaccess" +# at32uc3b0/1 DFU +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2ff6", TAG+="uaccess" +# at90usb82 DFU +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2ff7", TAG+="uaccess" +# at32uc3a0/1 DFU +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2ff8", TAG+="uaccess" +# at90usb646/647 DFU +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2ff9", TAG+="uaccess" +# at90usb162 DFU +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2ffa", TAG+="uaccess" +# at90usb1286/1287 AVR DFU +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2ffb", TAG+="uaccess" +# at89c5130/c5131 DFU +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2ffd", TAG+="uaccess" +# at89c5132/c51snd1c DFU +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2fff", TAG+="uaccess" +# PICkit2 +SUBSYSTEM=="usb", ATTR{idVendor}=="04d8", ATTR{idProduct}=="0033", TAG+="uaccess" +# USBasp +SUBSYSTEM=="usb", ATTR{idVendor}=="16c0", ATTR{idProduct}=="05dc", TAG+="uaccess" +# NIBObee +SUBSYSTEM=="usb", ATTR{idVendor}=="16c0", ATTR{idProduct}=="092f", TAG+="uaccess" +# eHaJo +SUBSYSTEM=="usb", ATTR{idVendor}=="16d0", ATTR{idProduct}=="0ba5", TAG+="uaccess" +# USBtinyISP +SUBSYSTEM=="usb", ATTR{idVendor}=="1781", ATTR{idProduct}=="0c9f", TAG+="uaccess" + +LABEL="avrdude_end" diff --git a/sources b/sources index 3855537..8fd5dbf 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -58bb42049122cf80fe4f4d0ce36d92ee avrdude-6.3.tar.gz +SHA512 (avrdude-6.4.tar.gz) = ce6127c212a83c5079d3bd80a7a0127220f9652201595a24b991916556eb8fc69d2910f7e112d7025a5aeec8d341e72293467ac1dc1a62be1f391dd9408f9a06 From 15654fcecd4cc9ca049112e39859c92a654b2d62 Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Wed, 20 Apr 2022 00:27:55 +0200 Subject: [PATCH 39/87] Fix date of 6.4-1 changelog entry The changelog entries should be chronologically, and while the 6.4-1 entry's date is the same as the git author date 2021-12-25, it is earlier than the earlier changelog entry for 6.3-22, and the actual git commit date for 6.4-1 is the chronologically correct 2022-02-04. As changing the 6.4-1 date to the chronologically ordered commit date 022-02-04 makes more sense for a public changelog unaffected by private git author dates, change the date to 2022-02-04. --- avrdude.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index 232ab63..b107407 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -83,7 +83,7 @@ install -p -m 644 %{SOURCE1} $RPM_BUILD_ROOT%{_udevrulesdir}/%{udev_rules} %changelog -* Sat Dec 25 2021 Dan Horák - 6.4-1 +* Fri Feb 04 2022 Dan Horák - 6.4-1 - update to 6.4 - switch to Debian udev rules - enable Linux SPI driver From 7de3218616d050527e3042d3b9f1157d4109c7af Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Tue, 19 Apr 2022 23:27:28 +0200 Subject: [PATCH 40/87] Update URLS from http: to https: in spec file --- avrdude.spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/avrdude.spec b/avrdude.spec index b107407..f8f735d 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -6,10 +6,10 @@ Release: 1%{?dist} Summary: Software for programming Atmel AVR Microcontroller License: GPLv2+ -URL: http://www.nongnu.org/avrdude -Source0: http://download.savannah.gnu.org/releases/%{name}/%{name}-%{version}.tar.gz +URL: https://www.nongnu.org/avrdude +Source0: https://download.savannah.gnu.org/releases/%{name}/%{name}-%{version}.tar.gz Source1: https://salsa.debian.org/debian/avrdude/-/raw/master/debian/avrdude.udev -# From: http://savannah.nongnu.org/bugs/?42517 +# From: https://savannah.nongnu.org/bugs/?42517 Patch0: avrdude-6.1_includes.patch BuildRequires: gcc From 43e07128afc2b9a3f1c58d82909638deae837932 Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Wed, 20 Apr 2022 19:23:02 +0200 Subject: [PATCH 41/87] Update BuildReqs for libusb* to use pkgconfig(...) Using pkgconfig(libusb) and pkgconfig(libusb-1.0) does not care which exact package provides the libusb.pc and libusb-1.0.pc files, respectively. Therefore the notation works for f37(rawhide), f36, f35, f34, while the old libusb-devel and libusbx-devel were only working up to f36 and fail on f37(rawhide). --- avrdude.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/avrdude.spec b/avrdude.spec index f8f735d..dd2d7b1 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -21,8 +21,8 @@ BuildRequires: libhid-devel BuildRequires: readline-devel BuildRequires: ncurses-devel BuildRequires: libftdi-devel -BuildRequires: libusb-devel -BuildRequires: libusbx-devel +BuildRequires: pkgconfig(libusb) +BuildRequires: pkgconfig(libusb-1.0) BuildRequires: texi2html BuildRequires: texinfo-tex BuildRequires: tetex-dvips From 49e92c60b2c77e106b07bcc987224cdd7ac6614c Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Wed, 20 Apr 2022 19:51:05 +0200 Subject: [PATCH 42/87] Enable parallel port support Enabling parallel port support does not hurt anyone, but may help someone. So why not just enable it? --- avrdude.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index dd2d7b1..5693700 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -56,7 +56,7 @@ mv NEWS~ NEWS %build -%configure --enable-doc --enable-linuxgpio --enable-linuxspi --sysconfdir=%{_sysconfdir}/%{name} +%configure --enable-doc --enable-linuxgpio --enable-linuxspi --enable-parport --sysconfdir=%{_sysconfdir}/%{name} %make_build From 229e4ce6a0fdabf5c26113b9bc44aabd7b982c2f Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Wed, 20 Apr 2022 18:55:35 +0200 Subject: [PATCH 43/87] Stop granting user access to ALL /dev/tty{ACM,USB}* devices Remove blanket console user (TAG+="uaccess") access to *all* /dev/tty{ACM,USB}* devices. Those devices can be a lot else but AVR programmers, so it is not the avrdude package's place to indiscriminately grant local users blanket access to *all* of those devices. --- avrdude-udev-no-blanket-access.patch | 21 +++++++++++++++++++++ avrdude.spec | 11 +++++++++-- 2 files changed, 30 insertions(+), 2 deletions(-) create mode 100644 avrdude-udev-no-blanket-access.patch diff --git a/avrdude-udev-no-blanket-access.patch b/avrdude-udev-no-blanket-access.patch new file mode 100644 index 0000000..91b6d0b --- /dev/null +++ b/avrdude-udev-no-blanket-access.patch @@ -0,0 +1,21 @@ +--- debian/avrdude.udev 2022-04-20 01:55:35.767101948 +0200 ++++ fedora/avrdude.udev 2022-04-20 01:59:38.828449388 +0200 +@@ -1,10 +1,13 @@ + ACTION!="add|change", GOTO="avrdude_end" + +-# /dev/ttyUSB +-SUBSYSTEMS=="usb-serial", TAG+="uaccess" +- +-# /dev/ttyACM +-SUBSYSTEMS=="usb", DRIVERS=="cdc_acm", TAG+="uaccess" ++# The avrdude package is not supposed to grant blanket access to any ++# and all /dev/ttyACM* and /dev/ttyUSB* devices for the console user. ++# ++# # /dev/ttyUSB ++# SUBSYSTEMS=="usb-serial", TAG+="uaccess" ++# ++# # /dev/ttyACM ++# SUBSYSTEMS=="usb", DRIVERS=="cdc_acm", TAG+="uaccess" + + SUBSYSTEM!="usb", GOTO="avrdude_end" + diff --git a/avrdude.spec b/avrdude.spec index 5693700..deda32b 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -11,6 +11,8 @@ Source0: https://download.savannah.gnu.org/releases/%{name}/%{name}-%{ver Source1: https://salsa.debian.org/debian/avrdude/-/raw/master/debian/avrdude.udev # From: https://savannah.nongnu.org/bugs/?42517 Patch0: avrdude-6.1_includes.patch +# Stop granting blanket access to all /dev/tty{ACM,USB}* devices +Patch1: avrdude-udev-no-blanket-access.patch BuildRequires: gcc BuildRequires: flex @@ -45,10 +47,14 @@ particular chip. %prep %setup -q -%patch0 -p0 +cp -p %{SOURCE1} avrdude.udev +%patch0 -p0 -b .patch0 +%patch1 -p1 -b .patch1 + chmod -x safemode.c doc/TODO sed -i 's|/usr/local/etc/avrdude.conf|/etc/avrdude/avrdude.conf|g' doc/avrdude.texi avrdude.1 sed -i 's|/etc/avrdude.conf|/etc/avrdude/avrdude.conf|g' doc/avrdude.texi avrdude.1 + iconv -f ISO88591 -t UTF8 < ChangeLog-2003 > ChangeLog-2003~ mv ChangeLog-2003~ ChangeLog-2003 iconv -f ISO88591 -t UTF8 < NEWS > NEWS~ @@ -71,7 +77,8 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libavrdude.so rm -f $RPM_BUILD_ROOT%{_libdir}/libavrdude.so.1 rm -f $RPM_BUILD_ROOT%{_libdir}/libavrdude.so.1.0.0 install -d -m 755 $RPM_BUILD_ROOT%{_udevrulesdir} -install -p -m 644 %{SOURCE1} $RPM_BUILD_ROOT%{_udevrulesdir}/%{udev_rules} +install -p -m 644 avrdude.udev $RPM_BUILD_ROOT%{_udevrulesdir}/%{udev_rules} + %files %doc README AUTHORS ChangeLog* COPYING NEWS doc/TODO installed-docs/* From b47bcb6a35510eb271e3225cca2180c800a39bec Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Wed, 20 Apr 2022 20:01:02 +0200 Subject: [PATCH 44/87] Disable silent rules to help with build problems Disable silent rules to help with potential (current or future) build problems. --- avrdude.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index deda32b..de439d0 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -62,7 +62,7 @@ mv NEWS~ NEWS %build -%configure --enable-doc --enable-linuxgpio --enable-linuxspi --enable-parport --sysconfdir=%{_sysconfdir}/%{name} +%configure --disable-silent-rules --enable-doc --enable-linuxgpio --enable-linuxspi --enable-parport --sysconfdir=%{_sysconfdir}/%{name} %make_build From 7efdbccb55833ceafb0ad1336fb82218c7b8fed5 Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Wed, 20 Apr 2022 20:03:41 +0200 Subject: [PATCH 45/87] Upstream already has fixed these files' x bits --- avrdude.spec | 1 - 1 file changed, 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index de439d0..e69dba1 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -51,7 +51,6 @@ cp -p %{SOURCE1} avrdude.udev %patch0 -p0 -b .patch0 %patch1 -p1 -b .patch1 -chmod -x safemode.c doc/TODO sed -i 's|/usr/local/etc/avrdude.conf|/etc/avrdude/avrdude.conf|g' doc/avrdude.texi avrdude.1 sed -i 's|/etc/avrdude.conf|/etc/avrdude/avrdude.conf|g' doc/avrdude.texi avrdude.1 From 7d510dd1c98a3e4058f172979ba117dd2e59a021 Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Wed, 20 Apr 2022 20:21:42 +0200 Subject: [PATCH 46/87] Fix file locations in man page, texinfo docs While this is an improvement for Fedora, it is not complete. However, completing the task of fixing all the file locations in the documentation needs to happen upstream, not in the Fedora package. So this is a far as we go. --- avrdude-6.4-fix-file-locations-in-docs.patch | 23 ++++++++++++++++++++ avrdude.spec | 7 ++++-- 2 files changed, 28 insertions(+), 2 deletions(-) create mode 100644 avrdude-6.4-fix-file-locations-in-docs.patch diff --git a/avrdude-6.4-fix-file-locations-in-docs.patch b/avrdude-6.4-fix-file-locations-in-docs.patch new file mode 100644 index 0000000..14517af --- /dev/null +++ b/avrdude-6.4-fix-file-locations-in-docs.patch @@ -0,0 +1,23 @@ +diff -ruN avrdude-6.4/doc/avrdude.texi avrdude-6.4-file-locations/doc/avrdude.texi +--- avrdude-6.4/doc/avrdude.texi 2021-11-29 21:54:35.000000000 +0100 ++++ avrdude-6.4-file-locations/doc/avrdude.texi 2022-04-20 05:07:45.669524302 +0200 +@@ -443,7 +443,8 @@ + contains all programmer and part definitions that AVRDUDE knows about. + If not + specified, AVRDUDE reads the configuration file from +-/usr/local/etc/avrdude.conf (FreeBSD and Linux). See Appendix A for ++/etc/avrdude/avrdude.conf (Fedora) or ++/usr/local/etc/avrdude.conf (FreeBSD and generic Linux). See Appendix A for + the method of searching for the configuration file for Windows. + + If @var{config-file} is written as @var{+filename} +@@ -1428,7 +1429,8 @@ + programmer work with AVRDUDE. + + AVRDUDE first looks for a system wide configuration file in a platform +-dependent location. On Unix, this is usually ++dependent location. On Fedora, this is ++@code{/etc/avrdude/avrdude.conf}. On Unix, it is usually + @code{/usr/local/etc/avrdude.conf}, while on Windows it is usually in the + same location as the executable file. The name of this file can be + changed using the @option{-C} command line option. After the system wide diff --git a/avrdude.spec b/avrdude.spec index e69dba1..df06f73 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -13,6 +13,8 @@ Source1: https://salsa.debian.org/debian/avrdude/-/raw/master/debian/avrd Patch0: avrdude-6.1_includes.patch # Stop granting blanket access to all /dev/tty{ACM,USB}* devices Patch1: avrdude-udev-no-blanket-access.patch +# Mention proper doc and config file locations in texinfo documentation +Patch2: avrdude-6.4-fix-file-locations-in-docs.patch BuildRequires: gcc BuildRequires: flex @@ -50,9 +52,10 @@ particular chip. cp -p %{SOURCE1} avrdude.udev %patch0 -p0 -b .patch0 %patch1 -p1 -b .patch1 +%patch2 -p1 -b .patch2 -sed -i 's|/usr/local/etc/avrdude.conf|/etc/avrdude/avrdude.conf|g' doc/avrdude.texi avrdude.1 -sed -i 's|/etc/avrdude.conf|/etc/avrdude/avrdude.conf|g' doc/avrdude.texi avrdude.1 +sed -i 's|${PREFIX}/etc/avrdude\.conf|/etc/avrdude/avrdude.conf|g' avrdude.1 +sed -i 's|${PREFIX}/share/doc/avrdude/avrdude\.pdf|%{_pkgdocdir}/avrdude.pdf|g' avrdude.1 iconv -f ISO88591 -t UTF8 < ChangeLog-2003 > ChangeLog-2003~ mv ChangeLog-2003~ ChangeLog-2003 From a76fecb238a43d9ce4e270f2cd6e0d2042c25717 Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Wed, 20 Apr 2022 20:13:31 +0200 Subject: [PATCH 47/87] Install built documentation directly to %{_pkgdocdir} If avrdude were using the standard GNU makefile variables, we could just set docdir=%{_pkgdocdir} at configure time. However, avrdude does not use the standard docdir variable, preferring its own DOC_INST_DIR influenced by the configure arguments --enable-versioned-doc and --disable-versioned-doc instead. We avoid the issue of determining which configure argument to use by setting DOC_INST_DIR at "make install" time to use whatever %{_pkgdocdir} is on this distribution. --- avrdude.spec | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/avrdude.spec b/avrdude.spec index df06f73..3c5fb3d 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -69,8 +69,7 @@ mv NEWS~ NEWS %install -%make_install -mv $RPM_BUILD_ROOT/%{_docdir}/%{name}-%{version} installed-docs +%make_install DOC_INST_DIR="$RPM_BUILD_ROOT%{_pkgdocdir}" rm -f $RPM_BUILD_ROOT%{_includedir}/libavrdude.h rm -f $RPM_BUILD_ROOT%{_infodir}/dir rm -f $RPM_BUILD_ROOT%{_libdir}/libavrdude.a @@ -83,7 +82,10 @@ install -p -m 644 avrdude.udev $RPM_BUILD_ROOT%{_udevrulesdir}/%{udev_rules} %files -%doc README AUTHORS ChangeLog* COPYING NEWS doc/TODO installed-docs/* +%doc README AUTHORS ChangeLog* COPYING NEWS doc/TODO +%doc %{_pkgdocdir}/avrdude-html/ +%doc %{_pkgdocdir}/avrdude.pdf +%doc %{_pkgdocdir}/avrdude.ps %config(noreplace) %{_sysconfdir}/%{name} %{_udevrulesdir}/%{udev_rules} %{_bindir}/%{name} From ce496de81b20cb9607e59f8de18b71b4a2bee344 Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Wed, 20 Apr 2022 20:20:20 +0200 Subject: [PATCH 48/87] avrdude-6.4-2 - Install built documentation directly to %{_pkgdocdir} - Fix file locations in man page, texinfo docs - Upstream already has fixed these files' x bits - Disable silent rules to help with build problems - Stop granting user access to ALL /dev/tty{ACM,USB}* devices - Enable parallel port support - Update BuildReqs for libusb* to use pkgconfig(...) - Update URLS from http: to https: in spec file - Fix date of 6.4-1 changelog entry This means this rpm now builds for f37(rawhide), f36, f35, f34. It does NOT build for epel9 or epel8 due to them missing libhid-devel and hidapi-devel, and it does NOT build for epel7 due to epel7 requiring install-info scriptlets which this avrdude.spec file does not contain. --- avrdude.spec | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index 3c5fb3d..7a7764a 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -2,7 +2,7 @@ Name: avrdude Version: 6.4 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Software for programming Atmel AVR Microcontroller License: GPLv2+ @@ -94,6 +94,17 @@ install -p -m 644 avrdude.udev $RPM_BUILD_ROOT%{_udevrulesdir}/%{udev_rules} %changelog +* Wed Apr 20 2022 Hans Ulrich Niedermann - 6.4-2 +- Install built documentation directly to %{_pkgdocdir} +- Fix file locations in man page, texinfo docs +- Upstream already has fixed these files' x bits +- Disable silent rules to help with build problems +- Stop granting user access to ALL /dev/tty{ACM,USB}* devices +- Enable parallel port support +- Update BuildReqs for libusb* to use pkgconfig(...) +- Update URLS from http: to https: in spec file +- Fix date of 6.4-1 changelog entry + * Fri Feb 04 2022 Dan Horák - 6.4-1 - update to 6.4 - switch to Debian udev rules From 21248622d7d0deaed1379aab723ed43f8a239ec7 Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Thu, 21 Apr 2022 01:33:55 +0200 Subject: [PATCH 49/87] avrdude-6.4-3: Explain USB device permission setup - Add README.fedora explaining USB device permission setup --- README.fedora | 70 +++++++++++++++++++++++++++++++++++++++++++++++++++ avrdude.spec | 9 ++++++- 2 files changed, 78 insertions(+), 1 deletion(-) create mode 100644 README.fedora diff --git a/README.fedora b/README.fedora new file mode 100644 index 0000000..1d2fd17 --- /dev/null +++ b/README.fedora @@ -0,0 +1,70 @@ +On the avrdude Fedora package +============================= + +This file contains remarks for users of the avrdude Fedora package. + + +Programmer Device Permission Setup +================================== + +When you run `avrdude`, the avrdude process must be allowed to access +the device special file somewhere in `/dev/` which corresponds to the +programmer to be used. + +`avrdude` support many different programmer types (run `avrdude -c +list` to see a list of them). + +Many of these programmer types are USB devices which appear as a +device `/dev/bus/usb//` with `` and `` being 3 +digit decimal numbers padded with `0`. Those devices can be easily +matched in a udev rule looking for the USB idVendor and idProduct, and +be made writable for the local user (`TAG+="uaccess"`). + +See `/usr/lib/udev/rules.d/70-avrdude_usbprog.rules` for how that +works. + +Unfortunately, some programmers present as generic USB to serial +converters (device file name `/dev/ttyUSB`) or as generic USB +AT-command devices (device file name `/dev/ttyACM`). + +While it is technically possible to make all `/dev/ttyUSB` and/or +`/dev/ttyACM` devices writable for whichever Linux user happens to +be the local user, some of those devices can be devices for which it +is better if they are not being writable by anyone. + +Therefore, the avrdude Fedora does *not* make all `/dev/ttyUSB` +and/or `/dev/ttyACM` writable for the local user just by install +the package. + +If you *do* want to make these devices writable for any local user, +you can configure your system yourself by dropping a udev rules file +into `/etc/udev/rules.d/`. But while you are at it, you can as well +examine your programmer close (`lsusb` and `lsusb -v` can be helpful +here) and narrow down the udev rule matching to match only your +programmer, not each and every `ttyUSB` or `ttyACM` device. + +``` /etc/udev/rules.d/99-my-avrdude-programmers.rules +ACTION!="add|change", GOTO="my_avrdude_programmers_end" + +# Recommended: /dev/ttyUSB devices matching specific idVendor/idProduct tuple +SUBSYSTEM=="usb-serial", ATTR{idVendor}=="0123", ATTR{idProduct}=="4567", TAG+="uaccess" + +# Recommended: /dev/ttyACM devices matching specific idVendor/idProduct tuple +SUBSYSTEM=="usb", DRIVERS=="cdc_acm", ATTR{idVendor}=="0123", ATTR{idProduct}=="4567", TAG+="uaccess" + +# Discouraged: *ALL* /dev/ttyUSB devices +SUBSYSTEM=="usb-serial", TAG+="uaccess" + +# Discouraged: *ALL* /dev/ttyACM devices +SUBSYSTEM=="usb", DRIVERS=="cdc_acm", TAG+="uaccess" + +LABEL="my_avrdude_programmers_end" +``` + +Unfortunately, the existing avrdude Fedora package udev rules do not +support setting up permissions for non-local users, like e.g. users +logged in via ssh. If you need such a setup, you will need also to +write your own udev rules file for `/etc/udev/rules.d/`, and set +`OWNER=`, `GROUP=`, `MODE=`, or change the device ACL with something +like `RUN+="/usr/bin/setfacl -m g:avrdude-programmers:rw +'$env{DEVNAME}'"`. diff --git a/avrdude.spec b/avrdude.spec index 7a7764a..78c6e1e 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -2,13 +2,14 @@ Name: avrdude Version: 6.4 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Software for programming Atmel AVR Microcontroller License: GPLv2+ URL: https://www.nongnu.org/avrdude Source0: https://download.savannah.gnu.org/releases/%{name}/%{name}-%{version}.tar.gz Source1: https://salsa.debian.org/debian/avrdude/-/raw/master/debian/avrdude.udev +Source2: README.fedora # From: https://savannah.nongnu.org/bugs/?42517 Patch0: avrdude-6.1_includes.patch # Stop granting blanket access to all /dev/tty{ACM,USB}* devices @@ -79,10 +80,13 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libavrdude.so.1 rm -f $RPM_BUILD_ROOT%{_libdir}/libavrdude.so.1.0.0 install -d -m 755 $RPM_BUILD_ROOT%{_udevrulesdir} install -p -m 644 avrdude.udev $RPM_BUILD_ROOT%{_udevrulesdir}/%{udev_rules} +install -d -m 755 $RPM_BUILD_ROOT%{_pkgdocdir} +install -p -m 644 %{SOURCE2} $RPM_BUILD_ROOT%{_pkgdocdir}/README.fedora %files %doc README AUTHORS ChangeLog* COPYING NEWS doc/TODO +%doc %{_pkgdocdir}/README.fedora %doc %{_pkgdocdir}/avrdude-html/ %doc %{_pkgdocdir}/avrdude.pdf %doc %{_pkgdocdir}/avrdude.ps @@ -94,6 +98,9 @@ install -p -m 644 avrdude.udev $RPM_BUILD_ROOT%{_udevrulesdir}/%{udev_rules} %changelog +* Wed Apr 20 2022 Hans Ulrich Niedermann - 6.4-3 +- Add README.fedora explaining USB device permission setup + * Wed Apr 20 2022 Hans Ulrich Niedermann - 6.4-2 - Install built documentation directly to %{_pkgdocdir} - Fix file locations in man page, texinfo docs From 6afaf13f939cdcf1b579a500b6f5f33af78453dc Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 20 Jul 2022 21:38:52 +0000 Subject: [PATCH 50/87] Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- avrdude.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index 78c6e1e..b566ec1 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -2,7 +2,7 @@ Name: avrdude Version: 6.4 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Software for programming Atmel AVR Microcontroller License: GPLv2+ @@ -98,6 +98,9 @@ install -p -m 644 %{SOURCE2} $RPM_BUILD_ROOT%{_pkgdocdir}/README.fedora %changelog +* Wed Jul 20 2022 Fedora Release Engineering - 6.4-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + * Wed Apr 20 2022 Hans Ulrich Niedermann - 6.4-3 - Add README.fedora explaining USB device permission setup From 091645923bd236ee9b353b81e683e5dcf31a2b48 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 18 Jan 2023 22:32:54 +0000 Subject: [PATCH 51/87] Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- avrdude.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index b566ec1..f841d14 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -2,7 +2,7 @@ Name: avrdude Version: 6.4 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Software for programming Atmel AVR Microcontroller License: GPLv2+ @@ -98,6 +98,9 @@ install -p -m 644 %{SOURCE2} $RPM_BUILD_ROOT%{_pkgdocdir}/README.fedora %changelog +* Wed Jan 18 2023 Fedora Release Engineering - 6.4-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + * Wed Jul 20 2022 Fedora Release Engineering - 6.4-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild From 4e5d2cc13dd993943c148870f9d22404c9fdbd48 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 19 Jul 2023 14:14:16 +0000 Subject: [PATCH 52/87] Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- avrdude.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index f841d14..8da9c66 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -2,7 +2,7 @@ Name: avrdude Version: 6.4 -Release: 5%{?dist} +Release: 6%{?dist} Summary: Software for programming Atmel AVR Microcontroller License: GPLv2+ @@ -98,6 +98,9 @@ install -p -m 644 %{SOURCE2} $RPM_BUILD_ROOT%{_pkgdocdir}/README.fedora %changelog +* Wed Jul 19 2023 Fedora Release Engineering - 6.4-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + * Wed Jan 18 2023 Fedora Release Engineering - 6.4-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild From f5dd1c3d3f76caf16e9c9f467052dedcfe109292 Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Thu, 18 Jan 2024 13:21:46 +0100 Subject: [PATCH 53/87] udev: Stop making writable all ttyACM* and ttyUSB* devices Commit 775de87f6691c6048cd6d9087cab715e2d1542da made all ttyACM* and ttyUSB* writable by the local user by just copying Debian's avrdude.udev file. This reverts that part of the commit. --- avrdude.udev | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/avrdude.udev b/avrdude.udev index 012395f..abd410c 100644 --- a/avrdude.udev +++ b/avrdude.udev @@ -1,10 +1,10 @@ ACTION!="add|change", GOTO="avrdude_end" # /dev/ttyUSB -SUBSYSTEMS=="usb-serial", TAG+="uaccess" +# SUBSYSTEMS=="usb-serial", TAG+="uaccess" # /dev/ttyACM -SUBSYSTEMS=="usb", DRIVERS=="cdc_acm", TAG+="uaccess" +# SUBSYSTEMS=="usb", DRIVERS=="cdc_acm", TAG+="uaccess" SUBSYSTEM!="usb", GOTO="avrdude_end" From 5f4d299d18fadce71d9c3a0d13a9a557da1858ff Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Thu, 18 Jan 2024 13:06:39 +0100 Subject: [PATCH 54/87] udev rules: Add more programmers from Debian avrdude.udev A longer term solution will be to have a program parse the /usr/etc/avrdude.conf file to determine a list of all programmers devices and have a program write a udev rules file from that information. --- avrdude.udev | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/avrdude.udev b/avrdude.udev index abd410c..cdd9cca 100644 --- a/avrdude.udev +++ b/avrdude.udev @@ -28,6 +28,20 @@ SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2141", TAG+="uaccess SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2144", TAG+="uaccess" # Xplained Mini board SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2145", TAG+="uaccess" +# Curiosity Nano (pkobn) +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2175", TAG+="uaccess" +# MPLAB PICkit4 AVR mode +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2177", TAG+="uaccess" +# MPLAB PICkit4 AVR mode alt 1 +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2178", TAG+="uaccess" +# MPLAB PICkit4 AVR mode alt 2 +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2179", TAG+="uaccess" +# MPLAB Snap AVR mode +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2180", TAG+="uaccess" +# MPLAB Snap AVR mode alt 1 +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="217f", TAG+="uaccess" +# MPLAB Snap AVR mode alt 2 +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2181", TAG+="uaccess" # ATxmega64C3 DFU SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2fd6", TAG+="uaccess" # ATxmega128C3 DFU @@ -94,13 +108,35 @@ SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2ffd", TAG+="uaccess SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2fff", TAG+="uaccess" # PICkit2 SUBSYSTEM=="usb", ATTR{idVendor}=="04d8", ATTR{idProduct}=="0033", TAG+="uaccess" +# MPLAB PICkit4 PIC mode +SUBSYSTEM=="usb", ATTR{idVendor}=="04d8", ATTR{idProduct}=="9012", TAG+="uaccess" +# MPLAB PICkit4 PIC mode alt +SUBSYSTEM=="usb", ATTR{idVendor}=="04d8", ATTR{idProduct}=="9017", TAG+="uaccess" +# MPLAB Snap PIC mode +SUBSYSTEM=="usb", ATTR{idVendor}=="04d8", ATTR{idProduct}=="9018", TAG+="uaccess" +# MPLAB Snap PIC mode alt +SUBSYSTEM=="usb", ATTR{idVendor}=="04d8", ATTR{idProduct}=="9019", TAG+="uaccess" # USBasp SUBSYSTEM=="usb", ATTR{idVendor}=="16c0", ATTR{idProduct}=="05dc", TAG+="uaccess" +# USBasp (old unofficial) +SUBSYSTEM=="usb", ATTR{idVendor}=="03eb", ATTR{idProduct}=="c7b4", TAG+="uaccess" +# Teensy +SUBSYSTEM=="usb", ATTR{idVendor}=="16c0", ATTR{idProduct}=="0478", TAG+="uaccess" # NIBObee SUBSYSTEM=="usb", ATTR{idVendor}=="16c0", ATTR{idProduct}=="092f", TAG+="uaccess" +# Micronucleus +SUBSYSTEM=="usb", ATTR{idVendor}=="16d0", ATTR{idProduct}=="0753", TAG+="uaccess" # eHaJo SUBSYSTEM=="usb", ATTR{idVendor}=="16d0", ATTR{idProduct}=="0ba5", TAG+="uaccess" # USBtinyISP SUBSYSTEM=="usb", ATTR{idVendor}=="1781", ATTR{idProduct}=="0c9f", TAG+="uaccess" +# ISE CKT +SUBSYSTEM=="usb", ATTR{idVendor}=="1209", ATTR{idProduct}=="6570", TAG+="uaccess" +# Arduino Gemma +SUBSYSTEM=="usb", ATTR{idVendor}=="2341", ATTR{idProduct}=="0c9f", TAG+="uaccess" +# Arduino ISP +SUBSYSTEM=="usb", ATTR{idVendor}=="2341", ATTR{idProduct}=="0049", TAG+="uaccess" +# Arduino ISP org +SUBSYSTEM=="usb", ATTR{idVendor}=="2a03", ATTR{idProduct}=="0049", TAG+="uaccess" LABEL="avrdude_end" From 5bd9d33b7aef31c7a9f2b1f9ab7e02ea71077c3c Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Thu, 18 Jan 2024 13:07:16 +0100 Subject: [PATCH 55/87] README.fedora: Improve readability --- README.fedora | 35 ++++++++++++++++++++--------------- 1 file changed, 20 insertions(+), 15 deletions(-) diff --git a/README.fedora b/README.fedora index 1d2fd17..5961130 100644 --- a/README.fedora +++ b/README.fedora @@ -11,7 +11,7 @@ When you run `avrdude`, the avrdude process must be allowed to access the device special file somewhere in `/dev/` which corresponds to the programmer to be used. -`avrdude` support many different programmer types (run `avrdude -c +`avrdude` supports many different programmer types (run `avrdude -c list` to see a list of them). Many of these programmer types are USB devices which appear as a @@ -30,18 +30,18 @@ AT-command devices (device file name `/dev/ttyACM`). While it is technically possible to make all `/dev/ttyUSB` and/or `/dev/ttyACM` devices writable for whichever Linux user happens to be the local user, some of those devices can be devices for which it -is better if they are not being writable by anyone. +is better if they are not writable by just anyone. -Therefore, the avrdude Fedora does *not* make all `/dev/ttyUSB` -and/or `/dev/ttyACM` writable for the local user just by install -the package. +Therefore, the avrdude Fedora package does *not* make all +`/dev/ttyUSB` and/or `/dev/ttyACM` writable for the local user +just by installing the package. If you *do* want to make these devices writable for any local user, you can configure your system yourself by dropping a udev rules file into `/etc/udev/rules.d/`. But while you are at it, you can as well -examine your programmer close (`lsusb` and `lsusb -v` can be helpful -here) and narrow down the udev rule matching to match only your -programmer, not each and every `ttyUSB` or `ttyACM` device. +examine your programmer more closely (`lsusb` and `lsusb -v` can be +helpful here) and narrow down the udev rule matching to match only +your programmer, not each and every `ttyUSB` or `ttyACM` device. ``` /etc/udev/rules.d/99-my-avrdude-programmers.rules ACTION!="add|change", GOTO="my_avrdude_programmers_end" @@ -61,10 +61,15 @@ SUBSYSTEM=="usb", DRIVERS=="cdc_acm", TAG+="uaccess" LABEL="my_avrdude_programmers_end" ``` -Unfortunately, the existing avrdude Fedora package udev rules do not -support setting up permissions for non-local users, like e.g. users -logged in via ssh. If you need such a setup, you will need also to -write your own udev rules file for `/etc/udev/rules.d/`, and set -`OWNER=`, `GROUP=`, `MODE=`, or change the device ACL with something -like `RUN+="/usr/bin/setfacl -m g:avrdude-programmers:rw -'$env{DEVNAME}'"`. + +Non-local users +--------------- + +At this time, the avrdude Fedora package udev rules do not support +setting up permissions for non-local users, like e.g. users logged in +via ssh. + +If you need such a setup, you will need also to write your own udev +rules file for `/etc/udev/rules.d/`, and set `OWNER=`, `GROUP=`, +`MODE=`, or change the device ACL with something like +`RUN+="/usr/bin/setfacl -m g:avrdude-programmers:rw '$env{DEVNAME}'"`. From c3c4799450d790e61a06767f9222313d0f3d8353 Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Thu, 18 Jan 2024 13:14:11 +0100 Subject: [PATCH 56/87] spec: Use double percent inside %changelog --- avrdude.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index 8da9c66..1b4c2a8 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -111,7 +111,7 @@ install -p -m 644 %{SOURCE2} $RPM_BUILD_ROOT%{_pkgdocdir}/README.fedora - Add README.fedora explaining USB device permission setup * Wed Apr 20 2022 Hans Ulrich Niedermann - 6.4-2 -- Install built documentation directly to %{_pkgdocdir} +- Install built documentation directly to %%{_pkgdocdir} - Fix file locations in man page, texinfo docs - Upstream already has fixed these files' x bits - Disable silent rules to help with build problems From db4e9d076f9dd75d1bdd7eaa5a32456be05f90f4 Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Thu, 18 Jan 2024 13:13:34 +0100 Subject: [PATCH 57/87] spec: Match man/info page regardless of compression type Have %files section match the man and info page files regardless of compression type or exact section number. --- avrdude.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/avrdude.spec b/avrdude.spec index 1b4c2a8..a3ab482 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -93,8 +93,8 @@ install -p -m 644 %{SOURCE2} $RPM_BUILD_ROOT%{_pkgdocdir}/README.fedora %config(noreplace) %{_sysconfdir}/%{name} %{_udevrulesdir}/%{udev_rules} %{_bindir}/%{name} -%{_mandir}/man1/%{name}.1.gz -%{_infodir}/%{name}.info.* +%{_mandir}/man1/%{name}.1* +%{_infodir}/%{name}.info* %changelog From 1bf5f122d8e55bbd72c31dd78c8b6a15493f8df2 Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Thu, 18 Jan 2024 13:45:15 +0100 Subject: [PATCH 58/87] Revert "udev: Stop making writable all ttyACM* and ttyUSB* devices" This reverts commit f5dd1c3d3f76caf16e9c9f467052dedcfe109292. I got a little confused about the patch doing that same job. --- avrdude.udev | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/avrdude.udev b/avrdude.udev index cdd9cca..3b92d18 100644 --- a/avrdude.udev +++ b/avrdude.udev @@ -1,10 +1,10 @@ ACTION!="add|change", GOTO="avrdude_end" # /dev/ttyUSB -# SUBSYSTEMS=="usb-serial", TAG+="uaccess" +SUBSYSTEMS=="usb-serial", TAG+="uaccess" # /dev/ttyACM -# SUBSYSTEMS=="usb", DRIVERS=="cdc_acm", TAG+="uaccess" +SUBSYSTEMS=="usb", DRIVERS=="cdc_acm", TAG+="uaccess" SUBSYSTEM!="usb", GOTO="avrdude_end" From a088ec439d4ae18295f60f883b4a4ef25a682528 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 19 Jan 2024 14:01:20 +0000 Subject: [PATCH 59/87] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- avrdude.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index a3ab482..6406e06 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -2,7 +2,7 @@ Name: avrdude Version: 6.4 -Release: 6%{?dist} +Release: 7%{?dist} Summary: Software for programming Atmel AVR Microcontroller License: GPLv2+ @@ -98,6 +98,9 @@ install -p -m 644 %{SOURCE2} $RPM_BUILD_ROOT%{_pkgdocdir}/README.fedora %changelog +* Fri Jan 19 2024 Fedora Release Engineering - 6.4-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Wed Jul 19 2023 Fedora Release Engineering - 6.4-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild From d6a1e399491c5912dbc38182bb004befbb153da7 Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Thu, 18 Jan 2024 13:02:39 +0100 Subject: [PATCH 60/87] Update to avrdude-7.2 release --- .gitignore | 3 + GNUmakefile | 35 ++ avrdude-6.1_includes.patch | 13 - avrdude-6.4-fix-file-locations-in-docs.patch | 23 - avrdude-7.2-detect-readline.patch | 13 + ...ude-7.2-fedora-relocate-avrdude-conf.patch | 65 +++ avrdude.spec | 129 +++-- file-licensing | 476 ++++++++++++++++++ filter-tarball | 137 +++++ sources | 2 +- 10 files changed, 829 insertions(+), 67 deletions(-) create mode 100644 GNUmakefile delete mode 100644 avrdude-6.1_includes.patch delete mode 100644 avrdude-6.4-fix-file-locations-in-docs.patch create mode 100644 avrdude-7.2-detect-readline.patch create mode 100644 avrdude-7.2-fedora-relocate-avrdude-conf.patch create mode 100644 file-licensing create mode 100755 filter-tarball diff --git a/.gitignore b/.gitignore index 551fdce..9faa5d6 100644 --- a/.gitignore +++ b/.gitignore @@ -9,3 +9,6 @@ /*.src.rpm /x86_64/ /avrdude-6.4.tar.gz +/avrdude-7.*/ +/avrdude-7.*.tar.gz +/avrdude-7.*-filtered.tar.xz diff --git a/GNUmakefile b/GNUmakefile new file mode 100644 index 0000000..3b9f64f --- /dev/null +++ b/GNUmakefile @@ -0,0 +1,35 @@ +name = avrdude +version = 7.2 + +RELEASES = +RELEASES += f39 +RELEASES += f40 +RELEASES += f38 +RELEASES += el9 +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) + 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 + black --line-length 80 $(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 -o $@ https://github.com/avrdudes/$(name)/archive/refs/tags/v$(version).tar.gz + +# End of file. diff --git a/avrdude-6.1_includes.patch b/avrdude-6.1_includes.patch deleted file mode 100644 index 5fc8904..0000000 --- a/avrdude-6.1_includes.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -p -up ./configure.org ./configure ---- ./configure.org 2014-06-04 21:00:03.027735142 +0200 -+++ ./configure 2014-06-04 21:04:46.428267513 +0200 -@@ -5650,7 +5650,8 @@ fi - LIBPTHREAD=$LIBPTHREAD - - # Checks for header files. --for ac_header in limits.h stdlib.h string.h -+for ac_header in limits.h stdlib.h string.h inttypes.h stdint.h memory.h \ -+ strings.h sys/stat.h sys_time.h sys_types.h termios.h - do : - as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` - ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" diff --git a/avrdude-6.4-fix-file-locations-in-docs.patch b/avrdude-6.4-fix-file-locations-in-docs.patch deleted file mode 100644 index 14517af..0000000 --- a/avrdude-6.4-fix-file-locations-in-docs.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff -ruN avrdude-6.4/doc/avrdude.texi avrdude-6.4-file-locations/doc/avrdude.texi ---- avrdude-6.4/doc/avrdude.texi 2021-11-29 21:54:35.000000000 +0100 -+++ avrdude-6.4-file-locations/doc/avrdude.texi 2022-04-20 05:07:45.669524302 +0200 -@@ -443,7 +443,8 @@ - contains all programmer and part definitions that AVRDUDE knows about. - If not - specified, AVRDUDE reads the configuration file from --/usr/local/etc/avrdude.conf (FreeBSD and Linux). See Appendix A for -+/etc/avrdude/avrdude.conf (Fedora) or -+/usr/local/etc/avrdude.conf (FreeBSD and generic Linux). See Appendix A for - the method of searching for the configuration file for Windows. - - If @var{config-file} is written as @var{+filename} -@@ -1428,7 +1429,8 @@ - programmer work with AVRDUDE. - - AVRDUDE first looks for a system wide configuration file in a platform --dependent location. On Unix, this is usually -+dependent location. On Fedora, this is -+@code{/etc/avrdude/avrdude.conf}. On Unix, it is usually - @code{/usr/local/etc/avrdude.conf}, while on Windows it is usually in the - same location as the executable file. The name of this file can be - changed using the @option{-C} command line option. After the system wide diff --git a/avrdude-7.2-detect-readline.patch b/avrdude-7.2-detect-readline.patch new file mode 100644 index 0000000..7c5e644 --- /dev/null +++ b/avrdude-7.2-detect-readline.patch @@ -0,0 +1,13 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 73bb0714..bde9304b 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -124,7 +124,7 @@ if(USE_STATIC_LIBS) + set(PREFERRED_LIBHIDAPI libhidapi.a libhidapi-libusb.a libhidapi-hidraw.a hidapi hidapi-libusb hidapi-hidraw) + set(PREFERRED_LIBFTDI libftdi.a ftdi) + set(PREFERRED_LIBFTDI1 libftdi1.a ftdi1) +- set(PREFERRED_LIBREADLINE libreadline.a) ++ set(PREFERRED_LIBREADLINE libreadline.a readline) + set(PREFERRED_LIBGPIOD libgpiod.a gpiod) + else() + set(PREFERRED_LIBELF elf) diff --git a/avrdude-7.2-fedora-relocate-avrdude-conf.patch b/avrdude-7.2-fedora-relocate-avrdude-conf.patch new file mode 100644 index 0000000..28b0eff --- /dev/null +++ b/avrdude-7.2-fedora-relocate-avrdude-conf.patch @@ -0,0 +1,65 @@ +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 6406e06..6940643 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -1,36 +1,73 @@ %global udev_rules 70-avrdude_usbprog.rules +# Allow skipping doc builds for faster mockbuilds without the +# literally hundreds of extra packages required for building docs. +%bcond_without docs + Name: avrdude -Version: 6.4 -Release: 7%{?dist} +Version: 7.2 +Release: 1%{?dist} Summary: Software for programming Atmel AVR Microcontroller -License: GPLv2+ -URL: https://www.nongnu.org/avrdude -Source0: https://download.savannah.gnu.org/releases/%{name}/%{name}-%{version}.tar.gz -Source1: https://salsa.debian.org/debian/avrdude/-/raw/master/debian/avrdude.udev +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: +# curl -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 + +# Debian have a more comprehensive list of programmer devices in their +# avrdude.dev file. We do cannot use this unchanged, though, as we do +# not want to grant blanket access to all ttyUSB and ttyACM devices. +# Source1: https://salsa.debian.org/debian/avrdude/-/raw/master/debian/avrdude.udev +# FIXME: Create udev rules from the device list in avrdude.conf +Source1: avrdude.udev + +# Remarks on the Fedora package for the users Source2: README.fedora -# From: https://savannah.nongnu.org/bugs/?42517 -Patch0: avrdude-6.1_includes.patch + # Stop granting blanket access to all /dev/tty{ACM,USB}* devices Patch1: avrdude-udev-no-blanket-access.patch -# Mention proper doc and config file locations in texinfo documentation -Patch2: avrdude-6.4-fix-file-locations-in-docs.patch +# Help cmake detect libreadline +# Upstream issue: https://github.com/avrdudes/avrdude/issues/1624 +Patch2: avrdude-7.2-detect-readline.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 BuildRequires: bison BuildRequires: elfutils-libelf-devel BuildRequires: hidapi-devel +# As of avrdude-7.2, the gpiod related source files do not build. +# BuildRequires: libgpiod-devel +# EL does not have libhid-devel +%if 0%{?fedora} >= 28 BuildRequires: libhid-devel +%endif BuildRequires: readline-devel BuildRequires: ncurses-devel BuildRequires: libftdi-devel BuildRequires: pkgconfig(libusb) BuildRequires: pkgconfig(libusb-1.0) +%if %{with docs} BuildRequires: texi2html +BuildRequires: texinfo BuildRequires: texinfo-tex -BuildRequires: tetex-dvips +%endif BuildRequires: make # https://fedoraproject.org/wiki/Changes/RemoveObsoleteScriptlets @@ -49,55 +86,87 @@ particular chip. %prep -%setup -q +%setup -q -n %{name}-%{version} cp -p %{SOURCE1} avrdude.udev -%patch0 -p0 -b .patch0 -%patch1 -p1 -b .patch1 -%patch2 -p1 -b .patch2 - -sed -i 's|${PREFIX}/etc/avrdude\.conf|/etc/avrdude/avrdude.conf|g' avrdude.1 -sed -i 's|${PREFIX}/share/doc/avrdude/avrdude\.pdf|%{_pkgdocdir}/avrdude.pdf|g' avrdude.1 - -iconv -f ISO88591 -t UTF8 < ChangeLog-2003 > ChangeLog-2003~ -mv ChangeLog-2003~ ChangeLog-2003 -iconv -f ISO88591 -t UTF8 < NEWS > NEWS~ -mv NEWS~ NEWS +%autopatch -v -p1 +if test -d atmel-docs; then + echo "Directory 'atmel-docs' still exists, aborting." + exit 2 +fi %build -%configure --disable-silent-rules --enable-doc --enable-linuxgpio --enable-linuxspi --enable-parport --sysconfdir=%{_sysconfdir}/%{name} -%make_build +# As of avrdude-7.2, the gpiod related source files do not build. +# -D HAVE_LINUXGPIO=ON +%cmake \ + -D CMAKE_INSTALL_SYSCONFDIR:PATH=%{_sysconfdir} \ + -D CMAKE_BUILD_TYPE=build_type=RelWithDebInfo \ +%if %{with docs} + -D BUILD_DOC:BOOL=ON \ +%else + -D BUILD_DOC:BOOL=OFF \ +%endif + -D HAVE_LINUXSPI:BOOL=ON \ + -D HAVE_PARPORT:BOOL=ON \ + -D FETCHCONTENT_FULLY_DISCONNECTED:BOOL=ON \ + -D FETCHCONTENT_QUIET:BOOL=OFF \ + -D BUILD_SHARED_LIBS:BOOL=NO \ + -D USE_STATIC_LIBS:BOOL=YES +%cmake_build %install -%make_install DOC_INST_DIR="$RPM_BUILD_ROOT%{_pkgdocdir}" +%cmake_install 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.la rm -f $RPM_BUILD_ROOT%{_libdir}/libavrdude.so rm -f $RPM_BUILD_ROOT%{_libdir}/libavrdude.so.1 rm -f $RPM_BUILD_ROOT%{_libdir}/libavrdude.so.1.0.0 +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} install -p -m 644 %{SOURCE2} $RPM_BUILD_ROOT%{_pkgdocdir}/README.fedora +install -p -m 644 -t $RPM_BUILD_ROOT%{_pkgdocdir} AUTHORS NEWS README.md + + +%check +%ctest %files -%doc README AUTHORS ChangeLog* COPYING NEWS doc/TODO +%license COPYING +%doc %{_pkgdocdir}/AUTHORS +%doc %{_pkgdocdir}/NEWS +%doc %{_pkgdocdir}/README.md %doc %{_pkgdocdir}/README.fedora +%if %{with docs} %doc %{_pkgdocdir}/avrdude-html/ %doc %{_pkgdocdir}/avrdude.pdf -%doc %{_pkgdocdir}/avrdude.ps -%config(noreplace) %{_sysconfdir}/%{name} +%endif +%dir %{_sysconfdir}/%{name} +%config(noreplace) %{_sysconfdir}/%{name}/avrdude.conf %{_udevrulesdir}/%{udev_rules} %{_bindir}/%{name} %{_mandir}/man1/%{name}.1* +%if %{with docs} %{_infodir}/%{name}.info* +%endif %changelog +* Fri Jan 19 2024 Hans Ulrich Niedermann - 7.2-1 +- Updated to upstream avrdude-7.2 release from github.com (rhbz#2251649) +- Filter upstream release tarball to remove pdf docs due to licensing +- Migrated to SPDX license +- Switched to cmake build system +- Fixed upstream cmake detection of libreadline.so +- Switched to upstream's new URL (github instead of nongnu.org) +- Stop shipping PS doc format in favour of just avrdude.pdf +- Keep avrdude.conf at the old Fedora location /etc/avrdude/ for now + * Fri Jan 19 2024 Fedora Release Engineering - 6.4-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild diff --git a/file-licensing b/file-licensing new file mode 100644 index 0000000..f8244cc --- /dev/null +++ b/file-licensing @@ -0,0 +1,476 @@ +# 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 +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/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_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 + +Local Variables: +tab-width: 25 +End: diff --git a/filter-tarball b/filter-tarball new file mode 100755 index 0000000..8911655 --- /dev/null +++ b/filter-tarball @@ -0,0 +1,137 @@ +#!/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() + raise err + + +if __name__ == "__main__": + main() diff --git a/sources b/sources index 8fd5dbf..ba89e0a 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (avrdude-6.4.tar.gz) = ce6127c212a83c5079d3bd80a7a0127220f9652201595a24b991916556eb8fc69d2910f7e112d7025a5aeec8d341e72293467ac1dc1a62be1f391dd9408f9a06 +SHA512 (avrdude-7.2-filtered.tar.xz) = 9653cc27ed2090edde74c6a1eb133204611502e8b7c34de47fb35bcd81387b5f9abf045f6e24ea82d095fc5fca0f8f93bad100a1158e8f74106e170c3c88b80f From 931d7d79735cf4c7f8eade4efe0161c567ae0d9b Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Mon, 22 Jan 2024 23:58:43 +0000 Subject: [PATCH 61/87] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- avrdude.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/avrdude.spec b/avrdude.spec index 6940643..22daa61 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -6,7 +6,7 @@ Name: avrdude Version: 7.2 -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 +* Mon Jan 22 2024 Fedora Release Engineering - 7.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Fri Jan 19 2024 Hans Ulrich Niedermann - 7.2-1 - Updated to upstream avrdude-7.2 release from github.com (rhbz#2251649) - Filter upstream release tarball to remove pdf docs due to licensing From 931a994b14000b6fe16053b3976f50bab0fb7791 Mon Sep 17 00:00:00 2001 From: Hans Ulrich Niedermann Date: Wed, 7 Feb 2024 14:55:17 +0100 Subject: [PATCH 62/87] Update to avrdude-7.3 release --- GNUmakefile | 6 +- avrdude-7.2-detect-readline.patch | 13 --- avrdude.spec | 23 ++--- file-licensing | 134 ++++++++++++++++++++++++++++++ filter-tarball | 2 +- sources | 2 +- 6 files changed, 151 insertions(+), 29 deletions(-) delete mode 100644 avrdude-7.2-detect-readline.patch diff --git a/GNUmakefile b/GNUmakefile index 3b9f64f..58bd637 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -1,9 +1,9 @@ name = avrdude -version = 7.2 +version = 7.3 RELEASES = -RELEASES += f39 RELEASES += f40 +RELEASES += f39 RELEASES += f38 RELEASES += el9 RELEASES += el8 @@ -30,6 +30,6 @@ $(name)-$(version)-filtered.tar.xz: $(name)-$(version).tar.gz $(filter-tarball) sha512sum --tag $@ > sources $(name)-$(version).tar.gz: - curl -o $@ https://github.com/avrdudes/$(name)/archive/refs/tags/v$(version).tar.gz + curl -L -o $@ https://github.com/avrdudes/$(name)/archive/refs/tags/v$(version).tar.gz # End of file. diff --git a/avrdude-7.2-detect-readline.patch b/avrdude-7.2-detect-readline.patch deleted file mode 100644 index 7c5e644..0000000 --- a/avrdude-7.2-detect-readline.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 73bb0714..bde9304b 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -124,7 +124,7 @@ if(USE_STATIC_LIBS) - set(PREFERRED_LIBHIDAPI libhidapi.a libhidapi-libusb.a libhidapi-hidraw.a hidapi hidapi-libusb hidapi-hidraw) - set(PREFERRED_LIBFTDI libftdi.a ftdi) - set(PREFERRED_LIBFTDI1 libftdi1.a ftdi1) -- set(PREFERRED_LIBREADLINE libreadline.a) -+ set(PREFERRED_LIBREADLINE libreadline.a readline) - set(PREFERRED_LIBGPIOD libgpiod.a gpiod) - else() - set(PREFERRED_LIBELF elf) diff --git a/avrdude.spec b/avrdude.spec index 22daa61..0ebe25b 100644 --- a/avrdude.spec +++ b/avrdude.spec @@ -5,8 +5,8 @@ %bcond_without docs Name: avrdude -Version: 7.2 -Release: 2%{?dist} +Version: 7.3 +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) @@ -17,8 +17,8 @@ URL: https://github.com/avrdudes/avrdude # 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: -# curl -o %%{name}-%%{version}.tar.gz https://github.com/avrdudes/%%{name}/archive/refs/tags/v%%{version}.tar.gz +# 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 @@ -38,10 +38,6 @@ Source2: README.fedora # Stop granting blanket access to all /dev/tty{ACM,USB}* devices Patch1: avrdude-udev-no-blanket-access.patch -# Help cmake detect libreadline -# Upstream issue: https://github.com/avrdudes/avrdude/issues/1624 -Patch2: avrdude-7.2-detect-readline.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 @@ -52,8 +48,10 @@ BuildRequires: flex BuildRequires: bison BuildRequires: elfutils-libelf-devel BuildRequires: hidapi-devel -# As of avrdude-7.2, the gpiod related source files do not build. +# Optional: Still build problems with gpiod in avrdude-7.3 # BuildRequires: libgpiod-devel +# Optional: libserialport +# BuildRequires: libserialport-devel # EL does not have libhid-devel %if 0%{?fedora} >= 28 BuildRequires: libhid-devel @@ -96,8 +94,6 @@ fi %build -# As of avrdude-7.2, the gpiod related source files do not build. -# -D HAVE_LINUXGPIO=ON %cmake \ -D CMAKE_INSTALL_SYSCONFDIR:PATH=%{_sysconfdir} \ -D CMAKE_BUILD_TYPE=build_type=RelWithDebInfo \ @@ -107,6 +103,7 @@ fi -D BUILD_DOC:BOOL=OFF \ %endif -D HAVE_LINUXSPI:BOOL=ON \ + -D HAVE_LINUXGPIO:BOOL=ON \ -D HAVE_PARPORT:BOOL=ON \ -D FETCHCONTENT_FULLY_DISCONNECTED:BOOL=ON \ -D FETCHCONTENT_QUIET:BOOL=OFF \ @@ -157,6 +154,10 @@ install -p -m 644 -t $RPM_BUILD_ROOT%{_pkgdocdir} AUTHORS NEWS README.md %changelog +* Wed Feb 7 2024 Hans Ulrich Niedermann - 7.3-1 +- Update to avrdude-7.3 release +- Enable linuxgpio (without libgpiod, though) + * Mon Jan 22 2024 Fedora Release Engineering - 7.2-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild diff --git a/file-licensing b/file-licensing index f8244cc..bff8b57 100644 --- a/file-licensing +++ b/file-licensing @@ -308,6 +308,7 @@ 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 @@ -329,6 +330,8 @@ 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 @@ -440,6 +443,16 @@ 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 @@ -470,6 +483,127 @@ 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 diff --git a/filter-tarball b/filter-tarball index 8911655..3ed8949 100755 --- a/filter-tarball +++ b/filter-tarball @@ -129,7 +129,7 @@ def main(argv=None): add_readme_file(filtered_tarfile, tarbase) except BaseException as err: print("Removing incomplete tarball file:", filtered_tarball) - filtered_tarball.unlink() + filtered_tarball.unlink(missing_ok=True) raise err diff --git a/sources b/sources index ba89e0a..28a200b 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (avrdude-7.2-filtered.tar.xz) = 9653cc27ed2090edde74c6a1eb133204611502e8b7c34de47fb35bcd81387b5f9abf045f6e24ea82d095fc5fca0f8f93bad100a1158e8f74106e170c3c88b80f +SHA512 (avrdude-7.3-filtered.tar.xz) = b75cb77ea05b82441794c6e9c0f33e921db580b6993c578e1e27c9191bb0adea7967b004c48600e40283f38d84eb3a35447ed3a13b31de2970091ee3844f9cdc From 4d2cb8e1bbe35ab384e26846b760e536861c53a2 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 17 Jul 2024 17:55:33 +0000 Subject: [PATCH 63/87] 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 64/87] 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 65/87] 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 66/87] 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 67/87] 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 68/87] 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 69/87] 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 70/87] 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 71/87] 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 72/87] 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 73/87] 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 74/87] 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 75/87] 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 76/87] 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 77/87] 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 78/87] 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 79/87] 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 80/87] 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 81/87] 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 82/87] 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 83/87] 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 84/87] 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 85/87] 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 86/87] 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 87/87] 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