Boost logo

Boost-Build :

Subject: Re: [Boost-build] Problem with Intel compiler and pch support
From: Vladimir Prus (ghost_at_[hidden])
Date: 2008-11-06 16:06:01


On Thursday 06 November 2008 23:59:37 jim_at_[hidden] wrote:
> > On Sunday 26 October 2008 13:19:46 John Maddock wrote: Vladimir
> > Prus wrote: > >>> * Intel changes the name of the pch file to have a
> > ".pchi" file > >>> extension so dependency checking is broken and
> > the pch gets > >>> regenerated every time bjam is run, which in turn
> > causes the whole > >>> project to rebuild :-( > >> > >> Does adding:
> > > >> > >> type.set-generated-target-suffix PCH : <toolset>intel > >>
> > <target-os>windows : pchi ; > >> > >> to intel-win.jam fixes this
> > problem? > > Almost.... unfortunately it appears that regardless of
> > whatever name you > specify for the pch file Intel appends an "i" to
> > the name, so now it > generates a file with the .pchii extension and
> > so dependency checking still > fails :-( How nice. I presume, next
> > version of compiler is going to just generate a random name :-/ > >
> > >>> * Intel doesn't support the -Yl option, so you get a warning >
> > >>> emitted when building the pch > >> > >> Can you copy-paste the
> > compile-c-c++-pch and compile-c-c++-pch-s > >> actions from msvc.jam
> > to intel-win.jam and remove the -Yl option? > > Hmm, I put those at
> > the end of the intel-win.jam file, and they appear to > not get
> > called as I'm still seeing the warning? > > Ah, adding the
> > get-rspline and compile.c++.pch rules as well does cause the >
> > overrided actions to get called, but with apparently invalid
> > arguments > because the pch file no longer compiles: the generated
> > .cpp file contains > just > #include > > with no file name
> > specified. > > Any ideas? Please try the attached. The reason for
> > the empty file is that those copy-pasted rules also use a local
> > variable in msvc.jam -- .escaped-double-quote -- which was not copy
> > pasted. Yes, I know that this kind of 'inheriting' toolset
> > definitions is a mess. We will do better in Python. - Volodya
>
> You can use /Qpchi- to stop the Intel compiler from adding the "i" to
> the end of the .pch files.

Oh, good. John, do you think we should make intel-win use this, and
remove the magic it has now?

- Volodya

> _______________________________________________
> Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build
>
>


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