[bjam] [v1] How to copy the generated binaries from a dependent project?
Hi, I'm using some of boost's libs in my own projects. Therefore I like to build certain (sub)variants of these libraries from the according library subdirectories to avoid the (quite large) overhead when building from the toplevel boost directory with the --with-<lib> option. Take Boost.Signals as an example. When I build in boost/libs/signals/build using bjam, the subproject (not only signals) seems not to support the stage target so that the resulting binary/ies are build somewhere in boost/bin. Now I would like to create a Jamfile outside the boost source tree which does two things: 1) it builds selected (sub)variants of boost_signals, perhaps using some accordingly named NOTFILE targets, 2) it let's me copy the resulting binary/ies (i.e. libs and dlls) to a specified directory. Unfortunately I seem not to be able to figure out how to do this with bjam, especially how to get the full path of the built binary/ies. I would really like to avoid hardcoding these paths. So any help is appreciated. TIA, aa -- Andreas Ames | Programmer | Comergo GmbH | Voice: +49 69 7505 3213 | andreas . ames AT comergo . com
Ames Andreas wrote:
I'm using some of boost's libs in my own projects. Therefore I like to build certain (sub)variants of these libraries from the according library subdirectories to avoid the (quite large) overhead when building from the toplevel boost directory with the --with-<lib> option.
Take Boost.Signals as an example. When I build in boost/libs/signals/build using bjam, the subproject (not only signals) seems not to support the stage target so that the resulting binary/ies are build somewhere in boost/bin.
Now I would like to create a Jamfile outside the boost source tree which does two things:
1) it builds selected (sub)variants of boost_signals, perhaps using some accordingly named NOTFILE targets,
2) it let's me copy the resulting binary/ies (i.e. libs and dlls) to a specified directory.
Unfortunately I seem not to be able to figure out how to do this with bjam, especially how to get the full path of the built binary/ies. I would really like to avoid hardcoding these paths. So any help is appreciated.
I know your message talks about V1, but with V2 this is a simple as: install install-boost-libs-you-want : <path-to-boost>/libs/signals/build//boost_signals : <location>some-directory ; for multiple variants: install install-boost-libs-you-want : <path-to-boost>/libs/signals/build//boost_signals/<variant>release <path-to-boost>/libs/signals/build//boost_signals/<variant>debug : <location>some-directory ; - Volodya
Vladimir Prus wrote:
Ames Andreas wrote:
I'm using some of boost's libs in my own projects. Therefore I like to build certain (sub)variants of these libraries from the according library subdirectories to avoid the (quite large) overhead when building from the toplevel boost directory with the --with-<lib> option.
Take Boost.Signals as an example. When I build in boost/libs/signals/build using bjam, the subproject (not only signals) seems not to support the stage target so that the resulting binary/ies are build somewhere in boost/bin.
Hm, for 1.33 I see a "stage" target in the signals/build/Jamfile.
Now I would like to create a Jamfile outside the boost source tree which does two things:
1) it builds selected (sub)variants of boost_signals, perhaps using some accordingly named NOTFILE targets,
2) it let's me copy the resulting binary/ies (i.e. libs and dlls) to a specified directory.
Unfortunately I seem not to be able to figure out how to do this with bjam, especially how to get the full path of the built binary/ies. I would really like to avoid hardcoding these paths. So any help is appreciated.
I know your message talks about V1, but with V2 this is a simple as:
Similarly for BBv1 it's: stage my_stage : <dll>@boost/libs/signals/build/boost_signals <lib>@boost/libs/signals/build/boost_signals ; It requires that you add definition of "boost" to your Jamrules file: project boost : _path_to_boost_ ; There's a complete example of this in the Boost.Python lib: http://www.boost.org/libs/python/example/ HTH. -- -- Grafik - Don't Assume Anything -- Redshift Software, Inc. - http://redshift-software.com -- rrivera/acm.org - grafik/redshift-software.com -- 102708583/icq - grafikrobot/aim - Grafik/jabber.org
participants (3)
-
Ames Andreas
-
Rene Rivera
-
Vladimir Prus