[Scons-users] SCons 2.3.6: SharedLibrary + SHLIBVERSION messes up with dependencies

Paweł Tomulik ptomulik at meil.pw.edu.pl
Tue Aug 11 04:40:16 EDT 2015


Debian testing,
default python is 2.7.10.

Any other details you need?

W dniu 11.08.2015 o 03:47, William Blevins pisze:
> You still haven't provided much info about your configuration.  What
> platform are you on, etc...
> 
> On Mon, Aug 10, 2015 at 10:31 AM, Paweł Tomulik <ptomulik at meil.pw.edu.pl
> <mailto:ptomulik at meil.pw.edu.pl>> wrote:
> 
>     W dniu 10.08.2015 o 11:55, Paweł Tomulik pisze:
>     > After recent upgrade of SCons my projects can't be built anymore.
>     >
>     > I use SharedLibrary builder with SHLIBVERSION argument, but now
>     (2.3.6)
>     > the softlinks generated by SharedLibrary are not seen as dependency.
>     >
>     > I attach a minimal example, that replicates the bug(?). The
>     mini-project
>     > builds one shared library (libfoo.so) and one program (main) which
>     uses
>     > the library. The Sconstruct is as simple as:
>     >
>     > env = Environment()
>     > env.AppendUnique(CPPPATH = ['.'], LIBPATH = ['.'])
>     > env.Program('main.cpp', LIBS = ['foo'])
>     > env.SharedLibrary('foo', 'foo.cpp', SHLIBVERSION = '0.1.2')
>     >
>     >
>     > The dependency tree for this mini-project is the following:
>     >
>     > +-.
>     >   +-SConstruct
>     >   +-foo.cpp
>     >   +-foo.hpp
>     >   +-foo.os
>     >   | +-foo.cpp
>     >   | +-/usr/bin/g++
>     >   +-libfoo.so
>     >   +-libfoo.so.0
>     >   | +-libfoo.so.0.1.2
>     >   |   +-foo.os
>     >   |     +-foo.cpp
>     >   |     +-/usr/bin/g++
>     >   +-libfoo.so.0.1
>     >   | +-libfoo.so.0.1.2
>     >   |   +-foo.os
>     >   |     +-foo.cpp
>     >   |     +-/usr/bin/g++
>     >   +-libfoo.so.0.1.2
>     >   | +-foo.os
>     >   |   +-foo.cpp
>     >   |   +-/usr/bin/g++
>     >   +-main
>     >   | +-main.o
>     >   | | +-main.cpp
>     >   | | +-foo.hpp
>     >   | | +-/usr/bin/g++
>     >   | +-/usr/bin/g++
>     >   +-main.cpp
>     >   +-main.o
>     >     +-main.cpp
>     >     +-foo.hpp
>     >     +-/usr/bin/g++
>     >
>     > Without SHLIBVERSION the poject builds without problem, and the
>     > dependency tree is:
>     >
>     > +-.
>     >   +-SConstruct
>     >   +-foo.cpp
>     >   +-foo.hpp
>     >   +-foo.os
>     >   | +-foo.cpp
>     >   | +-/usr/bin/g++
>     >   +-libfoo.so
>     >   | +-foo.os
>     >   |   +-foo.cpp
>     >   |   +-/usr/bin/g++
>     >   +-main
>     >   | +-main.o
>     >   | | +-main.cpp
>     >   | | +-foo.hpp
>     >   | | +-/usr/bin/g++
>     >   | +-/usr/bin/g++
>     >   | +-libfoo.so
>     >   |   +-foo.os
>     >   |     +-foo.cpp
>     >   |     +-/usr/bin/g++
>     >   +-main.cpp
>     >   +-main.o
>     >     +-main.cpp
>     >     +-foo.hpp
>     >     +-/usr/bin/g++
>     >
>     >
>     > Is this a bug, or am I doing a mistake?
>     >
>     >
>     >
>     > _______________________________________________
>     > Scons-users mailing list
>     > Scons-users at scons.org <mailto:Scons-users at scons.org>
>     > https://pairlist4.pair.net/mailman/listinfo/scons-users
>     >
> 
>     Dependency tree generated by 2.3.1 with SHLIBVERSION:
> 
> 
> If this worked on 2.3.4, then why did you need to go back to 2.3.1?
>  
> 
> 
>     +-.
>       +-SConstruct
>       +-foo.cpp
>       +-foo.hpp
>       +-foo.os
>       | +-foo.cpp
>       | +-/usr/bin/g++
>       +-libfoo.so.0.1.2
>       | +-foo.os
>       |   +-foo.cpp
>       |   +-/usr/bin/g++
>       +-libfoo.so.0
>       | +-libfoo.so.0.1.2
>       |   +-foo.os
>       |     +-foo.cpp
>       |     +-/usr/bin/g++
>       +-libfoo.so.0.1
>       | +-libfoo.so.0.1.2
>       |   +-foo.os
>       |     +-foo.cpp
>       |     +-/usr/bin/g++
>       +-libfoo.so.0.1.2
>       | +-libfoo.so.0.1.2
>       |   +-foo.os
>       |     +-foo.cpp
>       |     +-/usr/bin/g++
>       +-main
>       | +-main.o
>       | | +-main.cpp
>       | | +-foo.hpp
>       | | +-/usr/bin/g++
>       | +-/usr/bin/g++
>       | +-libfoo.so.0.1.2
>       |   +-foo.os
>       |     +-foo.cpp
>       |     +-/usr/bin/g++
>       +-main.cpp
>       +-main.o
>         +-main.cpp
>         +-foo.hpp
>         +-/usr/bin/g++
> 
> 
>     --
>     Pawel Tomulik
>     _______________________________________________
>     Scons-users mailing list
>     Scons-users at scons.org <mailto:Scons-users at scons.org>
>     https://pairlist4.pair.net/mailman/listinfo/scons-users
> 
> 
> 
> 
> _______________________________________________
> Scons-users mailing list
> Scons-users at scons.org
> https://pairlist4.pair.net/mailman/listinfo/scons-users
> 


-- 
Paweł Tomulik, tel. (22) 234 7925
Instytut Techniki Lotniczej i Mechaniki Stosowanej
Politechnika Warszawska


More information about the Scons-users mailing list