Commit graph

74 commits

Author SHA1 Message Date
Joerg Wunsch
cb651b67c5 In arduino_packing.yml, distinguish OS and architecture
upload-artifacts@v4 complains if the same artifact already
exists, so chose a different name for each OS+arch.
2025-01-30 23:16:18 +01:00
Joerg Wunsch
02279df9a2 More replacements of upload-artifacts@v3 by @v4 2025-01-30 23:16:18 +01:00
Joerg Wunsch
97508a1f0d Use upload-artifact@v4
Version 3 has been deprecated and is no longer supported.
2025-01-30 23:16:18 +01:00
Stefan Rueger
7bbf06ee14
Merge pull request #1916 from ndim/document-elf2tag
Document elf2tag script
2024-11-25 12:13:23 +00: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
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
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
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
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
Hans Ulrich Niedermann
6e2152f1b9 ci: Use printf(1) to avoid echo(1) problems
Use printf(1) to avoid possible echo(1) incompatibilities like
special escape sequences and the like.

Also, "\n\n" means two linefeeds, without any implicit linefeeds
being added.

Thought for the future: Perhaps test-avrdude should run isatty()
and, if it is not a TTY, not wait for linefeeds at all in the non-
interactive case?
2024-08-24 18:35:08 +02:00
Hans Ulrich Niedermann
fb74e288da ci: consistently rename macos -autotools build
Use the same suffix string "-autotools" for "macos-x86_64-autotools"
which the linux-x86_64-autotools build already uses.
2024-08-24 16:12:00 +02:00
Hans Ulrich Niedermann
16d7d0bbcb ci: Build parallel port code on supported systems
Build parallel port code on supported systems

Unsupported systems are:

  * Windows operating system
  * MacOS operating system

This means the CI can test

  * native Linux builds (yes, even for arm systems)

Untested at this time are the BSDs.

Removes the dysfunctional Windows (since Windows XP)  parallel port code,
and has the buildsystems fail Windows builds if parallel port builds are
requested (HAVE_PARPORT or --enable-parport).

https://github.com/avrdudes/avrdude/pull/1874#issuecomment-2275762550
2024-08-24 15:38:17 +02:00
Hans Ulrich Niedermann
5176d7b818 Add checks for zombie sourcecode problems
This adds checks for zombie sourcecode problems, i.e. problems
we have tried to eliminate but which might be or have been
resurrected.

The example check is for the problematic

    #include "ac_cfg.h"

with double quotes instead of <> which were identified as a
problem in https://github.com/avrdudes/avrdude/issues/1706
and then fixed.
2024-08-24 15:03:42 +02:00
mcuee
ce0dbc453d
Update build.yml to re-enable Windows on ARM64 MSVC build 2024-08-22 17:07:14 +08:00
Hans Ulrich Niedermann
f3e8524cb3 ci: linux-autotools use uninstalled avrdude for test-avrdude
Use the uninstalled avrdude executable and the avrdude.conf config file
which have just been built for the dry-run test with tools/test-avrdude.

Note that the parameter for the config file is a bit unexpected:

    -c "-C path/to/avrdude.conf"
