Boost logo

Boost-Build :

From: Vladimir Prus (ghost_at_[hidden])
Date: 2005-06-27 02:29:37


Hi Peter,

> Since it is starting to include a number of wxs files (think CPP files) I
> decided to look into writing a jamfile to contain the various build rules
> to generate the MSI file. Also as the standard build system of choice for
> boost it would hopefully allow other interested parties to look at and
> extend/contribute to the installer.
>
> I have read through the online "Boost Build System V2" documentation and
> the closest thing I can find to adding new file extensions is "Chapter 22.
> Extender Manual". Is this the right part of the manual to look at?

Exactly.

> The main tools that would be used are:
>
> * Candle.exe - Which is the compiler for WIX. It takes .wxs files and
> compiles them into .wixobj.
> * Light.exe - Which is the linker for WIX. It takes all the .wixobj
> files and links them into an MSI file.
>
>
> To give you an example of how these tools are used check out these blog
> links: http://blogs.msdn.com/robmen/archive/2004/04/05/107709.aspx (example
> using 1 wxs file) and
> http://blogs.msdn.com/robmen/archive/2004/05/11/129613.aspx (example using
> 2 wxs files).
>
> Is it a trivial process to introduce the ability to support WIX within
> BJAM?

I believe so. You can start with "wxsobj" to MSI transformation. Just follow
the instructions at
http://boost.org/boost-build2/doc/html/bbv2/extender.html#bbv2.extender.intro
Alternatively, you can take a look at example/customization project,
specifically the "verbatim.jam" file, and adjust it to your needs.

The only difference from the docs is replacing

generators.register-standard

with

generators.register-composing

for the wxsobj -> MSI transformation, so that Boost.Build links all wxsobj
files together, and does not process them individually.

- Volodya

-- 
Vladimir Prus
http://vladimir_prus.blogspot.com
Boost.Build V2: http://boost.org/boost-build2
 

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