[dpdk-dev] [PATCHv3] Remove validate-abi.sh from tree

Neil Horman nhorman at tuxdriver.com
Tue Apr 21 13:12:30 CEST 2020


On Fri, Apr 17, 2020 at 04:42:38PM +0100, Ray Kinsella wrote:
> 
> 
> On 17/04/2020 13:10, Thomas Monjalon wrote:
> > 17/04/2020 13:47, Ray Kinsella:
> >> On 17/04/2020 11:20, Thomas Monjalon wrote:
> >>> 17/04/2020 12:11, Ray Kinsella:
> >>>> check-abi.sh appears to be backward step in terms of usability.
> >>>
> >>> No, check-abi.sh benefits from a nice integration in build scripts.
> >>> See below.
> >>>
> >>>> With validate-abi.sh I do can do a "validate-abi.sh HEAD~1 HEAD".
> >>>> And it will do the build, install, dump and comparison for me. 
> >>>> And it picked up my 20.0.2 - > 21.0 changes no problem. 
> >>>>
> >>>> With check-abi on the other hand, I need to the build and install myself.
> >>>> check-abi requires dump files, but I see no reference in the documentation to how these are created.
> >>>> It silently fails when it doesn't find any ...
> >>>>
> >>>> Do I run abi-dumper on the so's myself, or how does it work?
> >>>
> >>> check-abi.sh is integrated in test-build.sh and test-meson-builds.sh.
> >>> Probably we should document usage in these scripts.
> >>
> >> Looks like I need to set DPDK_ABI_REF_VERSION=master, not obvious.
> >> Any tips or tricks would be welcome.
> > 
> > export DPDK_ABI_REF_VERSION=v20.02
> > or
> > export DPDK_ABI_REF_VERSION=v19.11
> > 
> > Depends on which compatibility you want to test...
> > 
> 
> Few things ...
> 
> 1. test-meson-build.sh keep barfing complaining about reference paths.
> ValueError: dst_dir must be absolute, got reference/v19.11/build-gcc-static/usr/local/share/dpdk/examples/bbdev_app
> 
> Under the hood, ninja install is failing complaining that it needs an absolute path.
> I fixed this in test_meson_build.sh and will send a patch in a minute. 
> Though it's strange no-one else has seen it?
> 
> 2. test-meson-build.sh compares the abi for the static builds, which doesn't make any sense. 
> 
> 3. test-meson-build.sh will only take a branch in DPDK_ABI_REF_VERSION that exists locally.
> In order to get it to compare HEAD against HEAD~1, which you would imagine is a pretty common case.
> I had a create a branch for HEAD~1, in validate-abi this a pretty simple `validate-abi HEAD~1 HEAD`
> 
 I think this code in test-meson-build.sh should probably be fixed:

if [ ! -d $abirefdir/src ]; then
                                git clone --local --no-hardlinks \
                                        --single-branch \
                                        -b $DPDK_ABI_REF_VERSION \
                                        $srcdir $abirefdir/src
                        fi

Like you noted, using -b allows us to checkout a tag/branch in the cloned
repository but requires that it exist locally.  We should probably prefix the
checkout with a git fetch --tags

Neil

> Thanks,
> 
> Ray K
> 
> 
> 
> Ray K
>  
> 


More information about the dev mailing list