aboutsummaryrefslogtreecommitdiff
path: root/build_matrix.sh
Commit message (Collapse)AuthorAgeFilesLines
* CI: Test with IPv6 support enabled/disabledFrancois-Xavier Le Bail2023-05-231-13/+18
|
* autoconf: Add autogen.sh, remove configure and config.h.inFrancois-Xavier Le Bail2023-01-301-3/+1
| | | | | | | | | | | | | | | Put autoconf-generated files in the release tarball. Remove the corresponding task from the TODO file. The minimum required version of autoconf is currently 2.69. If version 2.69 or later is already installed and there is no autoconf default, it may be necessary to set the AUTORECONF environment variable to enable the one to use, like: AUTORECONF=autoreconf-2.69 ./autogen.sh or AUTORECONF=autoreconf-2.71 ./autogen.sh
* CI: Introduce and use LIBPCAP_CMAKE_TAINTEDFrancois-Xavier Le Bail2022-11-301-0/+7
| | | | | | | | | | | | | | | | | The new environment variable provides means to declare all or some libpcap cmake run of a specific environment (CI or a working copy) as tainted. Add explicit conditions to exempt the cmake run that emit warnings now and request the compiler to treat warnings as errors *iff* the cmake run is not tainted. This way if a cmake run that is warning-free now degrades later, CI will fail it. The treat warnings as errors cmake option used is: -Werror=dev Make developer warnings errors. Make warnings that are meant for the author of the CMake- Lists.txt files errors. By default this will also turn on depre- cated warnings as errors.
* CI: that didn't help, just remove it.Guy Harris2022-01-191-1/+1
| | | | | | | The error is bogus (Illumos, and probably Solaris, don't free up everything allocated by the gettext code before exiting; it's still reachable), and nothing obvious seems to make valgrind Just Shut Up about it.
* CI: suppress leak warnings about still-reachable memory.Guy Harris2022-01-191-1/+1
|
* CI: show the "still reachable" leaks in valgrind.Guy Harris2022-01-191-1/+1
|
* CI: run valgrind with --leak-check=full.Guy Harris2022-01-191-1/+1
| | | | | Hopefully that makes it clearer where stuff is being linked from in the Illumos build.
* CI: Try to use Valgrind for findalldevstest.Denis Ovsienko2022-01-151-0/+4
| | | | | | | In build_matrix.sh and build.sh detect and use Valgrind if it is available in the default path. Update linux-amd64 and freebsd-amd64 Cirrus CI tasks to install the package. If the error from the previous commit reoccurs, these changes should detect it automatically.
* CI: Disable shellcheck SC2006 in the Makefile. [skip ci]Denis Ovsienko2022-01-031-2/+0
| | | | Same as in tcpslice.
* CI: Add MAKE_BIN to allow non-default makes. [skip ci]Denis Ovsienko2021-08-171-1/+4
| | | | Same as in tcpdump.
* CI: Introduce and use LIBPCAP_TAINTED. [skip appveyor]Denis Ovsienko2021-07-311-0/+7
| | | | | Same as in tcpslice and tcpdump earlier. This should cover both Autoconf and CMake.
* CI: Port some improvements from tcpdump. [skip appveyor]Denis Ovsienko2021-07-311-5/+4
| | | | Improve OS and compiler identification, print matrix progress to stderr.
* CI: Port recent improvements from tcpslice. [skip appveyor]Denis Ovsienko2021-07-221-24/+22
| | | | | | | Start using build_common.sh, make default assignments early and uniformly, use Solaris-compatible command substitution, install bc on linux-amd64. This implements initial support for AIX and Solaris in the libpcap build matrix scripts.
* CI: Lose the output folding props.Denis Ovsienko2021-07-051-12/+0
| | | | | | | The feature has no function in the current CI setup because it is specific to Travis CI. Keep the related block that cats assorted build files and make it conditional on MATRIX_DEBUG -- it might be needed later.
* CI: Switch from bash to POSIX shell.Denis Ovsienko2021-07-051-11/+6
| | | | | | | | | On FreeBSD, NetBSD and OpenBSD bash has to be installed explicitly. On NetBSD Buildbot workers sometimes this is much more complicated than just running a package manager command. At the same time, the build scripts use only a few trivial bashisms, so switch to POSIX shell to remove this dependency from the problem space. Simplify some code while at it.
* build_matrix.sh: Fix a shellcheck warningFrancois-Xavier Le Bail2021-05-311-1/+1
| | | | | The warning was: Use "${var:?}" to ensure this never expands to /* . [SC2115]
* CI: Refine the build matrix scripts. [skip appveyor]Denis Ovsienko2021-03-191-6/+16
| | | | | | | | | | | | | | | | | | If not provided with a prefix path, make a temporary one and remove it when done; between the rounds delete the contents of the prefix directory, but not the directory. This way parallel builds on a buildbot worker do not clash, also if a developer runs build_matrix.sh from their home directory, that no longer breaks the worker builds whilst the non-worker script is running or even indefinitely if it had failed. Fix skipping GCC on macOS in build_matrix.sh to make it work consistently in and outside of a CI environment. Remove the skipping from the CI space. Quote the prefix variable properly. Print OS and compiler versions at the beginning. Simplify Makefile printing in the Travis CI block. Require travis_fold() parameters to be set. Relabel Cirrus CI tasks for consistency.
* build_matrix.sh: Update the SETUP line printingFrancois-Xavier Le Bail2021-02-101-1/+1
|
* build_matrix.sh: Add a comment about MATRIX_* environment variablesFrancois-Xavier Le Bail2021-02-071-0/+3
| | | | [skip ci]
* build.sh, build_matrix.sh: Update some commentsFrancois-Xavier Le Bail2021-02-071-3/+3
| | | | [skip ci]
* build_matrix.sh: Add a counterFrancois-Xavier Le Bail2021-02-041-1/+4
|
* Cirrus CI: Switch to build_matrix.sh. [skip appveyor] [skip travis]Denis Ovsienko2021-02-041-3/+3
| | | | | | Replace most of the task script commands with build_matrix.sh. Extend the latter to allow overriding the matrix dimensions if required and use that to add two versions of GCC to the nested matrix. Name the task.
* build.sh, build_matrix.sh: Use always no/yes, no more disable/enableFrancois-Xavier Le Bail2021-02-041-2/+2
| | | | | | | | | | This change harmonizes the setup. Run examples are now: ./build_matrix.sh CC=clang ./build.sh CMAKE=yes ./build.sh CC=clang CMAKE=yes REMOTE=yes ./build.sh
* build_matrix.sh: Cancel changes only in configureFrancois-Xavier Le Bail2021-02-041-1/+2
|
* Use the "#!/usr/bin/env bash" shebang for portabilityFrancois-Xavier Le Bail2021-02-031-1/+1
| | | | | | bash is not always in /bin. Keeping bash for now, this change will help to test on other OSes.
* Travis CI: Build with less buildersFrancois-Xavier Le Bail2021-02-031-0/+54
This change will save CI runtime. This will currently run five builders: amd64, arm64, ppc64le, s390x and osx. The build_matrix.sh script executes the matrix loops, exclude tests and cleaning. It calls the build.sh script which runs one build with exported variables setup: CC, CMAKE and REMOTE (default: gcc, no (cmake), disable (remote)). These scripts can easily be updated to run new tests (32 bits builds, sanitizers, coverage, etc). build_matrix.sh and build.sh can be used locally for build tests. Run examples: ./build_matrix.sh CC=clang ./build.sh CMAKE=yes ./build.sh CC=clang CMAKE=yes REMOTE=enable ./build.sh (With some Denis's ideas) Moreover: Remove the old workaround PATH=$PATH... Update the install directory prefix to /tmp/local. Use vim modeline in the two shell scripts.