|
Boost-Build : |
From: Vladimir Prus (ghost_at_[hidden])
Date: 2003-06-03 09:30:19
I've being thinking/implementing better STLport support, and came to some
conclusions, that I might need to address now, and which probably must be
addressed in targets hierarchy redesign. The idea for STLport was simple:
the <stdlib>stlport is a composite feature, which expands to
<library>@/stlport/stlport.
When the target @/stlport/stlport is generated, necessary searched-lib-target
is created, which has appropriate <includes> and <defines> in usage
requirements.
This all is good, but: when STLPort is used with native iostreams, there's no
library to be linked to. However, one still needs proper <includes> and
<defines> for all main target. The only solution I see is in this case the
@/stlport/stlport main target should generate "special" virtual target. It
will carry usage requirements, but is not consumed -- i.e. is ignored when
appearing in sources.
For example:
exe hello : hello.cpp @/stlport/stlport ;
exe hello : hello.cpp : <library>@/stlport/stlport ;
In both cases, everything must work if @/stlport/stlport produces
1. A target for a searched-library
2. A target which only conveys usage-requirements, but is not intended to be
consumed.
3. No targets at all
Opinions?
- 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