On Mon, Feb 24, 2014 at 11:17:59PM -0800, Steve Beattie wrote: > On Mon, Feb 24, 2014 at 11:13:23PM -0800, Steve Beattie wrote: > > On Mon, Feb 24, 2014 at 04:23:13PM -0800, Seth Arnold wrote: > > > In the course of building updated apparmor 2.8.95 packages for Ubuntu, I > > > updated the libtool variables to: > > > > > > AA_LIB_CURRENT = 2 > > > AA_LIB_REVISION = 0 > > > AA_LIB_AGE = 0 > > > > > > To match the new '2' version we need to update the > > > libraries/libapparmor/configure.ac to know that this is libapparmor2. > > > > > > I propose this patch for trunk. > > > > I'm not happy about the .so version bump, but since that appears to be > > what we've done, we need to make the library name consistent. > > > > > Signed-of-by: Seth Arnold <[email protected]> > > > > Signed-off-by: Steve Beattie <[email protected]> > > Sorry, that should be: Acked-by: Steve Beattie <[email protected]>
Actually, NACK. I think we all have agreed that the library changes that have occurred on trunk should be considered as having added only new interfaces over 2.8. Given that, we should not be bumping the SO version. Part of the confusion on our part extends from not understanding the libtool versioning and how it translates into the library version and the SONAME. Our rules in libapparmor/src/Makefile.am should be stepped through without selectively applying them. Also, the resulting library version is: (AA_LIB_CURRENT - AA_LIB_AGE).AA_LIB_AGE.AA_LIB_REVISION For more details, see: http://www.gnu.org/software/libtool/manual/html_node/Libtool-versioning.html http://openbooks.sourceforge.net/books/wga/dealing-with-libraries.html (see the section A Note about Version Numbers) The following patch adjusts the trunk libtool versions in accordance with the outlined rules. It also adds clarifying text to the documentation comment to explain how to use the rules and what the resulting outcome is. Finally, it removes a bogus argument to linker to forcibly set the SONAME in the library, as libtool will do this automatically (and override the passed argument). Signed-off-by: Steve Beattie <[email protected]> --- libraries/libapparmor/src/Makefile.am | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) Index: b/libraries/libapparmor/src/Makefile.am =================================================================== --- a/libraries/libapparmor/src/Makefile.am +++ b/libraries/libapparmor/src/Makefile.am @@ -1,7 +1,7 @@ INCLUDES = $(all_includes) # variables to set the library versions used by libtool -# Use these rules to update the library version. +# Step through these rules IN ORDER to update the library version. # 1. Update the version information only immediately before a public release # of your software. More frequent updates are unnecessary, and only # guarantee that the current interface number gets larger faster. @@ -18,9 +18,17 @@ INCLUDES = $(all_includes) # release, then # - set AA_LIB_AGE to 0. # +# The resulting library version triplet will be: +# (AA_LIB_CURRENT - AA_LIB_AGE).AA_LIB_AGE.AA_LIB_REVISION +# and the SONAME will be: +# libapparmor.so.(AA_LIB_CURRENT - AA_LIB_AGE) +# +# For more information, see: +# http://www.gnu.org/software/libtool/manual/html_node/Libtool-versioning.html +# AA_LIB_CURRENT = 2 AA_LIB_REVISION = 0 -AA_LIB_AGE = 0 +AA_LIB_AGE = 1 SUFFIXES = .pc.in .pc @@ -42,7 +50,7 @@ noinst_HEADERS = grammar.h parser.h scan libapparmor_la_SOURCES = grammar.y libaalogparse.c kernel_interface.c scanner.c libapparmor_la_LDFLAGS = -version-info $(AA_LIB_CURRENT):$(AA_LIB_REVISION):$(AA_LIB_AGE) -XCClinker -dynamic -pthread \ - -Wl,--version-script=$(top_srcdir)/src/libapparmor.map -Wl,-soname=libapparmor.so.1 + -Wl,--version-script=$(top_srcdir)/src/libapparmor.map pkgconfigdir = $(libdir)/pkgconfig pkgconfig_DATA = libapparmor.pc -- Steve Beattie <[email protected]> http://NxNW.org/~steve/
signature.asc
Description: Digital signature
-- AppArmor mailing list [email protected] Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/apparmor
