Boost logo

Boost-Build :

From: Vladimir Prus (ghost_at_[hidden])
Date: 2008-07-12 04:38:17


On Friday 11 July 2008 23:11:09 Mike Jackson wrote:
>
> On Jul 11, 2008, at 1:31 PM, Vladimir Prus wrote:
>
> > On Friday 11 July 2008 17:47:23 Mike Jackson wrote:
> >> I have downloaded the 1.35 release and I have a need to set an
> >> "install_name" or "rpath" into the dylibs that are produced. From
> >> hacking in the 1.34.x release I can do this by editing the file:
> >> $BOOST_ROOT/tools/build/v2/tools/darwin.jam and using the following:
> >>
> >> actions link.dll bind LIBRARIES
> >> {
> >> $(CONFIG_COMMAND) -headerpad_max_install_names -
> >> install_name "$
> >> (BUILD_PREFIX)/$(<[1]:D=:S=.dylib)" -dynamiclib -L"$(LINKPATH)" -o "$
> >> (<)" "$(>)" "$(LIBRARIES)" -l$(FINDLIBS-SA) -l$(FINDLIBS-ST) $
> >> (FRAMEWORK_PATH) -framework$(_)$(FRAMEWORK:D=:S=) $(OPTIONS) $
> >> (USER_OPTIONS)
> >> }
> >>
> >> I need to be able to get access to the "--prefix" argument and I need
> >> to add the following flags to the linker:
> >> -headerpad_max_install_names
> >
> > This is passed already in SVN HEAD.
> >
> >> -install_name (My install_name )
> >>
> >>
> >> So I am wondering what the best way would be to pass in some
> >> arguments to the ./configure script in order to pass those arguments
> >> down to the darwin.jam file (edited to understand the possibility of
> >> those arguments) or set something in the user-config.jam file to pass
> >> those settings into the darwin.jam file.
> >>
> >>
> >> The problem is that the "install_name" is just the name of the
> >> library itself. While this is an improvement over the 1.34 release it
> >> forces me to set DYLD_LIBRARY_PATH which I _should not_ have to do on
> >> OS X.
> >
> > Why? Does the dll-path option work -- it's supposed to pass the -
> > rpath option
> > to the compiler.
> >
> > - Volodya
> >
>
> I am still really new to boost build. I usually just do ./configure;
> make; make install and then hand fix all the files. I have been
> trying to read through the bjam documentation but nothing is really
> jumping out at me.
>
> Obvious Question: How do I get a list of options that I can use/set?
>
> I tried ./configure --help but only the basics are listed there.
>
> I tried ./configure --dll-path but that was not recognized

<joke>
You start by going to blackboard and writing "configure does not exist"
100 times.
</joke>

Look at generated Makefile -- it has a command to invoke bjam. Copy-paste
that, and add your options by hand.

You should be able to do

  bjam <.....> dll-path=<your-prefix>

See

        http://www.boost.org/boost-build2/doc/html/bbv2/advanced/builtins/features.html

for a list of things you can specify, which includes dll-path.

- Volodya


Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk