You're not bound to these particular variables. CMake scripts can use
environment varables and command line switches, which covers different
configurations quite well. Just define a couple of your configuration
variables for different targets and be done with it. You can even create your
own CMake module that handles all the configuration specifics you have.
> > The documentation of a find module is whatever is written at the beginning
> > of the file in question.
>
> The HELP documentation is whatever is written when you use "cmake
> --help-module <module-name>" and once again that variable is not
> documented in the "cmake --help-module FindBoost" command.
>
> Not everybody like to have to dive in the source files of their tools to
> understand them, or have time to do so.
I think CMake documentation issues are not relevant to Boost per se.
There is no "conventional" way on Windows, except for System32 and SysWOW64
folders for runtime libraries (which, I believe, is not your problem at this
point, and should not be used directly anyway). Basically, you have to choose
directory layout for every project you build. Whether or not you choose a
particular layout as your convention is up to you.
> On Wed, Apr 17, 2013 at 12:50 PM, Mathias Gaunard <
> mathias...@ens-lyon.org> wrote:
[snipped to the essence]
>> Of course you cannot put both 32 or 64 bit in there without making subfolders.
>>
> This is the problem exactly that I'm pointing. I can obviously set the library dir using BOOST_LIBRARYDIR
> but I then have to do it each time I need to work on CMake files of the projects and need to delete cache and configure from scratch.
>
>> TBB puts its libs in intel64 or ia32 sub directories which isn't all that common of a naming scheme in my experience but is certainly usable.
>
> CMake's FindTBB knows that convention which helps it find the right binaries depending on the configuration/architecture choosen which is what I point is lacking with Boost, because of the lack of convention.
>
> I'm not saying boost should use one convention in particular, just that it should provide a convention so that I or someone can patch the FindBoost module.
I see no reason against choosing a subdirectory structure in which to place 32 and 64 bit libraries. However, if Program Files is the install location, Windows already distinguishes between them: Program Files and Program Files (x86). IOW, if that's the install location, the subdirectories aren't needed (though one can still be used in each location).
I vote for simple, straightforward names, like 32 and 64, for the subdirectories, BTW.
Having said that much, naming the directories with much of the platform and architecture information, while simplifying the library names, would be nicer IME.
___
Rob
(Sent from my portable computation engine)