diff mbox series

[v2,3/6] libsepol: Bump libsepol.so version

Message ID 20201009130052.52409-4-plautrba@redhat.com (mailing list archive)
State Accepted
Headers show
Series [v2,1/6] libsepol: Get rid of the old and duplicated symbols | expand

Commit Message

Petr Lautrbach Oct. 9, 2020, 1 p.m. UTC
Previous commits removed some symbols and broke ABI, therefore we need to change
SONAME.

See the following quotes from distribution guidelines:

https://www.debian.org/doc/debian-policy/ch-sharedlibs.html#run-time-shared-libraries

Every time the shared library ABI changes in a way that may break
binaries linked against older versions of the shared library, the SONAME
of the library and the corresponding name for the binary package
containing the runtime shared library should change.

https://docs.fedoraproject.org/en-US/packaging-guidelines/#_downstream_so_name_versioning

When new versions of the library are released, you should use an ABI
comparison tool to check for ABI differences in the built shared
libraries. If it detects any incompatibilities, bump the n number by
one.

Signed-off-by: Petr Lautrbach <plautrba@redhat.com>
---
 libselinux/src/load_policy.c | 2 +-
 libsepol/src/Makefile        | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

Comments

James Carter Oct. 15, 2020, 5:56 p.m. UTC | #1
On Fri, Oct 9, 2020 at 9:47 AM Petr Lautrbach <plautrba@redhat.com> wrote:
>
> Previous commits removed some symbols and broke ABI, therefore we need to change
> SONAME.
>
> See the following quotes from distribution guidelines:
>
> https://www.debian.org/doc/debian-policy/ch-sharedlibs.html#run-time-shared-libraries
>
> Every time the shared library ABI changes in a way that may break
> binaries linked against older versions of the shared library, the SONAME
> of the library and the corresponding name for the binary package
> containing the runtime shared library should change.
>
> https://docs.fedoraproject.org/en-US/packaging-guidelines/#_downstream_so_name_versioning
>
> When new versions of the library are released, you should use an ABI
> comparison tool to check for ABI differences in the built shared
> libraries. If it detects any incompatibilities, bump the n number by
> one.
>
> Signed-off-by: Petr Lautrbach <plautrba@redhat.com>

Acked-by: James Carter <jwcart2@gmail.com>

> ---
>  libselinux/src/load_policy.c | 2 +-
>  libsepol/src/Makefile        | 2 +-
>  2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/libselinux/src/load_policy.c b/libselinux/src/load_policy.c
> index 2aea826f863e..0034fa53d6e6 100644
> --- a/libselinux/src/load_policy.c
> +++ b/libselinux/src/load_policy.c
> @@ -76,7 +76,7 @@ int selinux_mkload_policy(int preservebools __attribute__((unused)))
>  #ifdef SHARED
>         char *errormsg = NULL;
>         void *libsepolh = NULL;
> -       libsepolh = dlopen("libsepol.so.1", RTLD_NOW);
> +       libsepolh = dlopen("libsepol.so.2", RTLD_NOW);
>         if (libsepolh) {
>                 usesepol = 1;
>                 dlerror();
> diff --git a/libsepol/src/Makefile b/libsepol/src/Makefile
> index 8d466f56ed0e..dc8b1773d974 100644
> --- a/libsepol/src/Makefile
> +++ b/libsepol/src/Makefile
> @@ -7,7 +7,7 @@ RANLIB ?= ranlib
>  CILDIR ?= ../cil
>
>  VERSION = $(shell cat ../VERSION)
> -LIBVERSION = 1
> +LIBVERSION = 2
>
>  LEX = flex
>  CIL_GENERATED = $(CILDIR)/src/cil_lexer.c
> --
> 2.28.0
>
diff mbox series

Patch

diff --git a/libselinux/src/load_policy.c b/libselinux/src/load_policy.c
index 2aea826f863e..0034fa53d6e6 100644
--- a/libselinux/src/load_policy.c
+++ b/libselinux/src/load_policy.c
@@ -76,7 +76,7 @@  int selinux_mkload_policy(int preservebools __attribute__((unused)))
 #ifdef SHARED
 	char *errormsg = NULL;
 	void *libsepolh = NULL;
-	libsepolh = dlopen("libsepol.so.1", RTLD_NOW);
+	libsepolh = dlopen("libsepol.so.2", RTLD_NOW);
 	if (libsepolh) {
 		usesepol = 1;
 		dlerror();
diff --git a/libsepol/src/Makefile b/libsepol/src/Makefile
index 8d466f56ed0e..dc8b1773d974 100644
--- a/libsepol/src/Makefile
+++ b/libsepol/src/Makefile
@@ -7,7 +7,7 @@  RANLIB ?= ranlib
 CILDIR ?= ../cil
 
 VERSION = $(shell cat ../VERSION)
-LIBVERSION = 1
+LIBVERSION = 2
 
 LEX = flex
 CIL_GENERATED = $(CILDIR)/src/cil_lexer.c