[cfe-dev] Distinguishing between clang Window versions
Edward Diener
eldlistmailingz at tropicsoft.com
Tue Jul 8 12:18:14 PDT 2014
On 7/8/2014 11:13 AM, Nico Weber wrote:
> On Tue, Jul 8, 2014 at 6:54 AM, Edward Diener
> <eldlistmailingz at tropicsoft.com
> <mailto:eldlistmailingz at tropicsoft.com>> wrote:
>
> Since the two versions for clang on Windows, one using VC++ RTL and
> emulating VC++ to some small extent and the other using mingw rtl,
> are radically different, is there any easy way to distinguish
> between them at pre-execution time.
>
> In Boost Build we currently have a single toolset named 'clang' for
> the clang compiler. On Linux it uses a clang-linux.jam file, on the
> Mac it uses a clang-darwin.jam file, and I am trying to establish
> .jam files for using clang on Windows. Essentially I can use the
> clang-linux.jam file with a slight modification if the clang version
> uses mingw, but I need to use a clang-win.jam file if the clang
> version uses VC++. So somewhere early in the Boost Build processing
> I have to determine which 'clang.exe' is being used on Windows in
> order to invoke the proper Boost Build jam file for it.
>
>
> It's not really to different clang binaries as far as I know, just the
> same binary with a different default triple. So you could pass an
> explicit -target parameter to force one compiler behavior over the other
> too. (-target i386-pc-win32 for VC mode, -target i386-pc-mingw32 for gcc
> mode)
This is a possibility but imposes using the -target parameter on the
end-user. I like to make things as end-user friendly as possible but
your suggestion is a good one. Thanks !
More information about the cfe-dev
mailing list