Subject: Re: [boost] [GSoC] SIMD proposal
From: Mathias Gaunard (mathias.gaunard_at_[hidden])
Date: 2011-03-24 05:49:09


On 24/03/2011 01:39, Stefan Seefeld wrote:

> I'd like to suggest using a build-system-agnostic tool to report such
> build options, which can be picked up by any build system.
> I'm specifically thinking of pkg-config, which can report build flags
> based on .pc files that can be provided with binary packages. That
> system is widely used with most (if not all) Linux distributions, and it
> supports many more platforms.

That's just one extra module to find out those options.
Not everyone use pkg-config, even on Linux.

So we agree that boost should also ship extra files on top of headers
and library binaries?

>> If bjam can 1) compile temporary programs, run them and retrieve their
>> output and 2) test whether the compiler supports some flags -- then
>> we're fine.
>
> While that sounds fine, please clearly separate the benchmark process
> that you use to obtain machine characteristics from the actual build
> process, such that the characteristics can be saved, distributed, and
> reused, to have a deterministic build process.
> (ATLAS calls these characteristics "architectural defaults".
> http://math-atlas.sourceforge.net/faq.html#ArchDef)

This is done at configuration time (e.g. the equivalent of ./configure
with the autotools chain), not build time (e.g. make).
But bjam does not distinguish the two AFAIK.