Boost logo

Boost-Build :

From: Vladimir Prus (ghost_at_[hidden])
Date: 2002-09-18 09:25:52


Malte Starostik wrote:
> Hello,
>
> I just finished writing a spec file for boost RPM(s) to make
> installation on Linux feasible for users. Unfortunately I
> don't have it handy right no, but I can post it anywhere
> if there is interest. Also, I don't have 'net access at home
> atm, so I only peeked into this list's archive after getting
> creative *g*

Hi Malte,

[I cross-post this: jamboost list is concerned with building jam, and
boost-install list will be interested to hear that Malte has managed to
install boost documentation, which was considered problematic, IIRC,
and the regular list might help to decide how to call boost licence]

> "Why RPM Rationale":
[snipped, as many know that having RPM is a good thing :-) ]

> Expreienced Problems:
> [Please note that anything below isn't intended as an insult or rant]
> While the overall install is pretty straightforward, here a short
> enumeration of the problems I encountered:
> 1) bjam
> I used a modified version of the boost-jam.spec file provided in
> the tarball to build bjam. To get it to work on Mandrake, I had
> to replace the plain
> make
> with
> YACC="bison -y" make
> maybe this should generally be set for Linux as bison is more
> frequently seen than yacc on this platform.

Actually, a file called Jambase has a code which selects yacc names. We
can make it use "bison -y" on everything called "LINUX", which seems
good idea for me.

> The existing boost-jam.spec states bjam is GPLed. Is this
> correct?
> The licence comments in the bjam sources didn't look like GPL to
> me.

I picked the first thing that RPM accepted. I think I've tried something
like "free", but got errors, but I'm not sure.

> The bigger concern is the build directory created for bjam:
> bin.linuxx86 for me, and the existing boost-jam.spec had that
> hard-
> coded. What about PPC? SPARC? IMHO it's not too friendly of the
> build system to use such a naming by default, without providing
> a means to tell external tools - such as an installer - what dir
> was used. I solved it for the spec now by using `ls bin.*`, but
> that's more of a kludge...

I agree that hardcoded bin.linuxx86 is not a good thing. What better
option do you suggest -- it seems to be that `ls bin.*` is not so wrong
-- after all you're building RPM for one architecture, so it won't cause
any problems.

[snip]
> 4) Documentation
> This is the hard part since documentation is scattered
> throughout the
> whole boost distribution. I'm not referring to every library
> having ist
> own doc/ subdir, but that docu is mixed with test sources, build
> tools
> and other auxilliary files in the master toplevel dir and
> toplevel dirs
> of the libraries.
> Anyway, the install script scans for *.htm* files, installs
> them, plus
> anything they link to that is also in the boost distribution,
> except
> headers. Links to those are rewritten to the final install
> location of the
> headers.

I think you probably want to initally peek "libs/*/doc/index.html" files
and then proceed as you describe. And links rewriting is an interesting
thing... I believe it was discussed here some time ago. How do you
accompish that?

> As said before, if you are interested, I can post the spec file together
> with the
> modified bjam spec file (building the boost packages requires boost-jam
> to be installed).

Although I don't have regular access to Redhat, I'm interested to take a
look.

> Oh, one nasty question for now: what should go into the licence tag of
> the RPMs?
> I used "Freeware" for now. Is this correct or would you prefer something
> else?

I also would like to know -- to set license for bjam.

- 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