|
Boost-Build : |
From: Joao Abecasis (jpabecasis_at_[hidden])
Date: 2005-02-09 22:17:16
Hi Volodya!
Thanks for bearing with me and taking the time to review the code!
Vladimir Prus wrote:
> Hi Joao,
>
>
>>I've committed the QuickBook toolset to CVS (as
>>tools/build/v2/tools/quickbook.jam).
>
>
> Some comments:
>
> 1.
> for local dir in $(search-dirs)
> {
> quickbook-dir += [ path.glob $(dir) : quickbook ] ;
> }
>
> can be replaced with:
>
> quickbook-dir = [ path.glob $(search-dirs) : quickbook ] ;
Hmm... Nice! I guess I didn't see that possibility.
> 2. The 'get-quickbook-command' seems to partly duplicate duplicate
> 'common.get-invocation-command'. Was there anything preventing reuse?
I initially tried common.get-invocation-command, but it wasn't returning
the full path to executable and I got this error, when tagging
'quickbook' as a dependency:
don't know how to make <l.>quickbook
Here's a simple test case:
import common ;
import quickbook ;
ECHO "common: *" [ common.get-invocation-command test : bjam ] ;
ECHO "quickbook: *" [ quickbook.get-quickbook-command bjam ] ;
and the output in my system:
common: * bjam
quickbook: * /usr/bin/bjam
By using my customized functio, the user only needs to provide the
actual invocation command, instead of the full path. If s/he still wants
to provide the full path it is also possible:
using quickbook : quickbook-invocation-command ;
using quickbook : /full/path/to/quickbook-invocation-command ;
Since other toolsets don't require a full path I though quickbook
shouldn't also.
As a bonus (really just for fun ;) ) I also made my
get-quickbook-command a tad smarter by having it automagically add the
executable extension (.exe, .bat, ...) on windows.
> 3. What's the difference between 'split-words' and regex.split?
Hmm... Wasn't aware of it regex.split, but was already thinking this
should be available somewhere... They work a bit differently but the end
result is the same. I'll remove split-words in the next incantation.
> - Volodya
Thanks for your input!
Regards,
João
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