[Boost-bugs] [Boost C++ Libraries] #4244: Different versioning, soname and library names

Subject: [Boost-bugs] [Boost C++ Libraries] #4244: Different versioning, soname and library names
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2010-05-20 12:31:30


#4244: Different versioning, soname and library names
-----------------------------------------+----------------------------------
 Reporter: christina.larocca@… | Owner:
     Type: Support Requests | Status: new
Milestone: Boost 1.43.0 | Component: Building Boost
  Version: Boost 1.44.0 | Severity: Problem
 Keywords: |
-----------------------------------------+----------------------------------
 Hello developpers,

 We need to adapt boost to our compnay needs and for this purpouse it's
 mandatory for us to change the lib name, it's way of version and the
 soname from the libs. When you compile boost with multithread you get a
 lib name like:

 libboost_math_c99-gcc34-mt-1_39.so.1.39.0

 The format we need for our libs would be like:

 libboost_math_c99.so.1.39.0.0

 This is due to a versioning system I can't change. i know this is not
 exactly a bug but if you have been in the same problem than me maybe you
 can give me a hint.

 So far I've modified Jamroot by changing local result variable twice

             local result = [ common.format-name
                 <base>
                 : $(name) : $(type) : $(property-set) ] ;

 And the version tag too:

 constant BOOST_VERSION : 1.39.0.0 ;

 But at the end, when I execute ./bjam I reach an error like:

 warning: Building Boost.Regex with the optional Unicode/ICU support
 disabled.
 note: Please refer to the Boost.Regex documentation for more information
 note: this is a strictly optional feature.
 /path/compilations/Boost/source2/boost_1_39_0/tools/build/v2/build
 /virtual-target.jam:1056: in virtual-target.register-actual-name from
 module virtual-target
 error: Duplicate name of actual target: <pstage/lib>libexact.so
 error: previous virtual target { symlink%symlink.ln-libexact.so.SHARED_LIB
 { common%common.copy-libboost_math_c99.so.1.39.0.8.SHARED_LIB {
 gcc%gcc.link.dll-libboost_math_c99.so.1.39.0.8.SHARED_LIB {
 gcc%gcc.compile.c++-trunc.o.OBJ { ../src/tr1/trunc.cpp.CPP } } {
 gcc%gcc.compile.c++-acosh.o.OBJ { ../src/tr1/acosh.cpp.CPP } } {
 gcc%gcc.compile.c++-asinh.o.OBJ { ../src/tr1/asinh.cpp.CPP } } {
 gcc%gcc.compile.c++-atanh.o.OBJ { ../src/tr1/atanh.cpp.CPP } } {
 gcc%gcc.compile.c++-cbrt.o.OBJ { ../src/tr1/cbrt.cpp.CPP } } {
 gcc%gcc.compile.c++-copysign.o.OBJ { ../src/tr1/copysign.cpp.CPP } } {
 gcc%gcc.compile.c++-erfc.o.OBJ { ../src/tr1/erfc.cpp.CPP } } {
 gcc%gcc.compile.c++-erf.o.OBJ { ../src/tr1/erf.cpp.CPP } } {
 gcc%gcc.compile.c++-expm1.o.OBJ { ../src/tr1/expm1.cpp.CPP } } {
 gcc%gcc.compile.c++-fmax.o.OBJ { ../src/tr1/fmax.cpp.CPP } } {
 gcc%gcc.compile.c++-fmin.o.OBJ { ../src/tr1/fmin.cpp.CPP } } {
 gcc%gcc.compile.c++-fpclassify.o.OBJ { ../src/tr1/fpclassify.cpp.CPP } } {
 gcc%gcc.compile.c++-hypot.o.OBJ { ../src/tr1/hypot.cpp.CPP } } {
 gcc%gcc.compile.c++-lgamma.o.OBJ { ../src/tr1/lgamma.cpp.CPP } } {
 gcc%gcc.compile.c++-llround.o.OBJ { ../src/tr1/llround.cpp.CPP } } {
 gcc%gcc.compile.c++-log1p.o.OBJ { ../src/tr1/log1p.cpp.CPP } } {
 gcc%gcc.compile.c++-lround.o.OBJ { ../src/tr1/lround.cpp.CPP } } {
 gcc%gcc.compile.c++-nextafter.o.OBJ { ../src/tr1/nextafter.cpp.CPP } } {
 gcc%gcc.compile.c++-nexttoward.o.OBJ { ../src/tr1/nexttoward.cpp.CPP } } {
 gcc%gcc.compile.c++-round.o.OBJ { ../src/tr1/round.cpp.CPP } } {
 gcc%gcc.compile.c++-tgamma.o.OBJ { ../src/tr1/tgamma.cpp.CPP } } } } }



 Could you give a hint on how to modify the soname, version and lib name?

 Thanks in advance.
 Christina.

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/4244>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:03 UTC