Commit graph

15 commits

Author SHA1 Message Date
Ivan Nardi
73d2c8657d
CI: update jobs (#3050) 2025-12-04 20:15:28 +01:00
Ivan Nardi
19ee4f6c33
Build system: minor fixes about flag compilation and example dependencies (#3038)
- always use `-Wextra` compilation flag; it was already used in CI
- always compile `ndpiSimpleIntegration` when building examples
- don't mess with optimization flags: `CFLAGS` default value is "-g -O2"
  and the user can change it

Try to test -O1,2,3,s flags in CI.

Fix some warnings.
2025-11-21 15:51:29 +01:00
Ivan Nardi
bf120e2aad
tests: improve parallelization (#3027)
Allow multiple configuration to run in parallel.
Allow fast failure
2025-11-18 10:31:50 +01:00
Ivan Nardi
6ab338928c
Add support for out-of-tree builds (#2993)
Initial work to support out-of-tree builds
```
./autogen.sh
mkdir build
cd build
../configure
make
make check
```
IMPORTANT: `autogen.sh` doesn't call `configure` automatically anymore!!

You have to do: `./autogen.sh && ./configure --$OPTIONS`.
A little bit annoying but the pattern `autogen && configure && make` is
very common on Linux.

Known issues:
* `make doc` doesn't work in out-of-tree builds, yet
* Windows/MinGW/DPDK (out-of-tree) builds have not been tested, so it is unlikely they work

See: #2992
2025-11-03 11:58:59 +01:00
Ivan Nardi
9129aa8aac
CI: update Windows runners (#2794)
* add CI on Windows 11 on ARM
* workaround fow Windows build where the test script is stuck in
  parallel mode
2025-04-15 22:29:08 +02:00
Ivan Nardi
1315b36755
CI: move tests with "local gcrypt" to a scheduled job (#2699)
The goal is always the same: faster CI when pushing/committing
2025-01-24 18:35:54 +01:00
Ivan Nardi
c8f8d51dd2
Fix compilation on latest mac versions with external libraries (#2669)
Fix also Performance job on ubuntu-latest/24.04: see similar fix in
957a05050.

Close: #2412
2025-01-15 13:42:55 +01:00
Ivan Nardi
89ccc30e9f
Update some CI jobs (#2660)
* Move ThreadSanitizer job to the scheduled jobs (once a day): all our tests
  are intrinsically mono-thread and this job takes quite some time
* Two explicit jobs to test LTO and Gold linker, used by oss-fuzz
* Two explicit jobs for Windows (with msys2)
* Run address sanitizer only on the 4 main jobs: newest/oldest gcc/clang
* Reduce the time used by fuzzing jobs. Note that oss-fuzz is
  continuosly fuzzing our code!
* Move the no x86_64 jobs to a dedicated file

This way, the main matrix is a little bit simpler and the CI jobs last a
little shorter
2025-01-09 14:23:23 +01:00
Ivan Nardi
6a9d4b1ab6
CI: more parallel work (#2459) 2024-06-05 11:56:03 +02:00
Ivan Nardi
8fbef7fb5a
GitHub Actions: update to latest macOS runners (#2293)
Add a simple job with macos-14 on M1.
https://github.blog/changelog/2024-01-30-github-actions-introducing-the-new-m1-macos-runner-available-to-open-source/)
There are some issues with external dependencies (they are installed but
autoconf script doens;t find them) so keep it simple.

On macos-13 it seems that:
* there is no `realpath` program (even if coreutils has been
installed...)
* most of the filesystem is read only (we can't write on /usr/lib).
So I change
```
make install DESTDIR=$(realpath _install)
ls -alhHR _install
```
to
```
DESTDIR=/tmp/ndpi make install
ls -alhHR /tmp/ndpi
```
for all the jobs

Fix a warning on GitHub logs:
```
Node.js 16 actions are deprecated. Please update the following actions
to use Node.js 20: actions/checkout@v3. For more information see:
https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
```
2024-02-01 20:30:27 +01:00
Christian Marangi
d5c9a16a48
Move from PCRE to PCRE2 (#2134)
Move from PCRE to PCRE2. PCRE is EOL and won't receive any security
updates anymore. Convert to PCRE2 by converting any function PCRE2 new
API.

Also update every entry in github workflows and README to point to the
new configure flag. (--with-pcre2)

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2023-11-01 14:16:49 +01:00
Toni
72814bed33
Added coverage targets to Makefile.am for convenience. (#2039)
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2023-07-07 17:40:50 +02:00
Ivan Nardi
c7ef3608d9
CI: fix Performance job (#1936)
Fix: 7714507f
2023-04-09 10:16:28 +02:00
Ivan Nardi
22cf8b5d8f
configure: add an option to enable debug build, i.e -g (#1929)
Add this new flag to one CI job, to test it

Close #1925
2023-04-06 09:35:27 +02:00
Ivan Nardi
04e017a854
Rework CI jobs to try reducing CI duration (#1903)
CI duration is quite long: the longest jobs is the "Performance" one.
Try to reduce the overall duration: that job (and some others) will not
be triggered for each PR/commit anymore, but asynchronously, once a day
(this scheduling seems right since the frequency of the PR/commits in
the project).
It should be possibly to trigger them manually, via GUI, anyway.

Remove two identical jobs; we already tests ASAN with 4 different
compilers.

After 9eff0754 it is safe to reduce fuzzing time.

Bottom line: try to have as upper-time of CI tests the duration of the
fuzzing jobs
2023-03-22 18:17:25 +01:00