Boost logo

Boost Users :

Subject: Re: [Boost-users] [Preprocessor] Relative Addresses in BOOST_PP_FILENAME_1
From: Hossein Haeri (powerprogman_at_[hidden])
Date: 2011-01-24 13:38:03


Hi Steven,

> > Well, isn't this addressable in Boost PP?
>
> No.  Boost.PP can't change how the compiler
> searches for headers.

I obviously didn't mean this. See below please.

> > I mean, can Boost PP just not make its expansion
> > compatible with this cross-compiler issue?

Like I have also said above, I am asking for Boost PP to adapt itself with this cross-platform issue. To put it differently, why is BOOST_PP_FILENAME_1 not portable? Can Boost PP please address that?

> >> I ran into this same problem also and ended up
> just using a
> >> non-relative name of the
> form<boost\myLibrary\myHeader.hpp>  for all
> >> compilers as the easiest solution.
> >
> > But, this requires my clients to copy my stuff under
> > their local Boost directory, right?
>
> No.  That's just a specific example.  You just need to make sure that
> the header is in the compiler's include path.

Sorry I'm quite puzzled with your words above.

>From what I can read in the Section on Self Iteration under A.4.1.2 in:

http://www.boostpro.com/tmpbook/preprocessor.html

for Self Iteration, the file passed to BOOST_PP_FILENAME_1 needs to be the same file that I'm using BOOST_PP_FILENAME_1 in.

Let's say that I'm using BOOST_PP_FILENAME_1 in Header.hpp. From what I understand of the above link, I should have the following line at the appropriate part of my Header.hpp to get Self Iteration:

#define BOOST_PP_FILENAME_1 "Header.hpp"

Now, are you telling me that I can replace the above line with, say, the following?

#define BOOST_PP_FILENAME_1 <boost/proto/proto.hpp>

TIA,
--Hossein


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net