On Fri, Jun 15, 2018 at 1:14 AM, Vishal Verma <[email protected]> wrote: > Add a couple of helper scripts to codify the release process. > First is do_abidiff: This builds RPMs for two different versions of > ndctl (specified as a git revision range, for example vXX.Y..HEAD). It > then uses abipkgdiff to determine whether the commits in that range > (collectively) introduced any compatibility breaking ABI changes. > Changing or removing a publicly exported function is considered a > breakage, where as adding new functions is acceptable. > > Second is prepare-release.sh: Its primary purpose is to codify the > libtool version update. It does a variety of sanity checks to ensure we > didn't involuntarily bump the soname, or update the libtool version in > an unexpected way. > > prepare-release.sh also calls do_abidiff to perform an abi check between > the last bug-fix update and the new version about to be released.
Nice! Good idea. > > Cc: Dan Williams <[email protected]> > Signed-off-by: Vishal Verma <[email protected]> > --- > contrib/do_abidiff | 73 ++++++++++++++ > contrib/prepare-release.sh | 201 +++++++++++++++++++++++++++++++++++++ > 2 files changed, 274 insertions(+) > create mode 100755 contrib/do_abidiff > create mode 100755 contrib/prepare-release.sh > > diff --git a/contrib/do_abidiff b/contrib/do_abidiff > new file mode 100755 > index 0000000..9adc93a > --- /dev/null > +++ b/contrib/do_abidiff > @@ -0,0 +1,73 @@ > +#!/bin/bash -e > + > +# WARNING: This will wipe ~/rpmbuild > + > +range="$*" > +old="${range%%..*}" > +new="${range##*..}" > + > +err() > +{ > + echo "$1" > + exit 1 > +} > + > +build_rpm() > +{ > + local cur=$(git rev-parse --abbrev-ref HEAD 2>/dev/null) > + local ref="$1" > + > + # setup rpmbuild env > + rpmdev-wipetree && rpmdev-setuptree Perhaps let's use mock here instead. In addition to including the ability clean the build tree it can also target rawhide rather than the current developer's Fedora version. You would use "rpmbuild -bs" to create a source rpm and then hand that off to mock. _______________________________________________ Linux-nvdimm mailing list [email protected] https://lists.01.org/mailman/listinfo/linux-nvdimm
