On Thu, Jul 23, 2026 at 02:55:57PM +0200, David Marchand wrote: > Regenerating ABI is not something we do often, but when working on ABI > topics, a lot of time may be wasted on waiting for the reference being > generated. > > We only care about shared libraries, avoid building final applications > or examples. > And we don't need to double check headers in the ABI reference. > > Signed-off-by: David Marchand <[email protected]> > --- > .ci/linux-build.sh | 11 ++++++++++- > devtools/test-meson-builds.sh | 5 ++++- > 2 files changed, 14 insertions(+), 2 deletions(-) > > diff --git a/.ci/linux-build.sh b/.ci/linux-build.sh > index e0b914a142..a5e602ed83 100755 > --- a/.ci/linux-build.sh > +++ b/.ci/linux-build.sh > @@ -201,9 +201,18 @@ if [ "$ABI_CHECKS" = "true" ]; then > fi > > if [ ! -d reference ]; then > + REF_OPTS="$OPTS" > + # We only care about the drivers and libs, disable developer checks > and > + # don't try to link apps. > + REF_OPTS="$REF_OPTS -Dcheck_includes=false" > + REF_OPTS="$REF_OPTS -Ddeveloper_mode=disabled" > + REF_OPTS="$REF_OPTS -Ddisable_apps=*" > + REF_OPTS="$REF_OPTS -Denable_docs=false" > + REF_OPTS="$REF_OPTS -Dexamples=" > + REF_OPTS="$REF_OPTS -Dtests=false"
Minor nit, but this shouldn't be necessary, as it will now be covered under the disable_apps wildcard AFAIK. A number of these are already the default, but I suppose explicitly stating them is harmless (as is setting tests=false). > refsrcdir=$(readlink -f $(pwd)/../dpdk-$REF_GIT_TAG) > git clone --single-branch -b "$REF_GIT_TAG" $REF_GIT_REPO $refsrcdir > - meson setup $OPTS -Dexamples= $refsrcdir $refsrcdir/build > + meson setup $REF_OPTS $refsrcdir $refsrcdir/build > ninja -C $refsrcdir/build > DESTDIR=$(pwd)/reference meson install -C $refsrcdir/build > find reference/usr/local -name '*.a' -delete > diff --git a/devtools/test-meson-builds.sh b/devtools/test-meson-builds.sh > index 11e4be3f88..8ca7091b47 100755 > --- a/devtools/test-meson-builds.sh > +++ b/devtools/test-meson-builds.sh > @@ -206,8 +206,11 @@ build () # <directory> <target cc | cross file> <ABI > check> [meson options] > fi > > rm -rf $abirefdir/build > + # We only care about the drivers and libs, disable > + # developer checks and don't try to link apps. > config $abirefdir/src $abirefdir/build ABI $cross \ > - -Dexamples= $* > + $* -Dcheck_includes=false > -Ddeveloper_mode=disabled \ > + -Ddisable_apps=* -Dexamples= -Dtests=false > compile $abirefdir/build > install_target $abirefdir/build $abirefdir/$targetdir > Acked-by: Bruce Richardson <[email protected]>