2024-08-16 16:13:28 +02:00
Joerg Wunsch
7b7b3d8837 Merge branch 'main' into swig_libavrdude 2024-08-12 13:30:36 +02:00
Joerg Wunsch
a7eaf6f81f Merge remote-tracking branch 'upstream/main' into swig_libavrdude 2024-08-10 21:46:08 +02:00
Hans Ulrich Niedermann
0b82a1f124 CI: no need to install gettext for linux autotools test 2024-08-07 00:37:14 +02:00
mcuee
f06b436fe7
Update build.yml to add missing libusb-compat for macOS Homebrew 2024-08-06 15:52:41 +08:00
Joerg Wunsch
fcfe327c8a Merge remote-tracking branch 'upstream/main' into swig_libavrdude 2024-04-28 17:11:08 +02:00
mcuee
37ac6ebaa0
macOS autotools build fix 2024-04-28 20:12:12 +08:00
mcuee
3bfcd01309
Add macOS autotools to github action (#1798)
* Update build.yml to add autotools build for macOS

* Update build.yml to use /opt/homebrew
2024-04-28 12:06:26 +01:00
mcuee
dceb55da6a
Update build.yml to use /opt/homebrew for macOS github action 2024-04-28 18:19:59 +08:00
mcuee
7e18c0e115
Update build.yml to install pkg-config under macOS 2024-04-27 17:19:55 +08:00
mcuee
e17ee8dbf8
Update build.yml to include libgpiod-dev for Linux builds 2024-04-23 21:28:06 +08:00
Joerg Wunsch
4ab7e197ea Merge branch 'main' into swig_libavrdude 2024-04-14 00:28:17 +02:00
mcuee
d441501505
Adding arduino_packing_release github action (#1690)
Co-authored-by: Umberto Baldi <34278123+umbynos@users.noreply.github.com>
2024-04-13 12:33:09 +01:00
mcuee
306d948bc5
No longer need to use CMAKE_VERBOSE_MAKEFILE 2024-04-05 20:24:56 +08:00
mcuee
9b7d4d832b
To use Static Libs for macOS arduino_packing build
This is pointed out by @umbynos during the review of PR #1690
2024-03-29 18:47:17 +08:00
Joerg Wunsch
984eb922b2 Remove MSVC build for arm64 by now
It attempts to link against the wrong (x86) Python libs.
2024-03-18 22:09:27 +01:00
mcuee
cfe608a63f
Update build.yml to use CMAKE_VERBOSE_MAKEFILE to debug Windows build
This is to debug Windows MSVC and MSYS2 build.
Previous change already use the same option to debug macOS build.
2024-03-08 17:23:07 +08:00
mcuee
9567f96f1b
Update build.yml to revert previous change 2024-03-06 23:15:07 +08:00
mcuee
02d3e16b0e
One more try to debug macOS build for SWIG 2024-03-06 23:11:11 +08:00
mcuee
9f6badaf18
Update build.yml to debug macOS Homebrew CI issue 2024-03-06 21:28:25 +08:00
mcuee
a98d2155e7
Update build.yml to add Python/Swig for MSYS2 build 2024-03-06 20:22:09 +08:00
mcuee
d48c944df2
Update build.yml to use Homebrew python 2024-03-06 20:13:01 +08:00
Hans Ulrich Niedermann
8fb73a1458 Add basic CI checks using the autotools build
This add some basic CI checks which exercise the autotools build:

  * make targets "all" "install" testing compilation and installation
  * run the same dry-run test-avrdude check as the cmake builds
  * make target "distcheck" testing that dist tarball contains all
    the necessary files
2024-02-18 16:21:19 +01:00
mcuee
2357f833e1
Remove 32bit MSYS2 mingw32 and clang32 build
MSYS2 has dropped 32bit binary packages for libusb, libusb-compat-git and libftdi.
2024-02-14 13:36:21 +08:00
mcuee
a6b343d13b
Add tools/test-avrdude to Linux x86_64 github action 2024-01-29 13:12:13 +08:00
mcuee
8f4fd46874
Update build.yml to add MSYS2 ucrt64, clang32 and clang64 build 2024-01-08 10:22:34 +08:00
mcuee
390e3bacd8
Add GNU readline to mingw github action
Same as https://github.com/avrdudes/avrdude/pull/1513.
2023-11-20 15:23:02 +08:00
mcuee
8222ad8ffc
Add Arduino avrdude_packing github action for git man (#1540)
Co-authored-by: Umberto Baldi <34278123+umbynos@users.noreply.github.com>
2023-11-03 13:27:36 +00:00
mcuee
8d71bc7ceb
Update build.yml to revert PR #1513
PR #1513 (Add GNU readline to mingw github action) brings in undesired dependency of libwinpthread-1.dll to the mingw32/mingw64 binaries.
2023-10-13 11:07:51 +08:00
mcuee
55853eb422
Add GNU readline to mingw github action (#1513)
* Update build.yml to enable GNU readline for MinGW build

* Update build.yml to include termcap and ncurses
2023-10-11 12:02:43 +08:00
mcuee
7f8e8a1ad3
libserialport github action (#1512)
* Update build.yml to include libserialport except MSVC
2023-10-10 21:39:40 +08:00