Bug 71869

Summary: kdelibs/interfaces/kscript problem: libshellscript should either not be versioned, or the .0 version should be used
Product: [Frameworks and Libraries] kdelibs Reporter: Dominique Devriese <devriese>
Component: generalAssignee: Stephan Kulow <coolo>
Status: RESOLVED FIXED    
Severity: normal    
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Debian testing   
OS: Linux   
Latest Commit: Version Fixed In:

Description Dominique Devriese 2004-01-05 01:41:41 UTC
Version:            (using KDE KDE 3.1.4)
Installed from:    Debian testing/unstable Packages

Hi,

This is a forward of the following Debian bug report:
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=215602

This bug is about the kdelibs/interfaces/kscript system.  The problem is that in the Debian packages, versioned libraries are properly spread accross kdelibs4 and kdelibs4-dev packages.  That is the libshellscript.so.0.0.0 library and libshellscript.so.0 link are in kdelibs4, and the libshellscript.so link and libshellscript.la libtool file are in -dev.  This is all good and well of course, until upstream starts reinventing its own interpretation of library versioning, and tries to open libshellscript.so instead of libshellscript.so.0 as it should.

There are two solutions for this that I see:
1. You either open the right version of the file: the .so.0 version, that is.  However, I've looked at the Desktop file, and that system does not seem to support opening a library not ending in .so.

2. Drop the entire idea of versioning libshellscript, which is an internal library after all.  This would be my bet.

Any chance this can be done for 3.2 still ?

cheers
domi
Comment 1 Dominique Devriese 2004-01-28 16:13:54 UTC
Subject: kdelibs/interfaces/kscript/sample

CVS commit by domi: 

libshellscript is a module, not a library

CCMAIL:71869-done@bugs.kde.org


  M +2 -2      Makefile.am   1.7


--- kdelibs/interfaces/kscript/sample/Makefile.am  #1.6:1.7
@@ -1,8 +1,8 @@
 INCLUDES = -I$(top_srcdir)/kio -I$(top_srcdir)/interfaces -I$(srcdir) -I$(top_srcdir) -I$(top_srcdir)/interfaces/kscript $(all_includes)
 
-lib_LTLIBRARIES = libshellscript.la
+kde_module_LTLIBRARIES = libshellscript.la
 
 libshellscript_la_SOURCES = shellscript.cpp
-libshellscript_la_LDFLAGS = $(all_libraries) $(KDE_RPATH) -no-undefined
+libshellscript_la_LDFLAGS = $(all_libraries) -module $(KDE_PLUGIN) -no-undefined -avoid-version
 libshellscript_la_LIBADD = ../libkscript.la