|
List Info
Thread: State of PCH/msvc
|
|
| State of PCH/msvc |

|
2006-04-07 12:08:45 |
Hi!
Can somebody update me on the state of PCH/msvc? Are there
any docs how to use
them? Any known issues?
Basically, I'm trying to find out if this feature should be
included in
release notes for M11, or left for M12 (to appear together
with PCH/gcc)
TIA,
Volodya
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build
a>
|
|
| State of PCH/msvc |

|
2006-04-26 09:06:08 |
On Friday 07 April 2006 16:08, Vladimir Prus wrote:
Any comments on below?
> Hi!
> Can somebody update me on the state of PCH/msvc? Are
there any docs how to
> use them? Any known issues?
>
> Basically, I'm trying to find out if this feature
should be included in
> release notes for M11, or left for M12 (to appear
together with PCH/gcc)
>
> TIA,
> Volodya
--
Vladimir Prus
http://vladimir_pru
s.blogspot.com
Boost.Build V2: http://boost.org/boost-
build2
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build
a>
|
|
| State of PCH/msvc |

|
2006-04-26 09:52:06 |
> Any comments on below?
>
> > Hi!
> > Can somebody update me on the state of PCH/msvc?
Are there any docs how to
> > use them? Any known issues?
> >
> > Basically, I'm trying to find out if this feature
should be included in
> > release notes for M11, or left for M12 (to appear
together with PCH/gcc)
> >
> > TIA,
> > Volodya
The biggest issue that I have with PCHs is that the
requirements of
the main target are not propagated to the PCH. For example:
import cast ;
pch mypch : [ cast _ pcheader : pch.hpp ] pch.cpp ;
exe hello : mypch main.cpp
: <define>ABC
;
main.cpp will be compiled with ABC defined, while pch.cpp
will not.
This gets more problematic if the exe uses other libraries
which have
usage requirements, since these are not propagated either.
--
Bojan Resnik
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build
a>
|
|
| State of PCH/msvc |

|
2006-04-26 10:02:20 |
> The biggest issue that I have with PCHs is that the
requirements of
> the main target are not propagated to the PCH. For
example:
>
> import cast ;
> pch mypch : [ cast _ pcheader : pch.hpp ] pch.cpp ;
> exe hello : mypch main.cpp
> : <define>ABC
> ;
>
> main.cpp will be compiled with ABC defined, while
pch.cpp will not.
> This gets more problematic if the exe uses other
libraries which have
> usage requirements, since these are not propagated
either.
I forgot to mention one more thing - static libraries
compiled with
precompiled headers don't work correctly under MSVC.
compile.pch
action needs /Yl flag added in order for this to work
correctly. The
identifier following /Yl can be anything, and I am using
/Yl__bjam_pch_symbol
in my modified compile.pch action. I believe I sent a patch
for this a
while ago, but it seems that SourceForge CVS is not working
at the
moment, so I can't diff against it at the moment.
--
Bojan Resnik
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build
a>
|
|
| State of PCH/msvc |

|
2006-04-26 11:57:42 |
Vladimir Prus wrote:
> Any comments on below?
>> Can somebody update me on the state of PCH/msvc?
Are there any docs how to
>> use them? Any known issues?
>>
>> Basically, I'm trying to find out if this feature
should be included in
>> release notes for M11, or left for M12 (to appear
together with PCH/gcc)
No.
PCH is nowhere close to "release" state. There
are numerous issues with
PCH on MSVC:
1. Property propagation (I've raised this issue before).
2. Debug information: PCH is does not work well with
C7-style debug info
and database-style debug storage is currently broken
("# not used yet").
3. Problems with PCH and static libraries.
4. It would be nice if Boost libraries themselves used
precompiled
headers (at least for testing purposes).
5. PCH on GCC is broken (the last time I checked).
6. Some other subtle issues I can't remember.
--
With respect,
Alex Besogonov (cyberax elewise.com)
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build
a>
|
|
| State of PCH/msvc |

|
2006-04-26 11:09:50 |
On Wednesday 26 April 2006 13:52, Bojan Resnik wrote:
> The biggest issue that I have with PCHs is that the
requirements of
> the main target are not propagated to the PCH. For
example:
>
> import cast ;
> pch mypch : [ cast _ pcheader : pch.hpp ] pch.cpp ;
> exe hello : mypch main.cpp
>
> : <define>ABC
>
> ;
>
> main.cpp will be compiled with ABC defined, while
pch.cpp will not.
> This gets more problematic if the exe uses other
libraries which have
> usage requirements, since these are not propagated
either.
Hi Bojan,
I think it's possible to allow including PCH file right
into exe:
exe hello : [ cast _ pchheader : pch.hpp ] main.cpp :
<define>ABC ;
and in that case PCH will be created with right properties.
But this raises
question about reusing of the same PCH by different targets:
pch mypch : [ cast _ pcheader : pch.hpp ] pch.cpp ;
exe a : a.cpp mypch : <define>ABC ;
exe b : b.cpp mypch : <define>ABC ;
In which case we'd need either to propagate defines, or
manually add define to
PCH. And what should happen in this case:
pch mypch : [ cast _ pcheader : pch.hpp ] pch.cpp ;
exe a : a.cpp mypch ;
exe b : b.cpp mypch : <define>ABC ;
Should it be an error?
- Volodya
--
Vladimir Prus
http://vladimir_pru
s.blogspot.com
Boost.Build V2: http://boost.org/boost-
build2
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build
a>
|
|
[1-6]
|
|
|
about | contact Other archives ( Real Estate discussion Medical topics )
|