On Mon, 27 Jan 2003 12:42:14 -0800, "Paul Mensonides" <[EMAIL PROTECTED]> wrote:

> #define BOOST_PP_HEADERS \
>     (...), /* i.e. "no path" */ \
>     (iostream)(fstream)(vector)(string) \
>     (map)(cstdlib)(sstream) \
>     /**/
> 
> ??=include BOOST_PP_ANGLED_INCLUDE()
> 
> ....effectively does this:
> 
> #include <iostream>
> #include <fstream>
> #include <vector>
> #include <string>
> #include <map>
> #include <cstdlib>
> #include <sstream>

Looks good to me.  
 
> > The other problem that I have when using this is that it removes
> > dependencies for the build process.  To solve this, the files can
> > be preprocess.  Is there a standard toolset/method for preprocessing
> > header files ?
> 
> I'm not sure what you mean here.

I would like to take a file that uses BOOST_PP_HEADERS, say

> #define BOOST_PP_HEADERS \
>     (...), /* i.e. "no path" */ \
>     (iostream)(fstream)(vector)(string) \
>     (map)(cstdlib)(sstream) \
>     /**/
> 
> ??=include BOOST_PP_ANGLED_INCLUDE()

and preprocess it to generate the file that says

> #include <iostream>
> #include <fstream>
> #include <vector>
> #include <string>
> #include <map>
> #include <cstdlib>
> #include <sstream>

> You can simply make a source file that includes all the files that you want
> to pre-preprocess (if that is what your getting at), run it through your
> compiler's preprocessor, and then include the result file.

I don't think bjam supports just running the preprocessor, but as you say
the poblem is more tricky; I would like to stop preprocessing at a certain
include depth.
 
> ....but this is outside the scope of the pp-lib can automate because it
> requires a separate build step to produce the preprocessor equivalent of a
> "pre-compiled header."

I didn't mean to imply it was within scope.  I know MPL does preprocessing
using python, but I don't know how reuseable that code is, so I was
just hunting for tips, suggestions and pointers.

Thanks for your help. Look forward to seeing BOOST_PP_INCLUDE when you have time.

Hugo



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

Reply via email to