From: Vladimir Prus (ghost_at_[hidden])
Date: 2003-10-30 02:38:50
> With MSVC, <user-interface> specifies what value is passed to the
> linker for the /subsystem flag. I'm pretty sure that this only
> affects executables. An executable that is built for the console
> and an executable built as a gui can be linked with the same binary
> library files (static and shared). As soon as I specify an exe as
> being gui, however, bjam wants to rebuild a seperate copy of
> everything that this exe depends on for "user-interface-gui" even
> though it's not necessary.
> What would be the correct way to make it so that <user-interface>
> only affects executables?
The most direct way would be change one line in builtin.jam from
feature user-interface : console gui wince native auto : propagated ;
feature user-interface : console gui wince native auto ;
This way, if you specify "<user-interface>gui" on a certain target, all
dependencies will still be built as usual. It <user-interface> really has no
effect on libraries, we can make the change in CVS -- after you try it out.
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