Commit Graph

4778 Commits

Author SHA1 Message Date
MCUdude
0c2c03f13f Rename --test and --noverify to --test-memory and -d --noverify-memory 2025-02-12 10:16:36 +01:00
MCUdude
0528a3e8af partno -> partname 2025-02-12 10:12:29 +01:00
MCUdude
4bb18b78ad Add missing bitclock argument 2025-02-12 10:07:17 +01:00
Hans
6ba504441a Add longopts to texinfo document 2025-02-07 22:20:09 +01:00
MCUdude
2b0eced1d0 Add longopts to manpage 2025-02-07 14:12:05 +01:00
MCUdude
19b2519f16 Use --quell instead of --quiet 2025-02-07 13:14:49 +01:00
MCUdude
d7de4e6ce3 Add missing long opt in help text
+ remove duplicates
2025-02-07 12:49:10 +01:00
Hans Ulrich Niedermann
818e0e8698 Add long options like --part
Switch the command line argument parser from getopt(3) to
getopt_long(3) and add a few long options as aliases to existing
short options, e.g. "--help" and "--part" being aliases for "-?"
and "-p", respectively.

The getopt_long(3) function is available on GNU, BSD, and the existing
msvc/getopt.[ch] already implements getopt_long() on Windows. This
should cover all systems avrdude supports.

Adapt the avrdude usage message shown by "-?" or "--help" to show the
new long options.

TODO: Adapt man page and texi manual reflecting the long options.

Closes: #1922
2024-11-27 02:44:17 +01:00
Stefan Rueger
69c3293ff0 Update NEWS 2024-11-25 12:39:14 +00:00
Stefan Rueger
ca606af331 Fix typo 2024-11-25 12:38:50 +00:00
Stefan Rueger
22efe4f5e5 Merge pull request #1933 from stefanrueger/xmega-fuses
Fix ATxmega fuses memory sizes
2024-11-25 12:23:40 +00:00
Stefan Rueger
36fee42826 Merge pull request #1932 from stefanrueger/avr32ebxx
Add AVR32EBxx parts
2024-11-25 12:17:32 +00:00
Stefan Rueger
7bbf06ee14 Merge pull request #1916 from ndim/document-elf2tag
Document elf2tag script
2024-11-25 12:13:23 +00:00
mcuee
eec1a9b2e4 Update NEWS 2024-11-23 21:08:05 +08:00
Hans Ulrich Niedermann
f85a584067 ci: Check consistency of generated files
This makes the .github/workflows/check-sourcecode
more a "check-repo" than a "check-sourcecode".
2024-11-23 03:31:51 +01:00
Hans Ulrich Niedermann
eddb0d0ed5 Add basic elf2tag(1) manpage
Add basic elf2tag(1) manpage using asciidoc/asciidoctor.

To update the elf2tag.1 file from elf2tag.1.adoc, run
the update-elf2tag-manpage script.

No CI or buildsystem or git precommit hook integration yet.
2024-11-23 03:31:06 +01:00
mcuee
5c0d478703 Merge pull request #1934 from ndim/enable-option-checking=fatal
CI: Ensure only supported configure options are used (--enable-option-checking=fatal)
2024-11-23 09:09:53 +08:00
Hans Ulrich Niedermann
172474a9e9 ci: Abort autotools builds in case of unsupported options
Abort autotools CI builds in case we give them an unsupported
option. The default is to only warn, but the CI should catch
mistakes.
2024-11-23 01:40:24 +01:00
Hans Ulrich Niedermann
b8594d1df1 ci: Fix macos brew install issue with pkg-config
The macos build's "brew install" command has developed a
build failure without us being involved at all:

    Error: The `brew link` step did not complete successfully
    The formula built, but is not symlinked into /opt/homebrew
    Could not symlink bin/pkg-config
    Target /opt/homebrew/bin/pkg-config
    is a symlink belonging to pkg-config@0.29.2. You can unlink it:
      brew unlink pkg-config@0.29.2

This makes the macos build work again and implements the suggestions
brew prints when installing bison and flex, regarding PATH, LDFLAGS,
and CPPFLAGS.
2024-11-23 01:40:04 +01:00
Hans Ulrich Niedermann
79e091b545 ci: Use multi-line format to invoke configure
Use the multi-line format to invoke configure with a long command line.

This prepares for even longer command lines.
2024-11-22 20:11:29 +01:00
Hans Ulrich Niedermann
2f6bd67a52 elf2tag: Add -h and --help arguments 2024-11-20 16:33:31 +01:00
Stefan Rueger
d7e5b43824 Update avrintel files 2024-11-16 23:09:19 +00:00
Stefan Rueger
f6efda5fe7 Add AVR32EB* parts 2024-11-16 23:01:15 +00:00
Stefan Rueger
985726039b Fix ATxmega fuses memory sizes 2024-11-16 10:19:26 +00:00
mcuee
0b92721af9 Merge pull request #1927 from ndim/add-extra-version-information
Add extra version information to avrdude output
2024-10-10 20:56:45 +08:00
Hans Ulrich Niedermann
cb53a34ff1 Add extra version information to avrdude output
Some downstream projects build avrdude and want to add their
own version information to the avrdude version to distinguish
their builds from others.

This adds a clean way to do that without needing to patch the
avrdude sources, for both cmake and automake based builds:

    cmake -DEXTRA_VERSION:STRING=-arduino.1-rc1
    ../configure EXTRA_VERSION=-arduino.1-rc1

