[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: suboptimal library versioning of libacl and libattr
From: |
Kamil Dudka |
Subject: |
Re: suboptimal library versioning of libacl and libattr |
Date: |
Tue, 16 Mar 2021 00:01:16 +0100 |
On Monday, March 15, 2021 10:47:36 PM CET Andreas Grünbacher wrote:
> Kamil,
>
> Am Mo., 15. März 2021 um 15:24 Uhr schrieb Kamil Dudka <kdudka@redhat.com>:
> > The library versioning scheme used for libacl and libattr causes problems
> > while upgrading the libraries with rpm package manager. The new libraries
> >
> > are installed as:
> > /lib64/libacl.so.1.1.230
> > /lib64/libattr.so.1.1.250
> >
> > ... which is seen (by ldconfig) as older than originally installed
libraries:
> > /lib64/libacl.so.1.1.2253
> > /lib64/libattr.so.1.1.2448
> >
> > [...]
>
> thanks for this bug report. We can't leave things that way, obviously.
> What do you think about the following kind of fix?
>
> diff --git a/configure.ac b/configure.ac
> index 268783d..c664335 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -45,7 +45,12 @@ AS_IF([test "x$enable_debug" = "xyes"],
> [CPPFLAGS="$CPPFLAGS -DNDEBUG"])
>
> dnl Automatically increment the revision for every release.
> -LT_REVISION=$(echo "${PACKAGE_VERSION}" | tr -d .)
> +set -- $(IFS=.; echo ${PACKAGE_VERSION})
> +if test $# -ne 3 -o ${#1} -gt 1 -o ${#2} -gt 1 -o ${#3} -gt 2; then
> + echo "This PACKAGE_VERSION breaks LT_REVISION" >&2
> + exit 1
> +fi
> +LT_REVISION=$(printf "%d%d%02d" "$1" "$2" "$3")
> AC_SUBST(LT_REVISION)
>
> AC_CONFIG_COMMANDS([include/attr],
Nice. It fixes the problem for both libattr and libacl and it appears
to be compatible with the versioning scheme used by both the projects.
Thanks!
Kamil