diff -Nru avarice-2.13+svn375/avarice.spec avarice-2.14/avarice.spec --- avarice-2.13+svn375/avarice.spec 2018-10-21 07:10:34.000000000 +0000 +++ avarice-2.14/avarice.spec 2020-09-05 20:58:16.000000000 +0000 @@ -13,7 +13,7 @@ Summary: Interface for GDB to Atmel AVR JTAGICE in circuit emulator. Name: avarice -Version: 2.13svn20160229 +Version: 2.14 Release: 1 License: GPL Group: Avr/Development/Tools diff -Nru avarice-2.13+svn375/ChangeLog avarice-2.14/ChangeLog --- avarice-2.13+svn375/ChangeLog 2018-10-15 21:47:01.000000000 +0000 +++ avarice-2.14/ChangeLog 2020-09-05 20:47:46.000000000 +0000 @@ -1,3 +1,84 @@ +2020-09-05 Joerg Wunsch + + * configure.ac: Bump release number to 2.14 + +2020-08-31 Joerg Wunsch + + bug #22 Unknown device is not clearly named + * src/avarice.h: Declare unknownDevice() + * src/utils.cc (unknownDevice): New function + * src/jtagio.cc (jtag1::deviceAutoConfig): Use unknownDevice() + * src/jtag2io.cc (jtag2::deviceAutoConfig): Use unknownDevice() + * src/jtag3io.cc (jtag3::deviceAutoConfig): Use unknownDevice() + +2020-08-31 Joerg Wunsch + + Submitted by Ryan Schmidt: + bug #25 error: use of undeclared identifier 'bfd_get_section_name' + * src/jtagprog.cc: Supply fallbacks for deprecated bfd functions + * src/jtag2prog.cc: (Dito.) + +2020-08-31 Joerg Wunsch + + Submitted by Jack Bradach: + bug #21 Deprecated feature used as example of Avarice use + * src/main.cc (usage): update example usage + +2020-08-31 Joerg Wunsch + + * src/jtag2prog.cc: Silence warnings + * src/jtag2usb.cc: Silence warnings + * src/jtag3io.cc: Silence warnings + * src/jtag3prog.cc: Silence warnings + * src/jtag3run.cc: Silence warnings + * src/jtagprog.cc: Silence warnings + +2020-08-31 Joerg Wunsch + + Submitted by MJH: + patch #26 Fix build error if ENABLE_TARGET_PROGRAMMING is on + * src/jtag2prog.cc: Include "autoconf.h" + * src/jtagprog.cc: (Dito.) + +2020-08-31 Joerg Wunsch + + Submitted by Christian Kastner: + patch #30 Man page fixes + patch #31 Spelling fixes + patch #32 Man pages for start-avarice + patch #33 Man page for kill-avarice + * doc/avarice.1: Minor fixes + * doc/ice-gdb.1: (Dito.) + * doc/start-avarice.1: (New file) + * doc/kill-avarice.1: (New file) + * src/jtag2misc.cc: Spelling ("paramater" => "parameter") + * src/jtag3misc.cc: (Dito.) + * doc/Makefile.am (man_MANS): Add new man pages + +2020-08-30 Joerg Wunsch + + Submitted by Mark Rages and nichtleiter: + patch #25 adds atxmega32e5 + patch #37 Add support for atxmega8e5 + * src/devdescr.cc (ATxmega8E5, ATxmega32E5) New entries + +2020-08-30 Joerg Wunsch + + * src/jtag.h: Fix inconsistent naming between struct + and class jtag + +2020-08-30 Joerg Wunsch + + Submitted by Uwe Frank: + patch #38 Patch to support XMEGA64A3 + * src/devdescr.cc (ATxmega64A3): New entry + +2020-08-29 Joerg Wunsch + + Submitted by Tobias Frost: + patch #35 configure.ac overwrites variable if both ... + * configure.ac: Avoid clobbering AM_CPPFLAGS + 2018-10-15 Joerg Wunsch Submitted by Fabian Blaese: * src/devdescr.cc (ATmega48P, ATmega88P, ATmega168P, diff -Nru avarice-2.13+svn375/config-aux/config.guess avarice-2.14/config-aux/config.guess --- avarice-2.13+svn375/config-aux/config.guess 2018-10-21 07:10:29.000000000 +0000 +++ avarice-2.14/config-aux/config.guess 2020-09-05 20:48:10.000000000 +0000 @@ -2,7 +2,7 @@ # Attempt to guess a canonical system name. # Copyright 1992-2018 Free Software Foundation, Inc. -timestamp='2018-02-24' +timestamp='2018-08-29' # 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 @@ -84,8 +84,6 @@ exit 1 fi -trap 'exit 1' 1 2 15 - # CC_FOR_BUILD -- compiler used by this script. Note that the use of a # compiler to aid in system detection is discouraged as it requires # temporary files to be created and, as you can see below, it is a @@ -96,34 +94,39 @@ # Portable tmp directory creation inspired by the Autoconf team. -set_cc_for_build=' -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 "$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 ; } ; -dummy=$tmp/dummy ; -tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; -case $CC_FOR_BUILD,$HOST_CC,$CC in - ,,) echo "int x;" > "$dummy.c" ; - for c in cc gcc c89 c99 ; do - if ($c -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then - CC_FOR_BUILD="$c"; break ; - fi ; - done ; - if test x"$CC_FOR_BUILD" = x ; then - CC_FOR_BUILD=no_compiler_found ; - fi - ;; - ,,*) CC_FOR_BUILD=$CC ;; - ,*,*) CC_FOR_BUILD=$HOST_CC ;; -esac ; set_cc_for_build= ;' +tmp= +# shellcheck disable=SC2172 +trap 'test -z "$tmp" || rm -fr "$tmp"' 1 2 13 15 +trap 'exitcode=$?; test -z "$tmp" || rm -fr "$tmp"; exit $exitcode' 0 + +set_cc_for_build() { + : "${TMPDIR=/tmp}" + # shellcheck disable=SC2039 + { 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" 2>/dev/null) ; } || + { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir "$tmp" 2>/dev/null) && echo "Warning: creating insecure temp directory" >&2 ; } || + { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } + dummy=$tmp/dummy + case ${CC_FOR_BUILD-},${HOST_CC-},${CC-} in + ,,) echo "int x;" > "$dummy.c" + for driver in cc gcc c89 c99 ; do + if ($driver -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then + CC_FOR_BUILD="$driver" + break + fi + done + if test x"$CC_FOR_BUILD" = x ; then + CC_FOR_BUILD=no_compiler_found + fi + ;; + ,,*) CC_FOR_BUILD=$CC ;; + ,*,*) CC_FOR_BUILD=$HOST_CC ;; + esac +} # This is needed to find uname on a Pyramid OSx when run in the BSD universe. # (ghazi@noc.rutgers.edu 1994-08-24) -if (test -f /.attbin/uname) >/dev/null 2>&1 ; then +if test -f /.attbin/uname ; then PATH=$PATH:/.attbin ; export PATH fi @@ -138,7 +141,7 @@ # We could probably try harder. LIBC=gnu - eval "$set_cc_for_build" + set_cc_for_build cat <<-EOF > "$dummy.c" #include #if defined(__UCLIBC__) @@ -199,7 +202,7 @@ os=netbsdelf ;; arm*|i386|m68k|ns32k|sh3*|sparc|vax) - eval "$set_cc_for_build" + set_cc_for_build if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ELF__ then @@ -237,7 +240,7 @@ # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: # contains redundant information, the shorter form: # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. - echo "$machine-${os}${release}${abi}" + echo "$machine-${os}${release}${abi-}" exit ;; *:Bitrig:*:*) UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'` @@ -389,20 +392,15 @@ 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/[^.]*//'`" + UNAME_REL="`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`" + case `isainfo -b` in + 32) + echo i386-pc-solaris2"$UNAME_REL" + ;; + 64) + echo x86_64-pc-solaris2"$UNAME_REL" + ;; + esac exit ;; sun4*:SunOS:6*:*) # According to config.sub, this is the proper way to canonicalize @@ -482,7 +480,7 @@ echo clipper-intergraph-clix"$UNAME_RELEASE" exit ;; mips:*:*:UMIPS | mips:*:*:RISCos) - eval "$set_cc_for_build" + set_cc_for_build sed 's/^ //' << EOF > "$dummy.c" #ifdef __cplusplus #include /* for printf() prototype */ @@ -579,7 +577,7 @@ exit ;; *:AIX:2:3) if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then - eval "$set_cc_for_build" + set_cc_for_build sed 's/^ //' << EOF > "$dummy.c" #include @@ -660,7 +658,7 @@ esac fi if [ "$HP_ARCH" = "" ]; then - eval "$set_cc_for_build" + set_cc_for_build sed 's/^ //' << EOF > "$dummy.c" #define _HPUX_SOURCE @@ -700,7 +698,7 @@ esac if [ "$HP_ARCH" = hppa2.0w ] then - eval "$set_cc_for_build" + 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 @@ -726,7 +724,7 @@ echo ia64-hp-hpux"$HPUX_REV" exit ;; 3050*:HI-UX:*:*) - eval "$set_cc_for_build" + set_cc_for_build sed 's/^ //' << EOF > "$dummy.c" #include int @@ -840,14 +838,19 @@ *:BSD/OS:*:*) echo "$UNAME_MACHINE"-unknown-bsdi"$UNAME_RELEASE" exit ;; + arm:FreeBSD:*:*) + UNAME_PROCESSOR=`uname -p` + set_cc_for_build + if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ + | grep -q __ARM_PCS_VFP + then + echo "${UNAME_PROCESSOR}"-unknown-freebsd"`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`"-gnueabi + else + echo "${UNAME_PROCESSOR}"-unknown-freebsd"`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`"-gnueabihf + fi + exit ;; *:FreeBSD:*:*) UNAME_PROCESSOR=`/usr/bin/uname -p` - case "$UNAME_PROCESSOR" in - amd64) - UNAME_PROCESSOR=x86_64 ;; - i386) - UNAME_PROCESSOR=i586 ;; - esac echo "$UNAME_PROCESSOR"-unknown-freebsd"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`" exit ;; i*:CYGWIN*:*) @@ -894,8 +897,8 @@ # other systems with GNU libc and userland echo "$UNAME_MACHINE-unknown-`echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`-$LIBC" exit ;; - i*86:Minix:*:*) - echo "$UNAME_MACHINE"-pc-minix + *:Minix:*:*) + echo "$UNAME_MACHINE"-unknown-minix exit ;; aarch64:Linux:*:*) echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" @@ -922,7 +925,7 @@ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; arm*:Linux:*:*) - eval "$set_cc_for_build" + set_cc_for_build if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ARM_EABI__ then @@ -971,7 +974,7 @@ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; mips:Linux:*:* | mips64:Linux:*:*) - eval "$set_cc_for_build" + set_cc_for_build sed 's/^ //' << EOF > "$dummy.c" #undef CPU #undef ${UNAME_MACHINE} @@ -1046,11 +1049,7 @@ echo "$UNAME_MACHINE"-dec-linux-"$LIBC" exit ;; x86_64:Linux:*:*) - if objdump -f /bin/sh | grep -q elf32-x86-64; then - echo "$UNAME_MACHINE"-pc-linux-"$LIBC"x32 - else - echo "$UNAME_MACHINE"-pc-linux-"$LIBC" - fi + echo "$UNAME_MACHINE"-pc-linux-"$LIBC" exit ;; xtensa*:Linux:*:*) echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" @@ -1289,7 +1288,7 @@ exit ;; *:Darwin:*:*) UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown - eval "$set_cc_for_build" + set_cc_for_build if test "$UNAME_PROCESSOR" = unknown ; then UNAME_PROCESSOR=powerpc fi @@ -1362,6 +1361,7 @@ # "uname -m" is not consistent, so use $cputype instead. 386 # is converted to i386 for consistency with other x86 # operating systems. + # shellcheck disable=SC2154 if test "$cputype" = 386; then UNAME_MACHINE=i386 else @@ -1473,7 +1473,7 @@ exit 1 # Local variables: -# eval: (add-hook 'write-file-functions 'time-stamp) +# eval: (add-hook 'before-save-hook 'time-stamp) # time-stamp-start: "timestamp='" # time-stamp-format: "%:y-%02m-%02d" # time-stamp-end: "'" diff -Nru avarice-2.13+svn375/config-aux/config.sub avarice-2.14/config-aux/config.sub --- avarice-2.13+svn375/config-aux/config.sub 2018-10-21 07:10:29.000000000 +0000 +++ avarice-2.14/config-aux/config.sub 2020-09-05 20:48:10.000000000 +0000 @@ -2,7 +2,7 @@ # Configuration validation subroutine script. # Copyright 1992-2018 Free Software Foundation, Inc. -timestamp='2018-02-22' +timestamp='2018-05-24' # 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 @@ -110,131 +110,455 @@ exit 1;; esac -# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). -# 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* | linux-android* | linux-dietlibc | linux-newlib* | \ - linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ - knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \ - kopensolaris*-gnu* | cloudabi*-eabi* | \ - 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" ] - then os=`echo "$1" | sed 's/.*-/-/'` - else os=; fi - ;; -esac - -### Let's recognize common machines as not being operating systems so -### that things like config.sub decstation-3100 work. We also -### recognize some manufacturers as not being operating systems, so we -### can provide default operating systems below. -case $os in - -sun*os*) - # Prevent following clause from handling this invalid input. - ;; - -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ - -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ - -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ - -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 | -knuth | -cray | -microblaze*) - os= - basic_machine=$1 - ;; - -bluegene*) - os=-cnk - ;; - -sim | -cisco | -oki | -wec | -winbond) - os= - basic_machine=$1 - ;; - -scout) - ;; - -wrs) - os=-vxworks - basic_machine=$1 - ;; - -chorusos*) - os=-chorusos - basic_machine=$1 - ;; - -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/'` - ;; - -sco4) - os=-sco3.2v4 - basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` - ;; - -sco3.2.[4-9]*) - os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` - basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` - ;; - -sco3.2v[4-9]*) - # 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/'` - ;; - -udk*) - basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` - ;; - -isc) - os=-isc2.2 - basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` - ;; - -clix*) - basic_machine=clipper-intergraph - ;; - -isc*) - basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'` - ;; - -lynx*178) - os=-lynxos178 - ;; - -lynx*5) - os=-lynxos5 +# Split fields of configuration type +IFS="-" read -r field1 field2 field3 field4 <&2 + exit 1 ;; - -lynx*) - os=-lynxos + *-*-*-*) + basic_machine=$field1-$field2 + os=$field3-$field4 ;; - -ptx*) - basic_machine=`echo "$1" | sed -e 's/86-.*/86-sequent/'` + *-*-*) + # Ambiguous whether COMPANY is present, or skipped and KERNEL-OS is two + # parts + maybe_os=$field2-$field3 + case $maybe_os in + nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc \ + | linux-newlib* | linux-musl* | linux-uclibc* | uclinux-uclibc* \ + | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* \ + | netbsd*-eabi* | kopensolaris*-gnu* | cloudabi*-eabi* \ + | storm-chaos* | os2-emx* | rtmk-nova*) + basic_machine=$field1 + os=$maybe_os + ;; + android-linux) + basic_machine=$field1-unknown + os=linux-android + ;; + *) + basic_machine=$field1-$field2 + os=$field3 + ;; + esac ;; - -psos*) - os=-psos + *-*) + # Second component is usually, but not always the OS + case $field2 in + # Prevent following clause from handling this valid os + sun*os*) + basic_machine=$field1 + os=$field2 + ;; + # Manufacturers + dec* | mips* | sequent* | encore* | pc532* | sgi* | sony* \ + | att* | 7300* | 3300* | delta* | motorola* | sun[234]* \ + | unicom* | ibm* | next | hp | isi* | apollo | altos* \ + | 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 | knuth | cray | microblaze* \ + | sim | cisco | oki | wec | wrs | winbond) + basic_machine=$field1-$field2 + os= + ;; + *) + basic_machine=$field1 + os=$field2 + ;; + esac ;; - -mint | -mint[0-9]*) - basic_machine=m68k-atari - os=-mint + *) + # Convert single-component short-hands not valid as part of + # multi-component configurations. + case $field1 in + 386bsd) + basic_machine=i386-pc + os=bsd + ;; + a29khif) + basic_machine=a29k-amd + os=udi + ;; + adobe68k) + basic_machine=m68010-adobe + os=scout + ;; + am29k) + basic_machine=a29k-none + os=bsd + ;; + amdahl) + basic_machine=580-amdahl + os=sysv + ;; + amigaos | amigados) + basic_machine=m68k-unknown + os=amigaos + ;; + amigaunix | amix) + basic_machine=m68k-unknown + os=sysv4 + ;; + apollo68) + basic_machine=m68k-apollo + os=sysv + ;; + apollo68bsd) + basic_machine=m68k-apollo + os=bsd + ;; + aros) + basic_machine=i386-pc + os=aros + ;; + aux) + basic_machine=m68k-apple + os=aux + ;; + balance) + basic_machine=ns32k-sequent + os=dynix + ;; + blackfin) + basic_machine=bfin-unknown + os=linux + ;; + cegcc) + basic_machine=arm-unknown + os=cegcc + ;; + cray) + basic_machine=j90-cray + os=unicos + ;; + craynv) + basic_machine=craynv-cray + os=unicosmp + ;; + delta88) + basic_machine=m88k-motorola + os=sysv3 + ;; + dicos) + basic_machine=i686-pc + os=dicos + ;; + djgpp) + basic_machine=i586-pc + os=msdosdjgpp + ;; + ebmon29k) + basic_machine=a29k-amd + os=ebmon + ;; + es1800 | OSE68k | ose68k | ose | OSE) + basic_machine=m68k-ericsson + os=ose + ;; + gmicro) + basic_machine=tron-gmicro + os=sysv + ;; + go32) + basic_machine=i386-pc + os=go32 + ;; + h8300hms) + basic_machine=h8300-hitachi + os=hms + ;; + h8300xray) + basic_machine=h8300-hitachi + os=xray + ;; + h8500hms) + basic_machine=h8500-hitachi + os=hms + ;; + harris) + basic_machine=m88k-harris + os=sysv3 + ;; + hp300bsd) + basic_machine=m68k-hp + os=bsd + ;; + hp300hpux) + basic_machine=m68k-hp + os=hpux + ;; + hppaosf) + basic_machine=hppa1.1-hp + os=osf + ;; + hppro) + basic_machine=hppa1.1-hp + os=proelf + ;; + i386mach) + basic_machine=i386-mach + os=mach + ;; + vsta) + basic_machine=i386-unknown + os=vsta + ;; + isi68 | isi) + basic_machine=m68k-isi + os=sysv + ;; + m68knommu) + basic_machine=m68k-unknown + os=linux + ;; + magnum | m3230) + basic_machine=mips-mips + os=sysv + ;; + merlin) + basic_machine=ns32k-utek + os=sysv + ;; + mingw64) + basic_machine=x86_64-pc + os=mingw64 + ;; + mingw32) + basic_machine=i686-pc + os=mingw32 + ;; + mingw32ce) + basic_machine=arm-unknown + os=mingw32ce + ;; + monitor) + basic_machine=m68k-rom68k + os=coff + ;; + morphos) + basic_machine=powerpc-unknown + os=morphos + ;; + moxiebox) + basic_machine=moxie-unknown + os=moxiebox + ;; + msdos) + basic_machine=i386-pc + os=msdos + ;; + msys) + basic_machine=i686-pc + os=msys + ;; + mvs) + basic_machine=i370-ibm + os=mvs + ;; + nacl) + basic_machine=le32-unknown + os=nacl + ;; + ncr3000) + basic_machine=i486-ncr + os=sysv4 + ;; + netbsd386) + basic_machine=i386-unknown + os=netbsd + ;; + netwinder) + basic_machine=armv4l-rebel + os=linux + ;; + news | news700 | news800 | news900) + basic_machine=m68k-sony + os=newsos + ;; + news1000) + basic_machine=m68030-sony + os=newsos + ;; + necv70) + basic_machine=v70-nec + os=sysv + ;; + nh3000) + basic_machine=m68k-harris + os=cxux + ;; + nh[45]000) + basic_machine=m88k-harris + os=cxux + ;; + nindy960) + basic_machine=i960-intel + os=nindy + ;; + mon960) + basic_machine=i960-intel + os=mon960 + ;; + nonstopux) + basic_machine=mips-compaq + os=nonstopux + ;; + os400) + basic_machine=powerpc-ibm + os=os400 + ;; + OSE68000 | ose68000) + basic_machine=m68000-ericsson + os=ose + ;; + os68k) + basic_machine=m68k-none + os=os68k + ;; + paragon) + basic_machine=i860-intel + os=osf + ;; + parisc) + basic_machine=hppa-unknown + os=linux + ;; + pw32) + basic_machine=i586-unknown + os=pw32 + ;; + rdos | rdos64) + basic_machine=x86_64-pc + os=rdos + ;; + rdos32) + basic_machine=i386-pc + os=rdos + ;; + rom68k) + basic_machine=m68k-rom68k + os=coff + ;; + sa29200) + basic_machine=a29k-amd + os=udi + ;; + sei) + basic_machine=mips-sei + os=seiux + ;; + sps7) + basic_machine=m68k-bull + os=sysv2 + ;; + stratus) + basic_machine=i860-stratus + os=sysv4 + ;; + sun2os3) + basic_machine=m68000-sun + os=sunos3 + ;; + sun2os4) + basic_machine=m68000-sun + os=sunos4 + ;; + sun3os3) + basic_machine=m68k-sun + os=sunos3 + ;; + sun3os4) + basic_machine=m68k-sun + os=sunos4 + ;; + sun4os3) + basic_machine=sparc-sun + os=sunos3 + ;; + sun4os4) + basic_machine=sparc-sun + os=sunos4 + ;; + sun4sol2) + basic_machine=sparc-sun + os=solaris2 + ;; + sv1) + basic_machine=sv1-cray + os=unicos + ;; + symmetry) + basic_machine=i386-sequent + os=dynix + ;; + t3e) + basic_machine=alphaev5-cray + os=unicos + ;; + t90) + basic_machine=t90-cray + os=unicos + ;; + toad1) + basic_machine=pdp10-xkl + os=tops20 + ;; + tpf) + basic_machine=s390x-ibm + os=tpf + ;; + udi29k) + basic_machine=a29k-amd + os=udi + ;; + ultra3) + basic_machine=a29k-nyu + os=sym1 + ;; + v810 | necv810) + basic_machine=v810-nec + os=none + ;; + vaxv) + basic_machine=vax-dec + os=sysv + ;; + vms) + basic_machine=vax-dec + os=vms + ;; + vxworks960) + basic_machine=i960-wrs + os=vxworks + ;; + vxworks68) + basic_machine=m68k-wrs + os=vxworks + ;; + vxworks29k) + basic_machine=a29k-wrs + os=vxworks + ;; + xbox) + basic_machine=i686-pc + os=mingw32 + ;; + ymp) + basic_machine=ymp-cray + os=unicos + ;; + *) + basic_machine=$1 + os= + ;; + esac ;; esac @@ -249,12 +573,12 @@ | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ | am33_2.0 \ | arc | arceb \ - | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \ + | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv6m | armv[78][arm] \ | avr | avr32 \ | ba \ | be32 | be64 \ | bfin \ - | c4x | c8051 | clipper \ + | c4x | c8051 | clipper | csky \ | d10v | d30v | dlx | dsp16xx \ | e2k | epiphany \ | fido | fr30 | frv | ft32 \ @@ -293,11 +617,12 @@ | mt \ | msp430 \ | nds32 | nds32le | nds32be \ + | nfp \ | nios | nios2 | nios2eb | nios2el \ | ns16k | ns32k \ | open8 | or1k | or1knd | or32 \ | pdp10 | pj | pjl \ - | powerpc | powerpc64 | powerpc64le | powerpcle \ + | powerpc | powerpc64 | powerpc64le | powerpcle | powerpcspe \ | pru \ | pyramid \ | riscv32 | riscv64 \ @@ -331,20 +656,23 @@ ;; m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip) basic_machine=$basic_machine-unknown - os=-none + os=${os:-none} ;; m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65) ;; + m9s12z | m68hcs12z | hcs12z | s12z) + basic_machine=s12z-unknown + os=${os:-none} + ;; ms1) basic_machine=mt-unknown ;; - strongarm | thumb | xscale) basic_machine=arm-unknown ;; xgate) basic_machine=$basic_machine-unknown - os=-none + os=${os:-none} ;; xscaleeb) basic_machine=armeb-unknown @@ -360,25 +688,20 @@ i*86 | x86_64) basic_machine=$basic_machine-pc ;; - # Object if more than one company name word. - *-*-*) - echo Invalid configuration \`"$1"\': machine \`"$basic_machine"\' not recognized 1>&2 - exit 1 - ;; # 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]-* | arc-* | arceb-* \ + | alphapca5[67]-* | alpha64pca5[67]-* | amd64-* | arc-* | arceb-* \ | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ | avr-* | avr32-* \ | ba-* \ | be32-* | be64-* \ | bfin-* | bs2000-* \ | c[123]* | c30-* | [cjt]90-* | c4x-* \ - | c8051-* | clipper-* | craynv-* | cydra-* \ + | c8051-* | clipper-* | craynv-* | csky-* | cydra-* \ | d10v-* | d30v-* | dlx-* \ | e2k-* | elxsi-* \ | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ @@ -419,13 +742,14 @@ | mt-* \ | msp430-* \ | nds32-* | nds32le-* | nds32be-* \ + | nfp-* \ | nios-* | nios2-* | nios2eb-* | nios2el-* \ | none-* | np1-* | ns16k-* | ns32k-* \ | open8-* \ | or1k*-* \ | orion-* \ | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ - | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ + | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | powerpcspe-* \ | pru-* \ | pyramid-* \ | riscv32-* | riscv64-* \ @@ -456,92 +780,34 @@ ;; # Recognize the various machine names and aliases which stand # for a CPU type and a company and sometimes even an OS. - 386bsd) - basic_machine=i386-pc - os=-bsd - ;; 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) basic_machine=m68000-att ;; 3b*) basic_machine=we32k-att ;; - a29khif) - basic_machine=a29k-amd - os=-udi - ;; abacus) basic_machine=abacus-unknown ;; - adobe68k) - basic_machine=m68010-adobe - os=-scout - ;; alliant | fx80) basic_machine=fx80-alliant ;; altos | altos3068) basic_machine=m68k-altos ;; - am29k) - basic_machine=a29k-none - os=-bsd - ;; - amd64) - basic_machine=x86_64-pc - ;; - amd64-*) - basic_machine=x86_64-`echo "$basic_machine" | sed 's/^[^-]*-//'` - ;; - amdahl) - basic_machine=580-amdahl - os=-sysv - ;; amiga | amiga-*) basic_machine=m68k-unknown ;; - amigaos | amigados) - basic_machine=m68k-unknown - os=-amigaos - ;; - amigaunix | amix) - basic_machine=m68k-unknown - os=-sysv4 - ;; - apollo68) - basic_machine=m68k-apollo - os=-sysv - ;; - apollo68bsd) - basic_machine=m68k-apollo - os=-bsd - ;; - aros) - basic_machine=i386-pc - os=-aros - ;; asmjs) basic_machine=asmjs-unknown ;; - aux) - basic_machine=m68k-apple - os=-aux - ;; - balance) - basic_machine=ns32k-sequent - os=-dynix - ;; - blackfin) - basic_machine=bfin-unknown - os=-linux - ;; blackfin-*) basic_machine=bfin-`echo "$basic_machine" | sed 's/^[^-]*-//'` - os=-linux + os=linux ;; bluegene*) basic_machine=powerpc-ibm - os=-cnk + os=cnk ;; c54x-*) basic_machine=tic54x-`echo "$basic_machine" | sed 's/^[^-]*-//'` @@ -554,43 +820,31 @@ ;; c90) basic_machine=c90-cray - os=-unicos - ;; - cegcc) - basic_machine=arm-unknown - os=-cegcc + os=${os:-unicos} ;; convex-c1) basic_machine=c1-convex - os=-bsd + os=bsd ;; convex-c2) basic_machine=c2-convex - os=-bsd + os=bsd ;; convex-c32) basic_machine=c32-convex - os=-bsd + os=bsd ;; convex-c34) basic_machine=c34-convex - os=-bsd + os=bsd ;; convex-c38) basic_machine=c38-convex - os=-bsd - ;; - cray | j90) - basic_machine=j90-cray - os=-unicos - ;; - craynv) - basic_machine=craynv-cray - os=-unicosmp + os=bsd ;; cr16 | cr16-*) basic_machine=cr16-unknown - os=-elf + os=${os:-elf} ;; crds | unos) basic_machine=m68k-crds @@ -603,7 +857,7 @@ ;; crx) basic_machine=crx-unknown - os=-elf + os=${os:-elf} ;; da30 | da30-*) basic_machine=m68k-da30 @@ -613,35 +867,23 @@ ;; decsystem10* | dec10*) basic_machine=pdp10-dec - os=-tops10 + os=tops10 ;; decsystem20* | dec20*) basic_machine=pdp10-dec - os=-tops20 + os=tops20 ;; delta | 3300 | motorola-3300 | motorola-delta \ | 3300-motorola | delta-motorola) basic_machine=m68k-motorola ;; - delta88) - 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 + os=${os:-bosx} ;; dpx2*) basic_machine=m68k-bull - os=-sysv3 + os=sysv3 ;; e500v[12]) basic_machine=powerpc-unknown @@ -651,20 +893,12 @@ basic_machine=powerpc-`echo "$basic_machine" | sed 's/^[^-]*-//'` os=$os"spe" ;; - ebmon29k) - basic_machine=a29k-amd - os=-ebmon - ;; - elxsi) - basic_machine=elxsi-elxsi - os=-bsd - ;; encore | umax | mmax) basic_machine=ns32k-encore ;; - es1800 | OSE68k | ose68k | ose | OSE) - basic_machine=m68k-ericsson - os=-ose + elxsi) + basic_machine=elxsi-elxsi + os=${os:-bsd} ;; fx2800) basic_machine=i860-alliant @@ -672,45 +906,13 @@ genix) basic_machine=ns32k-ns ;; - gmicro) - basic_machine=tron-gmicro - os=-sysv - ;; - go32) - basic_machine=i386-pc - os=-go32 - ;; h3050r* | hiux*) basic_machine=hppa1.1-hitachi - os=-hiuxwe2 - ;; - h8300hms) - basic_machine=h8300-hitachi - os=-hms - ;; - h8300xray) - basic_machine=h8300-hitachi - os=-xray - ;; - h8500hms) - basic_machine=h8500-hitachi - os=-hms - ;; - harris) - basic_machine=m88k-harris - os=-sysv3 + os=hiuxwe2 ;; hp300-*) basic_machine=m68k-hp ;; - hp300bsd) - basic_machine=m68k-hp - os=-bsd - ;; - hp300hpux) - basic_machine=m68k-hp - os=-hpux - ;; hp3k9[0-9][0-9] | hp9[0-9][0-9]) basic_machine=hppa1.0-hp ;; @@ -740,95 +942,55 @@ hp9k8[0-9][0-9] | hp8[0-9][0-9]) basic_machine=hppa1.0-hp ;; - hppaosf) - basic_machine=hppa1.1-hp - os=-osf - ;; - hppro) - basic_machine=hppa1.1-hp - os=-proelf - ;; i370-ibm* | ibm*) basic_machine=i370-ibm ;; i*86v32) basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'` - os=-sysv32 + os=sysv32 ;; i*86v4*) basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'` - os=-sysv4 + os=sysv4 ;; i*86v) basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'` - os=-sysv + os=sysv ;; i*86sol2) basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'` - os=-solaris2 + os=solaris2 ;; - i386mach) - basic_machine=i386-mach - os=-mach - ;; - vsta) - basic_machine=i386-unknown - os=-vsta + j90 | j90-cray) + basic_machine=j90-cray + os=${os:-unicos} ;; iris | iris4d) basic_machine=mips-sgi case $os in - -irix*) + irix*) ;; *) - os=-irix4 + os=irix4 ;; esac ;; - isi68 | isi) - basic_machine=m68k-isi - os=-sysv - ;; leon-*|leon[3-9]-*) basic_machine=sparc-`echo "$basic_machine" | sed 's/-.*//'` ;; - m68knommu) - basic_machine=m68k-unknown - os=-linux - ;; m68knommu-*) basic_machine=m68k-`echo "$basic_machine" | sed 's/^[^-]*-//'` - os=-linux - ;; - magnum | m3230) - basic_machine=mips-mips - os=-sysv - ;; - merlin) - basic_machine=ns32k-utek - os=-sysv + os=linux ;; microblaze*) basic_machine=microblaze-xilinx ;; - mingw64) - basic_machine=x86_64-pc - os=-mingw64 - ;; - mingw32) - basic_machine=i686-pc - os=-mingw32 - ;; - mingw32ce) - basic_machine=arm-unknown - os=-mingw32ce - ;; miniframe) basic_machine=m68000-convergent ;; - *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) + *mint | mint[0-9]* | *MiNT | *MiNT[0-9]*) basic_machine=m68k-atari - os=-mint + os=mint ;; mips3*-*) basic_machine=`echo "$basic_machine" | sed -e 's/mips3/mips64/'` @@ -836,98 +998,26 @@ mips3*) basic_machine=`echo "$basic_machine" | sed -e 's/mips3/mips64/'`-unknown ;; - monitor) - basic_machine=m68k-rom68k - os=-coff - ;; - morphos) - basic_machine=powerpc-unknown - os=-morphos - ;; - moxiebox) - basic_machine=moxie-unknown - os=-moxiebox - ;; - msdos) - basic_machine=i386-pc - os=-msdos - ;; ms1-*) basic_machine=`echo "$basic_machine" | sed -e 's/ms1-/mt-/'` ;; - msys) - basic_machine=i686-pc - os=-msys - ;; - mvs) - basic_machine=i370-ibm - os=-mvs - ;; - nacl) - basic_machine=le32-unknown - os=-nacl - ;; - ncr3000) - basic_machine=i486-ncr - os=-sysv4 - ;; - netbsd386) - basic_machine=i386-unknown - os=-netbsd - ;; - netwinder) - basic_machine=armv4l-rebel - os=-linux - ;; - news | news700 | news800 | news900) - basic_machine=m68k-sony - os=-newsos - ;; - news1000) - basic_machine=m68030-sony - os=-newsos - ;; news-3600 | risc-news) basic_machine=mips-sony - os=-newsos - ;; - necv70) - basic_machine=v70-nec - os=-sysv + os=newsos ;; next | m*-next) basic_machine=m68k-next case $os in - -nextstep* ) + nextstep* ) ;; - -ns2*) - os=-nextstep2 + ns2*) + os=nextstep2 ;; *) - os=-nextstep3 + os=nextstep3 ;; esac ;; - nh3000) - basic_machine=m68k-harris - os=-cxux - ;; - nh[45]000) - basic_machine=m88k-harris - os=-cxux - ;; - nindy960) - basic_machine=i960-intel - os=-nindy - ;; - mon960) - basic_machine=i960-intel - os=-mon960 - ;; - nonstopux) - basic_machine=mips-compaq - os=-nonstopux - ;; np1) basic_machine=np1-gould ;; @@ -948,38 +1038,18 @@ ;; op50n-* | op60c-*) basic_machine=hppa1.1-oki - os=-proelf + os=proelf ;; openrisc | openrisc-*) basic_machine=or32-unknown ;; - os400) - basic_machine=powerpc-ibm - os=-os400 - ;; - OSE68000 | ose68000) - basic_machine=m68000-ericsson - os=-ose - ;; - os68k) - basic_machine=m68k-none - os=-os68k - ;; pa-hitachi) basic_machine=hppa1.1-hitachi - os=-hiuxwe2 - ;; - paragon) - basic_machine=i860-intel - os=-osf - ;; - parisc) - basic_machine=hppa-unknown - os=-linux + os=hiuxwe2 ;; parisc-*) basic_machine=hppa-`echo "$basic_machine" | sed 's/^[^-]*-//'` - os=-linux + os=linux ;; pbd) basic_machine=sparc-tti @@ -1049,22 +1119,6 @@ ps2) basic_machine=i386-ibm ;; - pw32) - basic_machine=i586-unknown - os=-pw32 - ;; - rdos | rdos64) - basic_machine=x86_64-pc - os=-rdos - ;; - rdos32) - basic_machine=i386-pc - os=-rdos - ;; - rom68k) - basic_machine=m68k-rom68k - os=-coff - ;; rm[46]00) basic_machine=mips-siemens ;; @@ -1077,10 +1131,6 @@ s390x | s390x-*) basic_machine=s390x-ibm ;; - sa29200) - basic_machine=a29k-amd - os=-udi - ;; sb1) basic_machine=mipsisa64sb1-unknown ;; @@ -1089,11 +1139,7 @@ ;; sde) basic_machine=mipsisa32-sde - os=-elf - ;; - sei) - basic_machine=mips-sei - os=-seiux + os=${os:-elf} ;; sequent) basic_machine=i386-sequent @@ -1103,11 +1149,7 @@ ;; simso-wrs) basic_machine=sparclite-wrs - os=-vxworks - ;; - sps7) - basic_machine=m68k-bull - os=-sysv2 + os=vxworks ;; spur) basic_machine=spur-unknown @@ -1115,44 +1157,12 @@ st2000) basic_machine=m68k-tandem ;; - stratus) - basic_machine=i860-stratus - os=-sysv4 - ;; strongarm-* | thumb-*) basic_machine=arm-`echo "$basic_machine" | sed 's/^[^-]*-//'` ;; sun2) basic_machine=m68000-sun ;; - sun2os3) - basic_machine=m68000-sun - os=-sunos3 - ;; - sun2os4) - basic_machine=m68000-sun - os=-sunos4 - ;; - sun3os3) - basic_machine=m68k-sun - os=-sunos3 - ;; - sun3os4) - basic_machine=m68k-sun - os=-sunos4 - ;; - sun4os3) - basic_machine=sparc-sun - os=-sunos3 - ;; - sun4os4) - basic_machine=sparc-sun - os=-sunos4 - ;; - sun4sol2) - basic_machine=sparc-sun - os=-solaris2 - ;; sun3 | sun3-*) basic_machine=m68k-sun ;; @@ -1162,25 +1172,9 @@ sun386 | sun386i | roadrunner) basic_machine=i386-sun ;; - sv1) - basic_machine=sv1-cray - os=-unicos - ;; - symmetry) - basic_machine=i386-sequent - os=-dynix - ;; - t3e) - basic_machine=alphaev5-cray - os=-unicos - ;; - t90) - basic_machine=t90-cray - os=-unicos - ;; tile*) basic_machine=$basic_machine-unknown - os=-linux-gnu + os=linux-gnu ;; tx39) basic_machine=mipstx39-unknown @@ -1188,80 +1182,32 @@ tx39el) basic_machine=mipstx39el-unknown ;; - toad1) - basic_machine=pdp10-xkl - os=-tops20 - ;; tower | tower-32) basic_machine=m68k-ncr ;; - tpf) - basic_machine=s390x-ibm - os=-tpf - ;; - udi29k) - basic_machine=a29k-amd - os=-udi - ;; - ultra3) - basic_machine=a29k-nyu - os=-sym1 - ;; - v810 | necv810) - basic_machine=v810-nec - os=-none - ;; - vaxv) - basic_machine=vax-dec - os=-sysv - ;; - vms) - basic_machine=vax-dec - os=-vms - ;; vpp*|vx|vx-*) basic_machine=f301-fujitsu ;; - vxworks960) - basic_machine=i960-wrs - os=-vxworks - ;; - vxworks68) - basic_machine=m68k-wrs - os=-vxworks - ;; - vxworks29k) - basic_machine=a29k-wrs - os=-vxworks - ;; w65*) basic_machine=w65-wdc - os=-none + os=none ;; w89k-*) basic_machine=hppa1.1-winbond - os=-proelf + os=proelf ;; x64) basic_machine=x86_64-pc ;; - 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 - ;; none) basic_machine=none-none - os=-none + os=${os:-none} ;; # Here we handle the default manufacturer of certain CPU types. It is in @@ -1334,199 +1280,245 @@ # Decode manufacturer-specific aliases for certain operating systems. -if [ x"$os" != x"" ] +if [ x$os != x ] then case $os in # 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 + # solaris* is a basic system type, with this one exception. + auroraux) + os=auroraux ;; - -solaris1 | -solaris1.*) + bluegene*) + os=cnk + ;; + solaris1 | solaris1.*) os=`echo $os | sed -e 's|solaris1|sunos4|'` ;; - -solaris) - os=-solaris2 + solaris) + os=solaris2 ;; - -unixware*) - os=-sysv4.2uw + unixware*) + os=sysv4.2uw ;; - -gnu/linux*) + gnu/linux*) os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` ;; # es1800 is here to avoid being matched by es* (a different OS) - -es1800*) - os=-ose + es1800*) + os=ose + ;; + # Some version numbers need modification + chorusos*) + os=chorusos + ;; + isc) + os=isc2.2 + ;; + sco6) + os=sco5v6 + ;; + sco5) + os=sco3.2v5 + ;; + sco4) + os=sco3.2v4 + ;; + sco3.2.[4-9]*) + os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` + ;; + sco3.2v[4-9]* | sco5v6*) + # Don't forget version if it is 3.2v4 or newer. + ;; + scout) + # Don't match below + ;; + sco*) + os=sco3.2v2 + ;; + psos*) + os=psos ;; # Now accept the basic system types. # The portable systems comes first. # 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* | -cnk* | -sunos | -sunos[34]*\ - | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ - | -sym* | -kopensolaris* | -plan9* \ - | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ - | -aos* | -aros* | -cloudabi* | -sortix* \ - | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ - | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ - | -hiux* | -knetbsd* | -mirbsd* | -netbsd* \ - | -bitrig* | -openbsd* | -solidbsd* | -libertybsd* \ - | -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* | -cegcc* | -glidix* \ - | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ - | -midipix* | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ - | -linux-newlib* | -linux-musl* | -linux-uclibc* \ - | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \ - | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* \ - | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ - | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ - | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ - | -morphos* | -superux* | -rtmk* | -windiss* \ - | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ - | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* \ - | -onefs* | -tirtos* | -phoenix* | -fuchsia* | -redox* | -bme* \ - | -midnightbsd*) + # sysv* is not here because it comes later, after sysvr4. + gnu* | bsd* | mach* | minix* | genix* | ultrix* | irix* \ + | *vms* | esix* | aix* | cnk* | sunos | sunos[34]*\ + | hpux* | unos* | osf* | luna* | dgux* | auroraux* | solaris* \ + | sym* | kopensolaris* | plan9* \ + | amigaos* | amigados* | msdos* | newsos* | unicos* | aof* \ + | aos* | aros* | cloudabi* | sortix* \ + | nindy* | vxsim* | vxworks* | ebmon* | hms* | mvs* \ + | clix* | riscos* | uniplus* | iris* | rtu* | xenix* \ + | knetbsd* | mirbsd* | netbsd* \ + | bitrig* | openbsd* | solidbsd* | libertybsd* \ + | ekkobsd* | kfreebsd* | freebsd* | riscix* | lynxos* \ + | bosx* | nextstep* | cxux* | aout* | elf* | oabi* \ + | ptx* | coff* | ecoff* | winnt* | domain* | vsta* \ + | udi* | eabi* | lites* | ieee* | go32* | aux* | hcos* \ + | chorusrdb* | cegcc* | glidix* \ + | cygwin* | msys* | pe* | moss* | proelf* | rtems* \ + | midipix* | mingw32* | mingw64* | linux-gnu* | linux-android* \ + | linux-newlib* | linux-musl* | linux-uclibc* \ + | uxpv* | beos* | mpeix* | udk* | moxiebox* \ + | interix* | uwin* | mks* | rhapsody* | darwin* \ + | openstep* | oskit* | conix* | pw32* | nonstopux* \ + | storm-chaos* | tops10* | tenex* | tops20* | its* \ + | os2* | vos* | palmos* | uclinux* | nucleus* \ + | morphos* | superux* | rtmk* | windiss* \ + | powermax* | dnix* | nx6 | nx7 | sei* | dragonfly* \ + | skyos* | haiku* | rdos* | toppers* | drops* | es* \ + | onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \ + | midnightbsd*) # Remember, each alternative MUST END IN *, to match a version number. ;; - -qnx*) + qnx*) case $basic_machine in x86-* | i*86-*) ;; *) - os=-nto$os + os=nto-$os ;; esac ;; - -nto-qnx*) + hiux*) + os=hiuxwe2 ;; - -nto*) + nto-qnx*) + ;; + nto*) os=`echo $os | sed -e 's|nto|nto-qnx|'` ;; - -sim | -xray | -os68k* | -v88r* \ - | -windows* | -osx | -abug | -netware* | -os9* \ - | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) + sim | xray | os68k* | v88r* \ + | windows* | osx | abug | netware* | os9* \ + | macos* | mpw* | magic* | mmixware* | mon960* | lnews*) + ;; + linux-dietlibc) + os=linux-dietlibc + ;; + linux*) + os=`echo $os | sed -e 's|linux|linux-gnu|'` + ;; + lynx*178) + os=lynxos178 ;; - -mac*) + lynx*5) + os=lynxos5 + ;; + lynx*) + os=lynxos + ;; + mac*) os=`echo "$os" | sed -e 's|mac|macos|'` ;; - -linux-dietlibc) - os=-linux-dietlibc + opened*) + os=openedition ;; - -linux*) - os=`echo $os | sed -e 's|linux|linux-gnu|'` + os400*) + os=os400 ;; - -sunos5*) + sunos5*) os=`echo "$os" | sed -e 's|sunos5|solaris2|'` ;; - -sunos6*) + sunos6*) os=`echo "$os" | sed -e 's|sunos6|solaris3|'` ;; - -opened*) - os=-openedition + wince*) + os=wince ;; - -os400*) - os=-os400 + utek*) + os=bsd ;; - -wince*) - os=-wince + dynix*) + os=bsd ;; - -utek*) - os=-bsd + acis*) + os=aos ;; - -dynix*) - os=-bsd + atheos*) + os=atheos ;; - -acis*) - os=-aos + syllable*) + os=syllable ;; - -atheos*) - os=-atheos - ;; - -syllable*) - os=-syllable - ;; - -386bsd) - os=-bsd + 386bsd) + os=bsd ;; - -ctix* | -uts*) - os=-sysv + ctix* | uts*) + os=sysv ;; - -nova*) - os=-rtmk-nova + nova*) + os=rtmk-nova ;; - -ns2) - os=-nextstep2 + ns2) + os=nextstep2 ;; - -nsk*) - os=-nsk + nsk*) + os=nsk ;; # Preserve the version number of sinix5. - -sinix5.*) + sinix5.*) os=`echo $os | sed -e 's|sinix|sysv|'` ;; - -sinix*) - os=-sysv4 + sinix*) + os=sysv4 ;; - -tpf*) - os=-tpf + tpf*) + os=tpf ;; - -triton*) - os=-sysv3 + triton*) + os=sysv3 ;; - -oss*) - os=-sysv3 + oss*) + os=sysv3 ;; - -svr4*) - os=-sysv4 + svr4*) + os=sysv4 ;; - -svr3) - os=-sysv3 + svr3) + os=sysv3 ;; - -sysvr4) - os=-sysv4 + sysvr4) + os=sysv4 ;; - # This must come after -sysvr4. - -sysv*) + # This must come after sysvr4. + sysv*) ;; - -ose*) - os=-ose + ose*) + os=ose ;; - -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) - os=-mint + *mint | mint[0-9]* | *MiNT | MiNT[0-9]*) + os=mint ;; - -zvmoe) - os=-zvmoe + zvmoe) + os=zvmoe ;; - -dicos*) - os=-dicos + dicos*) + os=dicos ;; - -pikeos*) + pikeos*) # Until real need of OS specific support for # particular features comes up, bare metal # configurations are quite functional. case $basic_machine in arm*) - os=-eabi + os=eabi ;; *) - os=-elf + os=elf ;; esac ;; - -nacl*) + nacl*) ;; - -ios) + ios) ;; - -none) + none) + ;; + *-eabi) ;; *) - # Get rid of the `-' at the beginning of $os. - os=`echo $os | sed 's/[^-]*-//'` echo Invalid configuration \`"$1"\': system \`"$os"\' not recognized 1>&2 exit 1 ;; @@ -1545,173 +1537,179 @@ case $basic_machine in score-*) - os=-elf + os=elf ;; spu-*) - os=-elf + os=elf ;; *-acorn) - os=-riscix1.2 + os=riscix1.2 ;; arm*-rebel) - os=-linux + os=linux ;; arm*-semi) - os=-aout + os=aout ;; c4x-* | tic4x-*) - os=-coff + os=coff ;; c8051-*) - os=-elf + os=elf + ;; + clipper-intergraph) + os=clix ;; hexagon-*) - os=-elf + os=elf ;; tic54x-*) - os=-coff + os=coff ;; tic55x-*) - os=-coff + os=coff ;; tic6x-*) - os=-coff + os=coff ;; # This must come before the *-dec entry. pdp10-*) - os=-tops20 + os=tops20 ;; pdp11-*) - os=-none + os=none ;; *-dec | vax-*) - os=-ultrix4.2 + os=ultrix4.2 ;; m68*-apollo) - os=-domain + os=domain ;; i386-sun) - os=-sunos4.0.2 + os=sunos4.0.2 ;; m68000-sun) - os=-sunos3 + os=sunos3 ;; m68*-cisco) - os=-aout + os=aout ;; mep-*) - os=-elf + os=elf ;; mips*-cisco) - os=-elf + os=elf ;; mips*-*) - os=-elf + os=elf ;; or32-*) - os=-coff + os=coff ;; *-tti) # must be before sparc entry or we get the wrong os. - os=-sysv3 + os=sysv3 ;; sparc-* | *-sun) - os=-sunos4.1.1 + os=sunos4.1.1 ;; pru-*) - os=-elf + os=elf ;; *-be) - os=-beos + os=beos ;; *-ibm) - os=-aix + os=aix ;; *-knuth) - os=-mmixware + os=mmixware ;; *-wec) - os=-proelf + os=proelf ;; *-winbond) - os=-proelf + os=proelf ;; *-oki) - os=-proelf + os=proelf ;; *-hp) - os=-hpux + os=hpux ;; *-hitachi) - os=-hiux + os=hiux ;; i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) - os=-sysv + os=sysv ;; *-cbm) - os=-amigaos + os=amigaos ;; *-dg) - os=-dgux + os=dgux ;; *-dolphin) - os=-sysv3 + os=sysv3 ;; m68k-ccur) - os=-rtu + os=rtu ;; m88k-omron*) - os=-luna + os=luna ;; *-next) - os=-nextstep + os=nextstep ;; *-sequent) - os=-ptx + os=ptx ;; *-crds) - os=-unos + os=unos ;; *-ns) - os=-genix + os=genix ;; i370-*) - os=-mvs + os=mvs ;; *-gould) - os=-sysv + os=sysv ;; *-highlevel) - os=-bsd + os=bsd ;; *-encore) - os=-bsd + os=bsd ;; *-sgi) - os=-irix + os=irix ;; *-siemens) - os=-sysv4 + os=sysv4 ;; *-masscomp) - os=-rtu + os=rtu ;; f30[01]-fujitsu | f700-fujitsu) - os=-uxpv + os=uxpv ;; *-rom68k) - os=-coff + os=coff ;; *-*bug) - os=-coff + os=coff ;; *-apple) - os=-macos + os=macos ;; *-atari*) - os=-mint + os=mint + ;; + *-wrs) + os=vxworks ;; *) - os=-none + os=none ;; esac fi @@ -1722,67 +1720,70 @@ case $basic_machine in *-unknown) case $os in - -riscix*) + riscix*) vendor=acorn ;; - -sunos*) + sunos*) vendor=sun ;; - -cnk*|-aix*) + cnk*|-aix*) vendor=ibm ;; - -beos*) + beos*) vendor=be ;; - -hpux*) + hpux*) vendor=hp ;; - -mpeix*) + mpeix*) vendor=hp ;; - -hiux*) + hiux*) vendor=hitachi ;; - -unos*) + unos*) vendor=crds ;; - -dgux*) + dgux*) vendor=dg ;; - -luna*) + luna*) vendor=omron ;; - -genix*) + genix*) vendor=ns ;; - -mvs* | -opened*) + clix*) + vendor=intergraph + ;; + mvs* | opened*) vendor=ibm ;; - -os400*) + os400*) vendor=ibm ;; - -ptx*) + ptx*) vendor=sequent ;; - -tpf*) + tpf*) vendor=ibm ;; - -vxsim* | -vxworks* | -windiss*) + vxsim* | vxworks* | windiss*) vendor=wrs ;; - -aux*) + aux*) vendor=apple ;; - -hms*) + hms*) vendor=hitachi ;; - -mpw* | -macos*) + mpw* | macos*) vendor=apple ;; - -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) + *mint | mint[0-9]* | *MiNT | MiNT[0-9]*) vendor=atari ;; - -vos*) + vos*) vendor=stratus ;; esac @@ -1790,11 +1791,11 @@ ;; esac -echo "$basic_machine$os" +echo "$basic_machine-$os" exit # Local variables: -# eval: (add-hook 'write-file-functions 'time-stamp) +# eval: (add-hook 'before-save-hook 'time-stamp) # time-stamp-start: "timestamp='" # time-stamp-format: "%:y-%02m-%02d" # time-stamp-end: "'" diff -Nru avarice-2.13+svn375/configure avarice-2.14/configure --- avarice-2.13+svn375/configure 2018-10-21 07:10:29.000000000 +0000 +++ avarice-2.14/configure 2020-09-05 20:48:09.000000000 +0000 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for avarice 2.13svn20160229. +# Generated by GNU Autoconf 2.69 for avarice 2.14. # # # Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc. @@ -577,8 +577,8 @@ # Identity of this package. PACKAGE_NAME='avarice' PACKAGE_TARNAME='avarice' -PACKAGE_VERSION='2.13svn20160229' -PACKAGE_STRING='avarice 2.13svn20160229' +PACKAGE_VERSION='2.14' +PACKAGE_STRING='avarice 2.14' PACKAGE_BUGREPORT='' PACKAGE_URL='' @@ -709,7 +709,6 @@ docdir oldincludedir includedir -runstatedir localstatedir sharedstatedir sysconfdir @@ -788,7 +787,6 @@ sysconfdir='${prefix}/etc' sharedstatedir='${prefix}/com' localstatedir='${prefix}/var' -runstatedir='${localstatedir}/run' includedir='${prefix}/include' oldincludedir='/usr/include' docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' @@ -1041,15 +1039,6 @@ | -silent | --silent | --silen | --sile | --sil) silent=yes ;; - -runstatedir | --runstatedir | --runstatedi | --runstated \ - | --runstate | --runstat | --runsta | --runst | --runs \ - | --run | --ru | --r) - ac_prev=runstatedir ;; - -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \ - | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \ - | --run=* | --ru=* | --r=*) - runstatedir=$ac_optarg ;; - -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) ac_prev=sbindir ;; -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ @@ -1187,7 +1176,7 @@ for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ datadir sysconfdir sharedstatedir localstatedir includedir \ oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ - libdir localedir mandir runstatedir + libdir localedir mandir do eval ac_val=\$$ac_var # Remove trailing slashes. @@ -1300,7 +1289,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures avarice 2.13svn20160229 to adapt to many kinds of systems. +\`configure' configures avarice 2.14 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1340,7 +1329,6 @@ --sysconfdir=DIR read-only single-machine data [PREFIX/etc] --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] --localstatedir=DIR modifiable single-machine data [PREFIX/var] - --runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run] --libdir=DIR object code libraries [EPREFIX/lib] --includedir=DIR C header files [PREFIX/include] --oldincludedir=DIR C header files for non-gcc [/usr/include] @@ -1371,7 +1359,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of avarice 2.13svn20160229:";; + short | recursive ) echo "Configuration of avarice 2.14:";; esac cat <<\_ACEOF @@ -1468,7 +1456,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -avarice configure 2.13svn20160229 +avarice configure 2.14 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1925,7 +1913,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by avarice $as_me 2.13svn20160229, which was +It was created by avarice $as_me 2.14, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2792,7 +2780,7 @@ # Define the identity of the package. PACKAGE='avarice' - VERSION='2.13svn20160229' + VERSION='2.14' cat >>confdefs.h <<_ACEOF @@ -7071,8 +7059,7 @@ fi -AM_CPPFLAGS=$ENABLE_WARNINGS - +_CPPFLAGS="$ENABLE_WARNINGS" # --enable-target-programming / --disable-target-programming # Check whether --enable-target-programming was given. @@ -7087,7 +7074,9 @@ fi -AM_CPPFLAGS=$ENABLE_TARGET_PROGRAMMING +_CPPFLAGS="$_CPPFLAGS $ENABLE_TARGET_PROGRAMMING" + +AM_CPPFLAGS=$_CPPFLAGS if test "x$enable_target_programming" = "xyes"; then @@ -7636,7 +7625,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by avarice $as_me 2.13svn20160229, which was +This file was extended by avarice $as_me 2.14, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -7702,7 +7691,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -avarice config.status 2.13svn20160229 +avarice config.status 2.14 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff -Nru avarice-2.13+svn375/configure.ac avarice-2.14/configure.ac --- avarice-2.13+svn375/configure.ac 2016-02-29 22:23:07.000000000 +0000 +++ avarice-2.14/configure.ac 2020-09-05 20:47:46.000000000 +0000 @@ -18,11 +18,11 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, USA. # -# $Id: configure.ac 359 2016-02-29 22:23:07Z joerg_wunsch $ +# $Id: configure.ac 388 2020-09-05 20:46:04Z joerg_wunsch $ # AC_PREREQ(2.57) -AC_INIT(avarice, 2.13svn20160229) +AC_INIT(avarice, 2.14) AC_CONFIG_AUX_DIR([config-aux]) AC_CONFIG_SRCDIR([src/main.cc]) AC_CONFIG_HEADERS([src/autoconf.h:src/autoconf.hin]) @@ -174,7 +174,7 @@ esac], [ENABLE_WARNINGS="-Wall -Wextra"]) -AC_SUBST([AM_CPPFLAGS], [$ENABLE_WARNINGS]) +_CPPFLAGS="$ENABLE_WARNINGS" # --enable-target-programming / --disable-target-programming AC_ARG_ENABLE( @@ -189,7 +189,9 @@ esac], [ENABLE_TARGET_PROGRAMMING="-DENABLE_TARGET_PROGRAMMING=0"]) -AC_SUBST([AM_CPPFLAGS], [$ENABLE_TARGET_PROGRAMMING]) +_CPPFLAGS="$_CPPFLAGS $ENABLE_TARGET_PROGRAMMING" + +AC_SUBST([AM_CPPFLAGS], [$_CPPFLAGS]) if test "x$enable_target_programming" = "xyes"; then if test "x$ac_found_bfd" = "xno"; then diff -Nru avarice-2.13+svn375/debian/changelog avarice-2.14/debian/changelog --- avarice-2.13+svn375/debian/changelog 2020-03-22 15:34:12.000000000 +0000 +++ avarice-2.14/debian/changelog 2020-09-17 16:15:33.000000000 +0000 @@ -1,8 +1,29 @@ -avarice (2.13+svn375-1build1) focal; urgency=medium +avarice (2.14-1) unstable; urgency=medium - * No-change rebuild for libgcc-s1 package name change. + * New upstream release. - -- Matthias Klose Sun, 22 Mar 2020 16:34:12 +0100 + [ Christian Kastner ] + * Update d/watch to format version 4 + * gbp.conf: Set patch-numbers = False + * Switch Build-Depends from debhelper to debhelper-compat and remove now + obsolete d/compat. + + [ Tobias Frost ] + * Changes due to the new upstream release: + - manpages included upstream, drop our copies. + - Drop patches, applied upstream: + Man-page-fixes.patch, Spelling-fixes.patch, do-not-overwrite-vars.patch + - New patch ftbfs-__unused.patch to fix a FTBFS. + The patch needs an additional B-D on autoconf-archive and a autogenerated + file to be cleaned in d/clean. + * Enable Salsa CI. + * lintian-fix: debian-rules-uses-as-needed-linker-flag, retire the + "as-needed" linker flags; it's now the default. + * Bump SV to 4.5.0: no changes required. + * Use compat level 13; no changes required. + * Document reason why we are keeping the get-orig-source rule. + + -- Tobias Frost Thu, 17 Sep 2020 18:15:33 +0200 avarice (2.13+svn375-1) unstable; urgency=medium diff -Nru avarice-2.13+svn375/debian/clean avarice-2.14/debian/clean --- avarice-2.13+svn375/debian/clean 1970-01-01 00:00:00.000000000 +0000 +++ avarice-2.14/debian/clean 2020-09-17 15:32:29.000000000 +0000 @@ -0,0 +1 @@ +src/autoconf.hin diff -Nru avarice-2.13+svn375/debian/compat avarice-2.14/debian/compat --- avarice-2.13+svn375/debian/compat 2018-10-21 07:28:24.000000000 +0000 +++ avarice-2.14/debian/compat 1970-01-01 00:00:00.000000000 +0000 @@ -1 +0,0 @@ -11 diff -Nru avarice-2.13+svn375/debian/control avarice-2.14/debian/control --- avarice-2.13+svn375/debian/control 2018-10-21 07:35:49.000000000 +0000 +++ avarice-2.14/debian/control 2020-09-17 15:39:35.000000000 +0000 @@ -3,15 +3,16 @@ Priority: optional Maintainer: Christian Kastner Uploaders: Tobias Frost -Build-Depends: binutils-dev, - debhelper (>= 11), +Build-Depends: autoconf-archive, + binutils-dev, + debhelper-compat (= 13), libhidapi-dev [!hurd-i386], libiberty-dev, libusb-dev, zlib1g-dev Build-Conflicts: binutils-multiarch Rules-Requires-Root: no -Standards-Version: 4.2.1 +Standards-Version: 4.5.0 Homepage: http://avarice.sourceforge.net/ Vcs-Git: https://salsa.debian.org/debian/avarice.git Vcs-Browser: https://salsa.debian.org/debian/avarice diff -Nru avarice-2.13+svn375/debian/gbp.conf avarice-2.14/debian/gbp.conf --- avarice-2.13+svn375/debian/gbp.conf 2018-10-21 07:15:43.000000000 +0000 +++ avarice-2.14/debian/gbp.conf 2020-09-15 18:31:29.000000000 +0000 @@ -3,3 +3,6 @@ debian-branch=master pristine-tar = True sign-tags = True + +[pq] +patch-numbers = False diff -Nru avarice-2.13+svn375/debian/gitlab-ci.yml avarice-2.14/debian/gitlab-ci.yml --- avarice-2.13+svn375/debian/gitlab-ci.yml 1970-01-01 00:00:00.000000000 +0000 +++ avarice-2.14/debian/gitlab-ci.yml 2020-09-15 18:41:23.000000000 +0000 @@ -0,0 +1,16 @@ +--- +include: + - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/salsa-ci.yml + - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/pipeline-jobs.yml + +# Disable tests that currently make no sense for this repo +variables: +# SALSA_CI_DISABLE_APTLY: 1 + SALSA_CI_DISABLE_AUTOPKGTEST: 1 +# SALSA_CI_DISABLE_BLHC: 1 +# SALSA_CI_DISABLE_LINTIAN: 1 +# SALSA_CI_DISABLE_PIUPARTS: 1 +# SALSA_CI_DISABLE_REPROTEST: 1 +# SALSA_CI_DISABLE_BUILD_PACKAGE_ALL: 1 +# SALSA_CI_DISABLE_BUILD_PACKAGE_ANY: 1 + diff -Nru avarice-2.13+svn375/debian/man/kill-avarice.1 avarice-2.14/debian/man/kill-avarice.1 --- avarice-2.13+svn375/debian/man/kill-avarice.1 2018-10-21 07:15:43.000000000 +0000 +++ avarice-2.14/debian/man/kill-avarice.1 1970-01-01 00:00:00.000000000 +0000 @@ -1,10 +0,0 @@ -.TH KILL-AVARICE 1 "2015-04-10" -.SH NAME -kill-avarice \- terminate all running instances of avarice -.SH SYNOPSIS -.B kill-avarice -.SH DESCRIPTION -Terminates all running instances of \fBavarace\fP by sending them SIGKILL. -.SH SEE ALSO -.BR avarice (1), -.BR start-avarice (1). diff -Nru avarice-2.13+svn375/debian/man/start-avarice.1 avarice-2.14/debian/man/start-avarice.1 --- avarice-2.13+svn375/debian/man/start-avarice.1 2018-10-21 07:15:43.000000000 +0000 +++ avarice-2.14/debian/man/start-avarice.1 1970-01-01 00:00:00.000000000 +0000 @@ -1,25 +0,0 @@ -.TH START-AVARICE 1 "2015-04-10" -.SH NAME -start-avarice \- launch avarice in detached mode -.SH SYNOPSIS -.B start-avarice -.RI [ file ] -.SH DESCRIPTION -\fBstart-avarice\fR is a helper to launch \fBavarice\fR in detached mode. -\fBavarice\fR will be listening in GDB mode on local port \fB6423\fR. You can -then connect from \fBavr-gdb\fR like so: -.IP -(gdb) target remote localhost:6423 -.PP -Other running instances of \fBavarace\fP are killed first. - -If the optional argument \fIfile\fR is specified, the target is first -erased, and then programmed with this file. Note that this feature has -been deprecated though, and may disappear anytime in the future. -.SH ENVIRONMENT -.IP AVARICE_ARGS -Additional arguments to pass on to \fBavarice\fR. -.SH SEE ALSO -.BR avarice (1), -.BR gdb (1), -.BR kill-avarice (1). diff -Nru avarice-2.13+svn375/debian/manpages avarice-2.14/debian/manpages --- avarice-2.13+svn375/debian/manpages 2018-10-21 07:15:43.000000000 +0000 +++ avarice-2.14/debian/manpages 1970-01-01 00:00:00.000000000 +0000 @@ -1,2 +0,0 @@ -doc/avarice.1 -debian/man/* diff -Nru avarice-2.13+svn375/debian/patches/do-not-overwrite-vars.patch avarice-2.14/debian/patches/do-not-overwrite-vars.patch --- avarice-2.13+svn375/debian/patches/do-not-overwrite-vars.patch 2018-10-21 07:15:43.000000000 +0000 +++ avarice-2.14/debian/patches/do-not-overwrite-vars.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,47 +0,0 @@ -Description: Do not overwrite variable by subsequent AC_SUBST call but concatenate them -Author: Tobias Frost -Forwarded: https://sourceforge.net/p/avarice/patches/35/ -Last-Update: 2015-06-16 ---- -This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ ---- a/configure.ac -+++ b/configure.ac -@@ -168,13 +168,15 @@ - [--disable-warnings], - [Disable -Wall -Wextra options]), - [case "${enableval}" in -- yes) ENABLE_WARNINGS="-Wall -Wextra" ;; -+ yes) ENABLE_WARNINGS=" -Wall -Wextra" ;; - no) ENABLE_WARNINGS="" ;; - *) AC_MSG_ERROR(bad value ${enableval} for disable-warnings option) ;; - esac], -- [ENABLE_WARNINGS="-Wall -Wextra"]) -+ [ENABLE_WARNINGS=" -Wall -Wextra"]) - --AC_SUBST([AM_CPPFLAGS], [$ENABLE_WARNINGS]) -+_CXXFLAGS=$ENABLE_WARNINGS -+ -+#AC_SUBST([AM_CPPFLAGS], [$AM_CPPFLAGS] [$ENABLE_WARNINGS]) - - # --enable-target-programming / --disable-target-programming - AC_ARG_ENABLE( -@@ -183,13 +185,15 @@ - [--enable-target-programming], - [Enable programming (downloading) the target from ELF file]), - [case "${enableval}" in -- yes) ENABLE_TARGET_PROGRAMMING="-DENABLE_TARGET_PROGRAMMING=1" ;; -- no) ENABLE_TARGET_PROGRAMMING="-DENABLE_TARGET_PROGRAMMING=0" ;; -+ yes) ENABLE_TARGET_PROGRAMMING=" -DENABLE_TARGET_PROGRAMMING=1" ;; -+ no) ENABLE_TARGET_PROGRAMMING=" -DENABLE_TARGET_PROGRAMMING=0" ;; - *) AC_MSG_ERROR(bad value ${enableval} for ensable-target-programming option) ;; - esac], -- [ENABLE_TARGET_PROGRAMMING="-DENABLE_TARGET_PROGRAMMING=0"]) -+ [ENABLE_TARGET_PROGRAMMING=" -DENABLE_TARGET_PROGRAMMING=0"]) -+ -+_CXXFLAGS+=$ENABLE_TARGET_PROGRAMMING - --AC_SUBST([AM_CPPFLAGS], [$ENABLE_TARGET_PROGRAMMING]) -+AC_SUBST([AM_CPPFLAGS], [$_CXXFLAGS]) - - if test "x$enable_target_programming" = "xyes"; then - if test "x$ac_found_bfd" = "xno"; then diff -Nru avarice-2.13+svn375/debian/patches/ftbfs-__unused.patch avarice-2.14/debian/patches/ftbfs-__unused.patch --- avarice-2.13+svn375/debian/patches/ftbfs-__unused.patch 1970-01-01 00:00:00.000000000 +0000 +++ avarice-2.14/debian/patches/ftbfs-__unused.patch 2020-09-17 16:02:13.000000000 +0000 @@ -0,0 +1,21 @@ +Description: Fix FTBFS for "__unused" not understood by gcc. + This patch adds a autoconf test whether __attribute__(unused) is understood by the + compiler and if so defines __unsed to that string. +Author: Tobias Frost +--- +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ +--- a/configure.ac ++++ b/configure.ac +@@ -94,6 +94,10 @@ + fi + AC_SUBST(LIBHIDAPI, $LIBHIDAPI) + ++AX_GCC_VAR_ATTRIBUTE([unused]) ++if test x$ax_cv_have_var_attribute_unused = xyes; then ++ AC_DEFINE([__unused], [__attribute__((unused))], [Define __unused for GCC/clang.]) ++fi + + # Checks for header files. + AC_HEADER_STDC diff -Nru avarice-2.13+svn375/debian/patches/Man-page-fixes.patch avarice-2.14/debian/patches/Man-page-fixes.patch --- avarice-2.13+svn375/debian/patches/Man-page-fixes.patch 2018-10-21 07:19:05.000000000 +0000 +++ avarice-2.14/debian/patches/Man-page-fixes.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,93 +0,0 @@ -Description: Man page fixes -Author: Shaun Jackman -Author: Tobias Frost -Bug: https://sourceforge.net/p/avarice/patches/30/ -Last-Update: 2018-21-10 ---- -This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ ---- a/doc/avarice.1 -+++ b/doc/avarice.1 -@@ -23,7 +23,6 @@ - - .. - .TH avarice 1 "October 15, 2018" --.LO 1 - .SH NAME - avarice \- Provides an interface from avr-gdb to Atmel's AVR in-circuit debugging tools - .SH SYNOPSIS -@@ -300,11 +299,11 @@ - Default is "none,run,target_power_on,target_sleep,target_wakeup" - .TP - .BR \-f ,\ \-\-file \ --Specify a file for use with the --program and --verify options. If --file is --passed and neither --program or --verify are given then --program is implied. -+Specify a file for use with the \-\-program and \-\-verify options. If \-\-file is -+passed and neither \-\-program or \-\-verify are given then \-\-program is implied. - .BR - .B NOTE: --deprecated feature, must be enabled using the --enable-target-programming -+deprecated feature, must be enabled using the \-\-enable-target-programming - configuration option. - .TP - .BR \-g ,\ \-\-dragon -@@ -346,10 +345,10 @@ - autodetection. - .TP - .BR \-p ,\ \-\-program --Program the target. Binary filename must be specified with --file option. -+Program the target. Binary filename must be specified with \-\-file option. - .BR - .B NOTE: --deprecated feature, must be enabled using the --enable-target-programming -+deprecated feature, must be enabled using the \-\-enable-target-programming - configuration option. - .TP - .BR \-R ,\ \-\-reset-srst -@@ -363,10 +362,10 @@ - Print version information. - .TP - .BR \-v ,\ \-\-verify --Verify program in device against file specified with --file option. -+Verify program in device against file specified with \-\-file option. - .BR - .B NOTE: --deprecated feature, must be enabled using the --enable-target-programming -+deprecated feature, must be enabled using the \-\-enable-target-programming - configuration option. - .TP - .BR \-w ,\ \-\-debugwire -@@ -398,7 +397,7 @@ - .PP - :\fIPORT\fR is required to put avarice into gdb server mode. - .SH EXAMPLE USAGE --avarice --erase --program --file test.bin --jtag /dev/ttyS0 :4242 -+avarice \-\-erase \-\-program \-\-file test.bin \-\-jtag /dev/ttyS0 :4242 - .PP - Program the file \fItest.bin\fR into the JTAG ICE (mkI) connected to - /dev/ttyS0 after erasing the device, then listen in GDB mode on the -@@ -406,7 +405,7 @@ - This functionality is deprecated, and no longer configured by default. - Use GDB's "load" command instead. - .PP --avarice --jtag usb:1234 --mkII :4242 -+avarice \-\-jtag usb:1234 \-\-mkII :4242 - .PP - Connect to the JTAG ICE mkII attached to USB which serial number ends - in \fI1234\fR, and listen in GDB mode on local port 4242. ---- a/doc/ice-gdb.1 -+++ b/doc/ice-gdb.1 -@@ -1,5 +1,4 @@ - .TH ice-gdb 1 "August 22, 2003" --.LO 1 - .SH NAME - ice-gdb \- JTAG ICE frontend for avr-gdb - .br -@@ -40,7 +39,7 @@ - environment variable. This is typically used to specify the serial port to - which the JTAG ICE pod is connected by setting - .B AVARICE_ARGS --to "-j ". -+to "\-j ". - .SH OPTIONS - .TP - .B --debugger debugger_command diff -Nru avarice-2.13+svn375/debian/patches/series avarice-2.14/debian/patches/series --- avarice-2.13+svn375/debian/patches/series 2018-10-21 07:15:43.000000000 +0000 +++ avarice-2.14/debian/patches/series 2020-09-17 16:14:51.000000000 +0000 @@ -1,4 +1,2 @@ dont-link-with-shared-version-of-libbfd.patch -Man-page-fixes.patch -Spelling-fixes.patch -do-not-overwrite-vars.patch +ftbfs-__unused.patch diff -Nru avarice-2.13+svn375/debian/patches/Spelling-fixes.patch avarice-2.14/debian/patches/Spelling-fixes.patch --- avarice-2.13+svn375/debian/patches/Spelling-fixes.patch 2018-10-21 07:20:05.000000000 +0000 +++ avarice-2.14/debian/patches/Spelling-fixes.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,124 +0,0 @@ -Description: Spelling fixes -Author: Christian Kastner -Author: Tobias Frost -Bug: https://sourceforge.net/p/avarice/patches/31/ -Last-Update: 2018-10-21 ---- -This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ ---- a/src/jtag2misc.cc -+++ b/src/jtag2misc.cc -@@ -56,7 +56,7 @@ - } - catch (jtag_exception& e) - { -- fprintf(stderr, "set paramater command failed: %s\n", -+ fprintf(stderr, "set parameter command failed: %s\n", - e.what()); - throw; - } -@@ -86,12 +86,12 @@ - } - catch (jtag_exception& e) - { -- fprintf(stderr, "get paramater command failed: %s\n", -+ fprintf(stderr, "get parameter command failed: %s\n", - e.what()); - throw; - } - if (resp[0] != RSP_PARAMETER || respSize <= 1) -- throw jtag_exception("unexpected response to get paramater command"); -+ throw jtag_exception("unexpected response to get paremater command"); - } - - ---- a/src/jtag3misc.cc -+++ b/src/jtag3misc.cc -@@ -55,7 +55,7 @@ - } - catch (jtag_exception& e) - { -- fprintf(stderr, "set paramater command failed: %s\n", -+ fprintf(stderr, "set parameter command failed: %s\n", - e.what()); - throw; - } -@@ -86,16 +86,16 @@ - } - catch (jtag_exception& e) - { -- fprintf(stderr, "get paramater command failed: %s\n", -+ fprintf(stderr, "get parameter command failed: %s\n", - e.what()); - throw; - } - if (resp[1] != RSP3_DATA || respsize < 3 + length) - { -- debugOut("unexpected response to get paramater command: 0x%02x\n", -+ debugOut("unexpected response to get parameter command: 0x%02x\n", - resp[1]); - delete [] resp; -- throw jtag_exception("unexpected response to get paramater command"); -+ throw jtag_exception("unexpected response to get parameter command"); - } - } - ---- a/doc/avarice.1 -+++ b/doc/avarice.1 -@@ -331,7 +331,7 @@ - Print a list of known devices. - .TP - .BR \-L ,\ \-\-write-lockbits \ --Write lock bits. The lock byte data must be given in two digit hexidecimal -+Write lock bits. The lock byte data must be given in two digit hexadecimal - format with zero padding if needed. - .TP - .BR \-l ,\ \-\-read-lockbits -@@ -376,7 +376,7 @@ - .BR \-W ,\ \-\-write-fuses \ - Write fuses bytes. \fBee\fR is the extended fuse byte, \fBhh\fR is the high - fuse byte and \fBll\fR is the low fuse byte. The fuse byte data must be given --in two digit hexidecimal format with zero padding if needed. All three bytes -+in two digit hexadecimal format with zero padding if needed. All three bytes - must currently be given. - .br - .B NOTE: ---- a/src/jtaggeneric.cc -+++ b/src/jtaggeneric.cc -@@ -432,7 +432,7 @@ - c = sscanf(fuses, "%02x%02x%02x", temp+2, temp+1, temp ); - if (c != 3) - { -- fprintf(stderr, "Error: Fuses specified are not in hexidecimal"); -+ fprintf(stderr, "Error: Fuses specified are not in hexadecimal"); - return; - } - -@@ -596,7 +596,7 @@ - c = sscanf(lock, "%02x", temp); - if (c != 1) - { -- fprintf(stderr, "Error: Fuses specified are not in hexidecimal"); -+ fprintf(stderr, "Error: Fuses specified are not in hexadecimal"); - return; - } - ---- a/src/jtagio.cc -+++ b/src/jtagio.cc -@@ -110,7 +110,7 @@ - return (SendResult)(mcu_data + infobuf[0]); - break; - default: -- debugOut("Out of sync, reponse was `%02x'\n", ok); -+ debugOut("Out of sync, response was `%02x'\n", ok); - return send_failed; - } - } -@@ -119,7 +119,7 @@ - /** Get a 'responseSize' byte response from the JTAG ICE - - Returns NULL if no bytes received for JTAG_COMM_TIMEOUT microseconds -- Returns a dynamically allocated buffer containing the reponse (caller -+ Returns a dynamically allocated buffer containing the response (caller - must free) otherwise - **/ - uchar *jtag1::getJtagResponse(int responseSize) diff -Nru avarice-2.13+svn375/debian/rules avarice-2.14/debian/rules --- avarice-2.13+svn375/debian/rules 2018-10-21 07:15:43.000000000 +0000 +++ avarice-2.14/debian/rules 2020-09-17 14:27:34.000000000 +0000 @@ -3,9 +3,7 @@ include /usr/share/dpkg/pkg-info.mk #export DH_VERBOSE=1 - export DEB_BUILD_MAINT_OPTIONS = hardening=+all -export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed %: dh $@ @@ -18,6 +16,8 @@ UURL = svn://svn.code.sf.net/p/avarice/code/trunk UPVER = $(shell echo $(VER) | sed 's/+.*$$//' ) +# get-orig-source is kept because upstream only makes releases rarely. +# The usual source of the orig.tar is the upstream SVN. .PHONY: get-orig-source get-orig-source: $(PKG)_$(VER)$(DTYPE).orig.tar.xz echo $(info I: $(PKG)_$(VER)) diff -Nru avarice-2.13+svn375/debian/watch avarice-2.14/debian/watch --- avarice-2.13+svn375/debian/watch 2018-10-21 07:15:43.000000000 +0000 +++ avarice-2.14/debian/watch 2020-09-15 18:31:29.000000000 +0000 @@ -1,4 +1,4 @@ -version=3 +version=4 opts=dversionmangle=s/\+svn.*\d*$// \ https://sf.net/avarice/avarice-(\d[\d.]*)\.(?:zip|tgz|tbz2|txz|tar\.(?:gz|bz2|xz)) diff -Nru avarice-2.13+svn375/doc/avarice.1 avarice-2.14/doc/avarice.1 --- avarice-2.13+svn375/doc/avarice.1 2018-10-15 21:11:53.000000000 +0000 +++ avarice-2.14/doc/avarice.1 2020-09-05 20:47:46.000000000 +0000 @@ -19,11 +19,10 @@ translations approved by the Free Software Foundation instead of in the original English. -$Id: avarice.1 374 2018-10-15 21:11:53Z joerg_wunsch $ +$Id: avarice.1 388 2020-09-05 20:46:04Z joerg_wunsch $ .. .TH avarice 1 "October 15, 2018" -.LO 1 .SH NAME avarice \- Provides an interface from avr-gdb to Atmel's AVR in-circuit debugging tools .SH SYNOPSIS @@ -300,11 +299,11 @@ Default is "none,run,target_power_on,target_sleep,target_wakeup" .TP .BR \-f ,\ \-\-file \ -Specify a file for use with the --program and --verify options. If --file is -passed and neither --program or --verify are given then --program is implied. +Specify a file for use with the \-\-program and \-\-verify options. If \-\-file is +passed and neither \-\-program or \-\-verify are given then \-\-program is implied. .BR .B NOTE: -deprecated feature, must be enabled using the --enable-target-programming +deprecated feature, must be enabled using the \-\-enable-target-programming configuration option. .TP .BR \-g ,\ \-\-dragon @@ -346,10 +345,10 @@ autodetection. .TP .BR \-p ,\ \-\-program -Program the target. Binary filename must be specified with --file option. +Program the target. Binary filename must be specified with \-\-file option. .BR .B NOTE: -deprecated feature, must be enabled using the --enable-target-programming +deprecated feature, must be enabled using the \-\-enable-target-programming configuration option. .TP .BR \-R ,\ \-\-reset-srst @@ -363,10 +362,10 @@ Print version information. .TP .BR \-v ,\ \-\-verify -Verify program in device against file specified with --file option. +Verify program in device against file specified with \-\-file option. .BR .B NOTE: -deprecated feature, must be enabled using the --enable-target-programming +deprecated feature, must be enabled using the \-\-enable-target-programming configuration option. .TP .BR \-w ,\ \-\-debugwire @@ -398,7 +397,7 @@ .PP :\fIPORT\fR is required to put avarice into gdb server mode. .SH EXAMPLE USAGE -avarice --erase --program --file test.bin --jtag /dev/ttyS0 :4242 +avarice \-\-erase \-\-program \-\-file test.bin \-\-jtag /dev/ttyS0 :4242 .PP Program the file \fItest.bin\fR into the JTAG ICE (mkI) connected to /dev/ttyS0 after erasing the device, then listen in GDB mode on the @@ -406,7 +405,7 @@ This functionality is deprecated, and no longer configured by default. Use GDB's "load" command instead. .PP -avarice --jtag usb:1234 --mkII :4242 +avarice \-\-jtag usb:1234 \-\-mkII :4242 .PP Connect to the JTAG ICE mkII attached to USB which serial number ends in \fI1234\fR, and listen in GDB mode on local port 4242. diff -Nru avarice-2.13+svn375/doc/ice-gdb.1 avarice-2.14/doc/ice-gdb.1 --- avarice-2.13+svn375/doc/ice-gdb.1 2003-08-21 22:34:59.000000000 +0000 +++ avarice-2.14/doc/ice-gdb.1 2020-09-05 20:47:46.000000000 +0000 @@ -1,5 +1,4 @@ .TH ice-gdb 1 "August 22, 2003" -.LO 1 .SH NAME ice-gdb \- JTAG ICE frontend for avr-gdb .br @@ -40,7 +39,7 @@ environment variable. This is typically used to specify the serial port to which the JTAG ICE pod is connected by setting .B AVARICE_ARGS -to "-j ". +to "\-j ". .SH OPTIONS .TP .B --debugger debugger_command diff -Nru avarice-2.13+svn375/doc/kill-avarice.1 avarice-2.14/doc/kill-avarice.1 --- avarice-2.13+svn375/doc/kill-avarice.1 1970-01-01 00:00:00.000000000 +0000 +++ avarice-2.14/doc/kill-avarice.1 2020-09-05 20:47:46.000000000 +0000 @@ -0,0 +1,10 @@ +.TH KILL-AVARICE 1 "2015-04-10" +.SH NAME +kill-avarice \- terminate all running instances of avarice +.SH SYNOPSIS +.B kill-avarice +.SH DESCRIPTION +Terminates all running instances of \fBavarice\fP by sending them SIGKILL. +.SH SEE ALSO +.BR avarice (1), +.BR start-avarice (1). diff -Nru avarice-2.13+svn375/doc/Makefile.am avarice-2.14/doc/Makefile.am --- avarice-2.13+svn375/doc/Makefile.am 2003-12-07 06:04:58.000000000 +0000 +++ avarice-2.14/doc/Makefile.am 2020-09-05 20:47:46.000000000 +0000 @@ -21,7 +21,9 @@ man_MANS = ice-gdb.1 \ ice-insight.1 \ - avarice.1 + avarice.1 \ + start-avarice.1 \ + kill-avarice.1 EXTRA_DIST = $(man_MANS) \ README.cygwin \ diff -Nru avarice-2.13+svn375/doc/Makefile.in avarice-2.14/doc/Makefile.in --- avarice-2.13+svn375/doc/Makefile.in 2018-10-21 07:10:29.000000000 +0000 +++ avarice-2.14/doc/Makefile.in 2020-09-05 20:48:10.000000000 +0000 @@ -249,7 +249,6 @@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -281,7 +280,9 @@ AUTOMAKE_OPTIONS = foreign man_MANS = ice-gdb.1 \ ice-insight.1 \ - avarice.1 + avarice.1 \ + start-avarice.1 \ + kill-avarice.1 EXTRA_DIST = $(man_MANS) \ README.cygwin \ diff -Nru avarice-2.13+svn375/doc/start-avarice.1 avarice-2.14/doc/start-avarice.1 --- avarice-2.13+svn375/doc/start-avarice.1 1970-01-01 00:00:00.000000000 +0000 +++ avarice-2.14/doc/start-avarice.1 2020-09-05 20:47:46.000000000 +0000 @@ -0,0 +1,25 @@ +.TH START-AVARICE 1 "2015-04-10" +.SH NAME +start-avarice \- launch avarice in detached mode +.SH SYNOPSIS +.B start-avarice +.RI [ file ] +.SH DESCRIPTION +\fBstart-avarice\fR is a helper to launch \fBavarice\fR in detached mode. +\fBavarice\fR will be listening in GDB mode on local port \fB6423\fR. You can +then connect from \fBavr-gdb\fR like so: +.IP +(gdb) target remote localhost:6423 +.PP +Other running instances of \fBavarice\fP are killed first. + +If the optional argument \fIfile\fR is specified, the target is first +erased, and then programmed with this file. Note that this feature has +been deprecated though, and may disappear anytime in the future. +.SH ENVIRONMENT +.IP AVARICE_ARGS +Additional arguments to pass on to \fBavarice\fR. +.SH SEE ALSO +.BR avarice (1), +.BR gdb (1), +.BR kill-avarice (1). diff -Nru avarice-2.13+svn375/Makefile.in avarice-2.14/Makefile.in --- avarice-2.13+svn375/Makefile.in 2018-10-21 07:10:29.000000000 +0000 +++ avarice-2.14/Makefile.in 2020-09-05 20:48:10.000000000 +0000 @@ -305,7 +305,6 @@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff -Nru avarice-2.13+svn375/NEWS avarice-2.14/NEWS --- avarice-2.13+svn375/NEWS 2018-10-15 21:47:01.000000000 +0000 +++ avarice-2.14/NEWS 2020-09-05 20:47:46.000000000 +0000 @@ -1,6 +1,6 @@ -# $Id: NEWS 375 2018-10-15 21:47:01Z joerg_wunsch $ +# $Id: NEWS 388 2020-09-05 20:46:04Z joerg_wunsch $ -Summary of changes since AVaRICE 2.13 +Summary of changes in AVaRICE 2.14 ================================== . Replace the USB daemon by Posix threads (bug #15). @@ -17,7 +17,7 @@ version" are already around. . New devices: ATmega256RFR2, ATmega2564RFR2, ATmega128RFR2, - ATmega1284RFR2, ATmega64RFR2, ATmega644RFR2 + ATmega1284RFR2, ATmega64RFR2, ATmega644RFR2, ATxmega64A3 . Bugfix: support software breakpoints on ATmega48P, ATmega88P, ATmega168P, ATmega328P, ATtiny24, ATtiny44, ATtiny84 diff -Nru avarice-2.13+svn375/scripts/Makefile.in avarice-2.14/scripts/Makefile.in --- avarice-2.13+svn375/scripts/Makefile.in 2018-10-21 07:10:29.000000000 +0000 +++ avarice-2.14/scripts/Makefile.in 2020-09-05 20:48:10.000000000 +0000 @@ -250,7 +250,6 @@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff -Nru avarice-2.13+svn375/src/avarice.h avarice-2.14/src/avarice.h --- avarice-2.13+svn375/src/avarice.h 2011-12-12 13:24:07.000000000 +0000 +++ avarice-2.14/src/avarice.h 2020-09-05 20:47:46.000000000 +0000 @@ -41,5 +41,6 @@ void vstatusOut(const char *fmt, va_list args); void statusOut(const char *fmt, ...); void statusFlush(); +void unknownDevice(unsigned int devid, bool generic = true); #endif // INCLUDE_AVARICE_H diff -Nru avarice-2.13+svn375/src/devdescr.cc avarice-2.14/src/devdescr.cc --- avarice-2.13+svn375/src/devdescr.cc 2018-10-15 21:47:01.000000000 +0000 +++ avarice-2.14/src/devdescr.cc 2020-09-05 20:47:46.000000000 +0000 @@ -20,7 +20,7 @@ * This file contains the JTAG ICE device descriptors of all supported * MCU types for both, the mkI and mkII protocol. * - * $Id: devdescr.cc 375 2018-10-15 21:47:01Z joerg_wunsch $ + * $Id: devdescr.cc 388 2020-09-05 20:46:04Z joerg_wunsch $ */ #include @@ -6308,6 +6308,255 @@ fill_b2(0x90), // IO space address of MCU control }, }, + // DEV_ATXMEGA64A3 + { + "atxmega64a3", + 0x9642, + 256, 272, // 69,632 bytes flash (page size. # pages) + 32, 64, // 2048 bytes EEPROM + 122 * 4, // 122 interrupt vectors + DEVFL_MKII_ONLY, + NULL, // registers not yet defined + true, + 0x37, 0x0000, // fuses + 0, // osccal + 0, // OCD revision + { + 0 // no mkI support + }, + { + CMND_SET_DEVICE_DESCRIPTOR, + { 0xFF,0xFF,0xFF,0xF9,0xFF,0x3D,0xB9,0xF8 }, // ucReadIO + { 0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00 }, // ucReadIOShadow + { 0xFF,0xFF,0x1F,0xE0,0xFF,0x1D,0xA9,0xF8 }, // ucWriteIO + { 0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00 }, // ucWriteIOShadow + { 0x73,0xFF,0x3F,0xFF,0xF7,0x3F,0xF7,0x3F, + 0xF7,0x3F,0x5F,0x3F,0x37,0x37,0x36,0x00, + 0x00,0x00,0x00,0x00,0xFF,0x0F,0x00,0x00, + 0xF7,0x3F,0x36,0x00 }, // ucReadExtIO + { 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00 }, // ucReadIOExtShadow + { 0x73,0xFF,0x3F,0xF8,0xF7,0x3F,0xF7,0x3F, + 0xF7,0x3F,0x5F,0x2F,0x36,0x36,0x36,0x00, + 0x00,0x00,0x00,0x00,0xFF,0x0F,0x00,0x00, + 0xF7,0x3F,0x36,0x00 }, // ucWriteExtIO + { 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00 }, // ucWriteIOExtShadow + 0x31, // ucIDRAddress + 0x57, // ucSPMCRAddress + 0, // ucRAMPZAddress + fill_b2(256), // uiFlashPageSize + 32, // ucEepromPageSize + fill_b4(0x20000), // ulBootAddress + fill_b2(0x136), // uiUpperExtIOLoc + fill_b4(69632), // ulFlashSize + { 0x00 }, // ucEepromInst + { 0x00 }, // ucFlashInst + 0x3E, // ucSPHaddr + 0x3D, // ucSPLaddr + fill_b2(69632 / 256), // uiFlashpages + 0x00, // ucDWDRAddress + 0x00, // ucDWBasePC + 0x00, // ucAllowFullPageBitstream + fill_b2(0x00), // uiStartSmallestBootLoaderSection + 1, // EnablePageProgramming + 0x02, // ucCacheType + fill_b2(8192), // uiSramStartAddr + 0, // ucResetType + 0, // ucPCMaskExtended + 0, // ucPCMaskHigh + 0, // ucEindAddress + fill_b2(0), // EECRAddress + }, + { + CMND_SET_XMEGA_PARAMS, // cmd + fill_b2(2), // whatever + 47, // length of following data + fill_b4(0x800000), // NVM offset for application flash + fill_b4(0x840000), // NVM offset for boot flash + fill_b4(0x8c0000), // NVM offset for EEPROM + fill_b4(0x8f0020), // NVM offset for fuses + fill_b4(0x8f0027), // NVM offset for lock bits + fill_b4(0x8e0400), // NVM offset for user signature row + fill_b4(0x8e0200), // NVM offset for production sig. row + fill_b4(0x1000000), // NVM offset for data memory + fill_b4(69632), // size of application flash + fill_b2(4096), // size of boot flash + fill_b2(256), // flash page size + fill_b2(2048), // size of EEPROM + 32, // EEPROM page size + fill_b2(0x1c0), // IO space base address of NVM controller + fill_b2(0x90), // IO space address of MCU control + }, + }, + // DEV_ATXMEGA32E5 + { + "atxmega32e5", + 0x954c, + 128, 288, // 36864 bytes flash + 32, 32, // 1024 bytes EEPROM + 40 * 4, // 40 interrupt vectors + DEVFL_MKII_ONLY, + NULL, // registers not yet defined + true, + 0x37, 0x0000, // fuses + 0, // osccal + 0, // OCD revision + { + 0 // no mkI support + }, + { + CMND_SET_DEVICE_DESCRIPTOR, + { 0xFF,0xFF,0xFF,0xF9,0xFF,0x3D,0xB9,0xF8 }, // ucReadIO + { 0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00 }, // ucReadIOShadow + { 0xFF,0xFF,0x1F,0xE0,0xFF,0x1D,0xA9,0xF8 }, // ucWriteIO + { 0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00 }, // ucWriteIOShadow + { 0x73,0xFF,0x3F,0xFF,0xF7,0x3F,0xF7,0x3F, + 0xF7,0x3F,0x5F,0x3F,0x37,0x37,0x36,0x00, + 0x00,0x00,0x00,0x00,0xFF,0x0F,0x00,0x00, + 0xF7,0x3F,0x36,0x00 }, // ucReadExtIO + { 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00 }, // ucReadIOExtShadow + { 0x73,0xFF,0x3F,0xF8,0xF7,0x3F,0xF7,0x3F, + 0xF7,0x3F,0x5F,0x2F,0x36,0x36,0x36,0x00, + 0x00,0x00,0x00,0x00,0xFF,0x0F,0x00,0x00, + 0xF7,0x3F,0x36,0x00 }, // ucWriteExtIO + { 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00 }, // ucWriteIOExtShadow + 0x31, // ucIDRAddress + 0x57, // ucSPMCRAddress + 0, // ucRAMPZAddress + fill_b2(128), // uiFlashPageSize + 32, // ucEepromPageSize + fill_b4(0x8000), // ulBootAddress + fill_b2(0x136), // uiUpperExtIOLoc + fill_b4(128 * 288), // ulFlashSize + { 0x00 }, // ucEepromInst + { 0x00 }, // ucFlashInst + 0x3E, // ucSPHaddr + 0x3D, // ucSPLaddr + fill_b2(288), // uiFlashpages + 0x00, // ucDWDRAddress + 0x00, // ucDWBasePC + 0x00, // ucAllowFullPageBitstream + fill_b2(0x00), // uiStartSmallestBootLoaderSection + 1, // EnablePageProgramming + 0x02, // ucCacheType + fill_b2(8192), // uiSramStartAddr + 0, // ucResetType + 0, // ucPCMaskExtended + 0, // ucPCMaskHigh + 0, // ucEindAddress + fill_b2(0), // EECRAddress + }, + { + CMND_SET_XMEGA_PARAMS, // cmd + fill_b2(2), // whatever + 47, // length of following data + fill_b4(0x800000), // NVM offset for application flash + fill_b4(0x808000), // NVM offset for boot flash + fill_b4(0x8c0000), // NVM offset for EEPROM + fill_b4(0x8f0020), // NVM offset for fuses + fill_b4(0x8f0027), // NVM offset for lock bits + fill_b4(0x8e0400), // NVM offset for user signature row + fill_b4(0x8e0200), // NVM offset for production sig. row + fill_b4(0x1000000), // NVM offset for data memory + fill_b4(32768), // size of application flash + fill_b2(4096), // size of boot flash + fill_b2(128), // flash page size + fill_b2(1024), // size of EEPROM + 32, // EEPROM page size + fill_b2(0x1c0), // IO space base address of NVM controller + fill_b2(0x90), // IO space address of MCU control + }, + }, + // DEV_ATXMEGA8E5 + { + "atxmega8e5", + 0x9341, + 128, 80, // 10240 bytes flash + 32, 16, // ? bytes EEPROM + 40 * 4, // 40 interrupt vectors + DEVFL_MKII_ONLY, + NULL, // registers not yet defined + true, + 0x37, 0x0000, // fuses + 0, // osccal + 0, // OCD revision + { + 0 // no mkI support + }, + { + CMND_SET_DEVICE_DESCRIPTOR, + { 0xFF,0xFF,0xFF,0xF9,0xFF,0x3D,0xB9,0xF8 }, // ucReadIO + { 0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00 }, // ucReadIOShadow + { 0xFF,0xFF,0x1F,0xE0,0xFF,0x1D,0xA9,0xF8 }, // ucWriteIO + { 0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00 }, // ucWriteIOShadow + { 0x73,0xFF,0x3F,0xFF,0xF7,0x3F,0xF7,0x3F, + 0xF7,0x3F,0x5F,0x3F,0x37,0x37,0x36,0x00, + 0x00,0x00,0x00,0x00,0xFF,0x0F,0x00,0x00, + 0xF7,0x3F,0x36,0x00 }, // ucReadExtIO + { 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00 }, // ucReadIOExtShadow + { 0x73,0xFF,0x3F,0xF8,0xF7,0x3F,0xF7,0x3F, + 0xF7,0x3F,0x5F,0x2F,0x36,0x36,0x36,0x00, + 0x00,0x00,0x00,0x00,0xFF,0x0F,0x00,0x00, + 0xF7,0x3F,0x36,0x00 }, // ucWriteExtIO + { 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00 }, // ucWriteIOExtShadow + 0x31, // ucIDRAddress + 0x57, // ucSPMCRAddress + 0, // ucRAMPZAddress + fill_b2(128), // uiFlashPageSize + 32, // ucEepromPageSize + fill_b4(0x2000), // ulBootAddress + fill_b2(0x136), // uiUpperExtIOLoc + fill_b4(128 * 80), // ulFlashSize + { 0x00 }, // ucEepromInst + { 0x00 }, // ucFlashInst + 0x3E, // ucSPHaddr + 0x3D, // ucSPLaddr + fill_b2(80), // uiFlashpages + 0x00, // ucDWDRAddress + 0x00, // ucDWBasePC + 0x00, // ucAllowFullPageBitstream + fill_b2(0x00), // uiStartSmallestBootLoaderSection + 1, // EnablePageProgramming + 0x02, // ucCacheType + fill_b2(8192), // uiSramStartAddr + 0, // ucResetType + 0, // ucPCMaskExtended + 0, // ucPCMaskHigh + 0, // ucEindAddress + fill_b2(0), // EECRAddress + }, + { + CMND_SET_XMEGA_PARAMS, // cmd + fill_b2(2), // whatever + 47, // length of following data + fill_b4(0x800000), // NVM offset for application flash + fill_b4(0x808000), // NVM offset for boot flash + fill_b4(0x8c0000), // NVM offset for EEPROM + fill_b4(0x8f0020), // NVM offset for fuses + fill_b4(0x8f0027), // NVM offset for lock bits + fill_b4(0x8e0400), // NVM offset for user signature row + fill_b4(0x8e0200), // NVM offset for production sig. row + fill_b4(0x1000000), // NVM offset for data memory + fill_b4(8192), // size of application flash + fill_b2(2048), // size of boot flash + fill_b2(128), // flash page size + fill_b2(512), // size of EEPROM + 32, // EEPROM page size + fill_b2(0x1c0), // IO space base address of NVM controller + fill_b2(0x90), // IO space address of MCU control + }, + }, // Termination record. { NULL, // name diff -Nru avarice-2.13+svn375/src/jtag2io.cc avarice-2.14/src/jtag2io.cc --- avarice-2.13+svn375/src/jtag2io.cc 2013-01-07 13:26:06.000000000 +0000 +++ avarice-2.14/src/jtag2io.cc 2020-09-05 20:47:46.000000000 +0000 @@ -19,7 +19,7 @@ * * This file implements the basic IO handling for the mkII protocol. * - * $Id: jtag2io.cc 323 2013-01-07 13:26:06Z joerg_wunsch $ + * $Id: jtag2io.cc 388 2020-09-05 20:46:04Z joerg_wunsch $ */ @@ -694,8 +694,7 @@ } if (pDevice->name == 0) { - fprintf(stderr, "No configuration available for device ID: %0x\n", - device_id); + unknownDevice(device_id); throw jtag_exception(); } } @@ -712,8 +711,7 @@ } if (pDevice->name == 0) { - fprintf(stderr, "No configuration available for device ID: %0x\n", - device_id); + unknownDevice(device_id, false); throw jtag_exception(); } } diff -Nru avarice-2.13+svn375/src/jtag2misc.cc avarice-2.14/src/jtag2misc.cc --- avarice-2.13+svn375/src/jtag2misc.cc 2011-12-12 13:24:07.000000000 +0000 +++ avarice-2.14/src/jtag2misc.cc 2020-09-05 20:47:46.000000000 +0000 @@ -17,7 +17,7 @@ * * This file contains miscellaneous routines for the mkII protocol. * - * $Id: jtag2misc.cc 290 2011-12-12 13:24:07Z joerg_wunsch $ + * $Id: jtag2misc.cc 388 2020-09-05 20:46:04Z joerg_wunsch $ */ @@ -56,7 +56,7 @@ } catch (jtag_exception& e) { - fprintf(stderr, "set paramater command failed: %s\n", + fprintf(stderr, "set parameter command failed: %s\n", e.what()); throw; } @@ -86,12 +86,12 @@ } catch (jtag_exception& e) { - fprintf(stderr, "get paramater command failed: %s\n", + fprintf(stderr, "get parameter command failed: %s\n", e.what()); throw; } if (resp[0] != RSP_PARAMETER || respSize <= 1) - throw jtag_exception("unexpected response to get paramater command"); + throw jtag_exception("unexpected response to get paremater command"); } diff -Nru avarice-2.13+svn375/src/jtag2prog.cc avarice-2.14/src/jtag2prog.cc --- avarice-2.13+svn375/src/jtag2prog.cc 2016-03-03 22:01:42.000000000 +0000 +++ avarice-2.14/src/jtag2prog.cc 2020-09-05 20:47:46.000000000 +0000 @@ -23,7 +23,7 @@ * This file implements the target memory programming interface for * the mkII protocol. * - * $Id: jtag2prog.cc 365 2016-03-03 22:01:42Z joerg_wunsch $ + * $Id: jtag2prog.cc 388 2020-09-05 20:46:04Z joerg_wunsch $ */ @@ -38,6 +38,7 @@ #include #if ENABLE_TARGET_PROGRAMMING +# include "autoconf.h" # include #endif @@ -47,8 +48,11 @@ #if ENABLE_TARGET_PROGRAMMING // The API changed for this in bfd.h. This is a work around. +#ifndef bfd_get_section_name +# define bfd_get_section_name(bfd, ptr) bfd_section_name(ptr) +#endif #ifndef bfd_get_section_size -# define bfd_get_section_size bfd_get_section_size_before_reloc +# define bfd_get_section_size bfd_section_size #endif static void initImage(BFDimage *image) @@ -384,6 +388,9 @@ statusOut("\nDownload complete.\n"); #else // !ENABLE_TARGET_PROGRAMMING + (void)filename; + (void)program; + (void)verify; statusOut("\nDownload not done.\n"); throw jtag_exception("AVaRICE was not configured for target programming"); #endif // ENABLE_TARGET_PROGRAMMING diff -Nru avarice-2.13+svn375/src/jtag2usb.cc avarice-2.14/src/jtag2usb.cc --- avarice-2.13+svn375/src/jtag2usb.cc 2018-09-20 12:05:40.000000000 +0000 +++ avarice-2.14/src/jtag2usb.cc 2020-09-05 20:47:46.000000000 +0000 @@ -18,7 +18,7 @@ * This file implements the libusb-based USB connection to a JTAG ICE * mkII. It is also used by the JTAGICE3. * - * $Id: jtag2usb.cc 373 2018-09-20 12:05:40Z joerg_wunsch $ + * $Id: jtag2usb.cc 388 2020-09-05 20:46:04Z joerg_wunsch $ */ @@ -342,6 +342,7 @@ pdev = NULL; bool found = false; #ifdef HAVE_LIBUSB_2_0 + (void)usb_interface; while ((pdev = libusb20_be_device_foreach(be, pdev)) != NULL) { struct LIBUSB20_DEVICE_DESC_DECODED *ddp = @@ -487,7 +488,7 @@ return NULL; } uint32_t max_packet_l; - if ((max_packet_l = libusb20_tr_get_max_packet_length(xfr_out)) < max_xfer) + if ((max_packet_l = libusb20_tr_get_max_packet_length(xfr_out)) < (unsigned)max_xfer) { statusOut("downgrading max_xfer from %d to %d due to EP 0x%02x's wMaxPacketSize\n", max_xfer, max_packet_l, write_ep); @@ -499,7 +500,7 @@ usb20_cleanup(pdev); return NULL; } - if ((max_packet_l = libusb20_tr_get_max_packet_length(xfr_in)) < max_xfer) + if ((max_packet_l = libusb20_tr_get_max_packet_length(xfr_in)) < (unsigned)max_xfer) { statusOut("downgrading max_xfer from %d to %d due to EP 0x%02x's wMaxPacketSize\n", max_xfer, max_packet_l, read_ep); @@ -582,7 +583,6 @@ */ static hid_device *openhid(const char *jtagDeviceName, unsigned int &max_pkt_size) { - char string[256]; hid_device *pdev; char *devnamecopy, *serno, *cp2; size_t x; @@ -739,7 +739,7 @@ #ifdef HAVE_LIBUSB_2_0 /* USB thread */ -static void *usb_thread(void * data) +static void *usb_thread(void * data __unused) { struct pollfd fds[2]; @@ -883,7 +883,7 @@ * We do it synchronously right now. */ unsigned int pkt_len = result; - bool needmore = result == max_xfer; + bool needmore = result == (unsigned)max_xfer; /* OK, if there is more to read, do so. */ while (needmore) @@ -1322,7 +1322,7 @@ buf[3] = cursize >> 8; buf[4] = cursize; rv = hid_write(hdev, buf, hdata->max_pkt_size + 1); - if (rv != hdata->max_pkt_size + 1) + if ((unsigned)rv != hdata->max_pkt_size + 1) { debugOut("hid_write: short write, %u vs. %d\n", hdata->max_pkt_size + 1, rv); diff -Nru avarice-2.13+svn375/src/jtag3io.cc avarice-2.14/src/jtag3io.cc --- avarice-2.13+svn375/src/jtag3io.cc 2016-03-03 20:49:47.000000000 +0000 +++ avarice-2.14/src/jtag3io.cc 2020-09-05 20:47:46.000000000 +0000 @@ -17,7 +17,7 @@ * * This file implements the basic IO handling for the JTAGICE3 protocol. * - * $Id: jtag3io.cc 364 2016-03-03 20:49:47Z joerg_wunsch $ + * $Id: jtag3io.cc 388 2020-09-05 20:46:04Z joerg_wunsch $ */ @@ -308,9 +308,6 @@ uchar *&response, int &responseSize) throw (jtag_exception) { - int sizeseen = 0; - uchar code = 0; - if (sendJtagCommand(command, commandSize, name, response, responseSize)) return; @@ -353,12 +350,12 @@ throw jtag_exception("doSimpleJtagCommand(): too many failures"); } -void jtag3::changeBitRate(int newBitRate) +void jtag3::changeBitRate(int newBitRate __unused) { throw; } -bool jtag3::synchroniseAt(int bitrate) +bool jtag3::synchroniseAt(int bitrate __unused) { throw; } @@ -366,7 +363,6 @@ void jtag3::setDeviceDescriptor(jtag_device_def_type *dev) { uchar *param, paramsize; - int respSize; jtag3_device_desc_type d3; if (is_xmega) @@ -557,7 +553,6 @@ void jtag3::deviceAutoConfig(void) { uchar *resp; - int respsize; jtag_device_def_type *pDevice = deviceDefinitions; // Auto config @@ -581,7 +576,10 @@ * Hopefully, the values below will remain constant for all * Xmega devices ... */ - jtag_device_def_type desc = { "dummy", 0 }; + jtag_device_def_type desc{ "dummy", 0, + 0, 0, 0, 0, 0, DEVFL_NONE, + nullptr, true, 0, 0, 0, 0, + {}, {}, {} }; u32_to_b4(desc.dev_desc3.nvm_data_offset, 0x1000000); u16_to_b2(desc.dev_desc3.mcu_base_addr, 0x90); @@ -606,8 +604,7 @@ } if (pDevice->name == 0) { - fprintf(stderr, "No configuration available for device ID: %0x\n", - device_id); + unknownDevice(device_id); throw jtag_exception(); } } @@ -624,8 +621,7 @@ } if (pDevice->name == 0) { - fprintf(stderr, "No configuration available for device ID: %0x\n", - device_id); + unknownDevice(device_id, false); throw jtag_exception(); } } diff -Nru avarice-2.13+svn375/src/jtag3misc.cc avarice-2.14/src/jtag3misc.cc --- avarice-2.13+svn375/src/jtag3misc.cc 2013-01-04 20:41:04.000000000 +0000 +++ avarice-2.14/src/jtag3misc.cc 2020-09-05 20:47:46.000000000 +0000 @@ -17,7 +17,7 @@ * * This file contains miscellaneous routines for JTAGICE3 protocol. * - * $Id: jtag3misc.cc 320 2013-01-04 20:41:04Z joerg_wunsch $ + * $Id: jtag3misc.cc 388 2020-09-05 20:46:04Z joerg_wunsch $ */ @@ -55,7 +55,7 @@ } catch (jtag_exception& e) { - fprintf(stderr, "set paramater command failed: %s\n", + fprintf(stderr, "set parameter command failed: %s\n", e.what()); throw; } @@ -86,16 +86,16 @@ } catch (jtag_exception& e) { - fprintf(stderr, "get paramater command failed: %s\n", + fprintf(stderr, "get parameter command failed: %s\n", e.what()); throw; } if (resp[1] != RSP3_DATA || respsize < 3 + length) { - debugOut("unexpected response to get paramater command: 0x%02x\n", + debugOut("unexpected response to get parameter command: 0x%02x\n", resp[1]); delete [] resp; - throw jtag_exception("unexpected response to get paramater command"); + throw jtag_exception("unexpected response to get parameter command"); } } diff -Nru avarice-2.13+svn375/src/jtag3prog.cc avarice-2.14/src/jtag3prog.cc --- avarice-2.13+svn375/src/jtag3prog.cc 2016-03-03 22:01:42.000000000 +0000 +++ avarice-2.14/src/jtag3prog.cc 2020-09-05 20:47:46.000000000 +0000 @@ -18,7 +18,7 @@ * This file implements the target memory programming interface for * the JTAGICE3 protocol. * - * $Id: jtag3prog.cc 365 2016-03-03 22:01:42Z joerg_wunsch $ + * $Id: jtag3prog.cc 388 2020-09-05 20:46:04Z joerg_wunsch $ */ @@ -106,7 +106,7 @@ } -void jtag3::downloadToTarget(const char* filename, bool program, bool verify) +void jtag3::downloadToTarget(const char* filename __unused, bool program __unused, bool verify __unused) { statusOut("\nDownload not done.\n"); throw jtag_exception("Target programming not implemented for JTAGICE3"); diff -Nru avarice-2.13+svn375/src/jtag3run.cc avarice-2.14/src/jtag3run.cc --- avarice-2.13+svn375/src/jtag3run.cc 2013-01-11 16:53:17.000000000 +0000 +++ avarice-2.14/src/jtag3run.cc 2020-09-05 20:47:46.000000000 +0000 @@ -17,7 +17,7 @@ * * This file implements target execution handling for the JTAGICE3 protocol. * - * $Id: jtag3run.cc 338 2013-01-11 16:53:17Z joerg_wunsch $ + * $Id: jtag3run.cc 388 2020-09-05 20:46:04Z joerg_wunsch $ */ @@ -157,7 +157,7 @@ void jtag3::expectEvent(bool &breakpoint, bool &gdbInterrupt) { uchar *evtbuf; - int evtsize, i; + int evtsize; unsigned short seqno; if (cached_event != NULL) diff -Nru avarice-2.13+svn375/src/jtag.h avarice-2.14/src/jtag.h --- avarice-2.13+svn375/src/jtag.h 2016-02-29 22:21:58.000000000 +0000 +++ avarice-2.14/src/jtag.h 2020-09-05 20:47:46.000000000 +0000 @@ -19,7 +19,7 @@ * * This file contains functions for interfacing with the GDB remote protocol. * - * $Id: jtag.h 358 2016-02-29 22:21:58Z joerg_wunsch $ + * $Id: jtag.h 388 2020-09-05 20:46:04Z joerg_wunsch $ */ #ifndef JTAG_H @@ -1067,6 +1067,6 @@ }; -extern struct jtag *theJtagICE; +extern class jtag *theJtagICE; #endif diff -Nru avarice-2.13+svn375/src/jtagio.cc avarice-2.14/src/jtagio.cc --- avarice-2.13+svn375/src/jtagio.cc 2011-12-12 13:24:07.000000000 +0000 +++ avarice-2.14/src/jtagio.cc 2020-09-05 20:47:46.000000000 +0000 @@ -19,7 +19,7 @@ * * This file contains functions for interfacing with the JTAG box. * - * $Id: jtagio.cc 290 2011-12-12 13:24:07Z joerg_wunsch $ + * $Id: jtagio.cc 388 2020-09-05 20:46:04Z joerg_wunsch $ */ @@ -359,8 +359,7 @@ } if (pDevice->name == 0) { - fprintf(stderr, "No configuration available for device ID: %0x\n", - device_id); + unknownDevice(device_id); throw jtag_exception(); } } @@ -382,8 +381,7 @@ } if (pDevice->name == 0) { - fprintf(stderr, "No configuration available for Device: %s\n", - device_name); + unknownDevice(device_id, false); throw jtag_exception(); } } diff -Nru avarice-2.13+svn375/src/jtagprog.cc avarice-2.14/src/jtagprog.cc --- avarice-2.13+svn375/src/jtagprog.cc 2012-11-02 21:51:18.000000000 +0000 +++ avarice-2.14/src/jtagprog.cc 2020-09-05 20:47:46.000000000 +0000 @@ -22,7 +22,7 @@ * * This file contains functions for interfacing with the JTAG box. * - * $Id: jtagprog.cc 301 2012-11-02 21:51:18Z joerg_wunsch $ + * $Id: jtagprog.cc 388 2020-09-05 20:46:04Z joerg_wunsch $ */ @@ -37,6 +37,7 @@ #include #if ENABLE_TARGET_PROGRAMMING +# include "autoconf.h" # include #endif @@ -46,8 +47,11 @@ #if ENABLE_TARGET_PROGRAMMING // The API changed for this in bfd.h. This is a work around. +#ifndef bfd_get_section_name +# define bfd_get_section_name(bfd, ptr) bfd_section_name(ptr) +#endif #ifndef bfd_get_section_size -# define bfd_get_section_size bfd_get_section_size_before_reloc +# define bfd_get_section_size bfd_section_size #endif static void initImage(BFDimage *image) @@ -203,7 +207,7 @@ void jtag1::enableProgramming(void) { programmingEnabled = true; - if (doSimpleJtagCommand(0xa3, 1) < 0) + if (!doSimpleJtagCommand(0xa3, 1)) { fprintf(stderr, "JTAG ICE: Failed to enable programming\n"); throw jtag_exception(); @@ -214,7 +218,7 @@ void jtag1::disableProgramming(void) { programmingEnabled = false; - if (doSimpleJtagCommand(0xa4, 1) < 0) + if (!doSimpleJtagCommand(0xa4, 1)) { fprintf(stderr, "JTAG ICE: Failed to disable programming\n"); throw jtag_exception(); @@ -226,7 +230,7 @@ // (unless the save-eeprom fuse is set). void jtag1::eraseProgramMemory(void) { - if (doSimpleJtagCommand(0xa5, 1) < 0) + if (!doSimpleJtagCommand(0xa5, 1)) { fprintf(stderr, "JTAG ICE: Failed to erase program memory\n"); throw jtag_exception(); @@ -346,6 +350,9 @@ statusOut("\nDownload complete.\n"); #else // !ENABLE_TARGET_PROGRAMMING + (void)filename; + (void)program; + (void)verify; statusOut("\nDownload not done.\n"); throw jtag_exception("AVaRICE was not configured for target programming"); #endif // ENABLE_TARGET_PROGRAMMING diff -Nru avarice-2.13+svn375/src/main.cc avarice-2.14/src/main.cc --- avarice-2.13+svn375/src/main.cc 2016-02-29 22:21:58.000000000 +0000 +++ avarice-2.14/src/main.cc 2020-09-05 20:47:46.000000000 +0000 @@ -21,7 +21,7 @@ * * This file contains the main() & support for avrjtagd. * - * $Id: main.cc 358 2016-02-29 22:21:58Z joerg_wunsch $ + * $Id: main.cc 388 2020-09-05 20:46:04Z joerg_wunsch $ */ @@ -246,8 +246,14 @@ "HOST_NAME defaults to 0.0.0.0 (listen on any interface).\n" "\":PORT\" is required to put avarice into gdb server mode.\n\n"); fprintf(stderr, - "e.g. %s --erase --program --file test.bin --jtag /dev/ttyS0 :4242\n\n", - progname); + "Example usage:\n"); + fprintf(stderr, + "\t%s --jtag /dev/ttyS0 :4242\n", + progname); + fprintf(stderr, + "\t%s --dragon :4242\n", + progname); + fprintf(stderr, "\n"); exit(0); } diff -Nru avarice-2.13+svn375/src/Makefile.in avarice-2.14/src/Makefile.in --- avarice-2.13+svn375/src/Makefile.in 2018-10-21 07:10:29.000000000 +0000 +++ avarice-2.14/src/Makefile.in 2020-09-05 20:48:10.000000000 +0000 @@ -297,7 +297,6 @@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ diff -Nru avarice-2.13+svn375/src/utils.cc avarice-2.14/src/utils.cc --- avarice-2.13+svn375/src/utils.cc 2011-12-12 13:24:07.000000000 +0000 +++ avarice-2.14/src/utils.cc 2020-09-05 20:47:46.000000000 +0000 @@ -63,3 +63,16 @@ fflush(stdout); } +void unknownDevice(unsigned int devid, bool generic) +{ + fprintf(stderr, + "Device ID 0x%04x is not known to AVaRICE.\n" + "Please ask for it being added to the code", + devid); + if (generic) + fprintf(stderr, + ", or use\n" + "-P to override the automatic decision.\n"); + else + fprintf(stderr, ".\n"); +}