Steve Langasek wrote:

>Package: libhoard
>Version: 2.1.0-3
>Severity: serious
>Justification: Policy 8.4
>
>The libhoard package contains a libhoard.so file which is *not* a symlink to
>libhoard.so.*.  This violates all the rules governing shared library
>packaging; it makes it impossible to properly support installation of
>multiple concurrent versions of the shared library, and it means that
>installing future versions of -dev packages will force removal of any
>packages dynamically linked with this libhoard.so.  These
>forward-compatibility issues make libhoard 2.1.0-3 unsuitable for inclusion
>in a stable release.
>
>Either libhoard must have a properly versioned soname and be split into -dev
>and runtime packages, or the shared library must be dropped completely from
>the package.
>  
>

Err, this is on purpose. libhoard is suppose to be a malloc/free drop-in
replacement. If you try to get the soname,

objdump -x libhoard.so | grep SONAME

there is none. The reason is that there are only two functions that
libhoard really exports - free and malloc. Those will not change. I
don't think ABI for C linking will change either :)

Also, you are not suppose to link with libhoard.so. You are suppose to
preload it for the  applications you want to use the Hoard memory
allocator. From the readme,

    In UNIX, you can use the LD_PRELOAD variable to use Hoard instead of
    the system allocator for any program not linked with the -static
    option (that's most programs).

    *** Solaris (with the Sun Workshop compilers) ***

      setenv LD_PRELOAD "/path/to/libhoard.so /usr/lib/libthread.so
/usr/lib/librt.so /usr/lib/libCrun.so.1"


So, in a nutshell, this is not a typical shared library. It is a library
that allows you to test performance of your multi-thread program
(usually running on >2 processors) with the standard malloc or from
Hoard just by setting LD_PRELOAD. You generally will not do,

gcc my_program -lhoard

- Adam



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to