After building avrdude, the last line of "avrdude -?" will now
look similar to the following, depending on whether you are
building an avrdude git checkout or an avrdude release tarball:

    avrdude version 8.0-20240901-arduino.1-rc1 (30e19f23), https://github.com/avrdudes/avrdude
    avrdude version 8.1-arduino.1-rc1 (30e19f23), https://github.com/avrdudes/avrdude
2024-10-10 13:40:22 +02:00
Stefan Rueger
30e19f2332 Update NEWS 2024-09-01 01:21:45 +01:00
Stefan Rueger
0f0b4c15ce Increment libavrdude version
There is bound to be a library change in git main until v8.1 is published;
ensure we have a new version number in preparation for the next release.
2024-09-01 01:20:34 +01:00
Stefan Rueger
d3c4f8631c Merge pull request #1919 from stefanrueger/m16u4
Update usbpids in avrdude.conf
2024-09-01 01:14:44 +01:00
Stefan Rueger
f1cfb81313 Merge pull request #1918 from stefanrueger/da-s
Add AVR128DAxxS parts
2024-09-01 01:14:05 +01:00
Stefan Rueger
af22f60c8f Remove uspid of ATxmegas without USB interface 2024-09-01 00:58:02 +01:00
Stefan Rueger
13e5af1b3c Add memory pdicfg to AVR128DAnnS 2024-08-31 18:00:15 +01:00
Stefan Rueger
b3949ce685 Correcting usbpid of x64a4u 2024-08-31 17:37:39 +01:00
Stefan Rueger
d54782e9a7 Update usbpids in avrdude.conf 2024-08-31 13:00:07 +01:00
Stefan Rueger
a0a2ec8926 Add AVR128DAxxS parts 2024-08-31 10:44:30 +01:00
Stefan Rueger
4fa07e563f Update NEWS 2024-08-24 22:23:30 +01:00
Stefan Rueger
d8c8cf1379 Update version to 8.0 v8.0 2024-08-24 21:51:00 +01:00
Stefan Rueger
943ee419b6 Update NEWS 2024-08-24 19:14:15 +01:00
Stefan Rueger
821d5b0ad1 Merge pull request #1911 from stefanrueger/jtagmkII
Iron out some problems in jtagmkII
2024-08-24 19:11:25 +01:00
Stefan Rueger
ac5c4b9ccd Merge pull request #1910 from ndim/guard-against-zombie-problems
Add checks for zombie sourcecode problems
2024-08-24 19:10:45 +01:00
Stefan Rueger
706336c40c Merge pull request #1888 from ndim/ci-test-running-built-avrdude
CI: test running the built avrdude executable
2024-08-24 19:10:08 +01:00
Stefan Rueger
ca6e0793f5 Merge pull request #1874 from ndim/parport-build-test
Parport build test
2024-08-24 19:09:51 +01:00
Stefan Rueger
19279e33f8 Fix flash paged r/w for jtagmkII
There were several problems with page_erase():
  - Read cache not invalidated on writes to boot and apptable
  - PDI apptable and boot memories paged access can get addresses wrong
2024-08-24 18:04:18 +01:00
Stefan Rueger
0c463fad92 Fix page erase for jtagmkII
There were several problems with page_erase():
 - Not working on UPDI eeprom/usersig memories: write a page of 0xff instead
 - Read cache not invalidated on page erase
 - PDI apptable and boot memories page erase possibly erases wrong page
2024-08-24 17:56:41 +01:00
Stefan Rueger
93b512de70 Change memory category for classic page erase in jtag3.c 2024-08-24 17:47:00 +01:00
Hans Ulrich Niedermann
c677974137 ci: Where possible, dryrun tests on uninstalled avrdude
This tries running the uninstalled avrdude executable, both
with -? and for test-avrdude.

Tests on installed avrdude are kept where they exist,
but not added for all possible platforms.

Quick table showing

  * -? testing of built avrdude (print the usage)
  * dryrun testing of built avrdude before installation
  * installation of avrdude
  * dryrun testing of installed avrdude

and whether that happens/succeeds/fails:

                              run    test              test
                               -?    built   install   installed
    linux-x86_64-autotools  | yes  | succ  | yes     | succ
    linux-x86_64            | yes  | succ  | yes     | succ
    linux (cross-compile)   | yes# | n/a   | no      | <--
    macos-x86_64            | yes  | succ  | no      | <--
    macos-x86_64-autotools  | yes  | succ  | no      | <--
    msvc                    | yes* | succ  | broken  | <--
    mingw                   | yes  | fail  | no      | <--

 # Only on i386, as the armhf and arm64 executables are not runnable
   on the ubuntu-latest x86_64 worker.

 * Works on x86 and x64. Skipped on arm64 at this time.

   The arm64 executable is not runnable, possibly due to the
   old problem of an exe being built for the wrong architecture
   (which @mcuee mentioned somewhere).

In summary, this should run as much as is possible at this time
without introducing failures.

In the future, after these failures are fixed, more tests can be
added for a more complete coverage.
2024-08-24 18:46:03 +02:00
Stefan Rueger
b407731473 Refrain from using page_erase on -U eeprom:w 2024-08-24 17:43:37 +01:00
Hans Ulrich Niedermann
415b397bc9 ci: Use ${{env.BUILD_TYPE}} instead of hardcoded value 2024-08-24 18:36:57 +02:00
Hans Ulrich Niedermann
06032113cf ci: Run test-avrdude with -v to show avrdude output on errors 2024-08-24 18:36:57 +02:00
Hans Ulrich Niedermann
184b00db48 ci: disable distcheck (until am doc builds have been fixed)
The doc builds are a bit brittle at this time, and therefore
do not work reliably with "make distcheck".

Therefore this comments out "make distcheck" until the am doc
builds have been fixed.
2024-08-24 18:36:57 +02:00