blob: 646e73bb9e2e7cc66046acf32dcacf0f1088a645 [file] [log] [blame]
Jeff Thompsona28eed82013-08-22 16:21:10 -07001
Jeff Thompson3d613fd2013-10-15 15:39:04 -07002#ifndef NDNBOOST_MPL_AUX_CONFIG_COMPILER_HPP_INCLUDED
3#define NDNBOOST_MPL_AUX_CONFIG_COMPILER_HPP_INCLUDED
Jeff Thompsona28eed82013-08-22 16:21:10 -07004
5// Copyright Aleksey Gurtovoy 2001-2008
6//
7// Distributed under the Boost Software License, Version 1.0.
8// (See accompanying file LICENSE_1_0.txt or copy at
9// http://www.boost.org/LICENSE_1_0.txt)
10//
11// See http://www.boost.org/libs/mpl for documentation.
12
13// $Id: compiler.hpp 53189 2009-05-22 20:07:55Z hkaiser $
14// $Date: 2009-05-22 13:07:55 -0700 (Fri, 22 May 2009) $
15// $Revision: 53189 $
16
Jeff Thompson3d613fd2013-10-15 15:39:04 -070017#if !defined(NDNBOOST_MPL_CFG_COMPILER_DIR)
Jeff Thompsona28eed82013-08-22 16:21:10 -070018
19# include <ndnboost/mpl/aux_/config/dtp.hpp>
20# include <ndnboost/mpl/aux_/config/ttp.hpp>
21# include <ndnboost/mpl/aux_/config/ctps.hpp>
22# include <ndnboost/mpl/aux_/config/msvc.hpp>
23# include <ndnboost/mpl/aux_/config/gcc.hpp>
24# include <ndnboost/mpl/aux_/config/workaround.hpp>
25
Jeff Thompson3d613fd2013-10-15 15:39:04 -070026# if NDNBOOST_WORKAROUND(NDNBOOST_MSVC, < 1300)
27# define NDNBOOST_MPL_CFG_COMPILER_DIR msvc60
Jeff Thompsona28eed82013-08-22 16:21:10 -070028
Jeff Thompson3d613fd2013-10-15 15:39:04 -070029# elif NDNBOOST_WORKAROUND(NDNBOOST_MSVC, == 1300)
30# define NDNBOOST_MPL_CFG_COMPILER_DIR msvc70
Jeff Thompsona28eed82013-08-22 16:21:10 -070031
Jeff Thompson3d613fd2013-10-15 15:39:04 -070032# elif NDNBOOST_WORKAROUND(NDNBOOST_MPL_CFG_GCC, NDNBOOST_TESTED_AT(0x0304))
33# define NDNBOOST_MPL_CFG_COMPILER_DIR gcc
Jeff Thompsona28eed82013-08-22 16:21:10 -070034
Jeff Thompson3d613fd2013-10-15 15:39:04 -070035# elif NDNBOOST_WORKAROUND(__BORLANDC__, NDNBOOST_TESTED_AT(0x610))
36# if !defined(NDNBOOST_MPL_CFG_NO_DEFAULT_PARAMETERS_IN_NESTED_TEMPLATES)
37# define NDNBOOST_MPL_CFG_COMPILER_DIR bcc551
38# elif NDNBOOST_WORKAROUND(__BORLANDC__, >= 0x590)
39# define NDNBOOST_MPL_CFG_COMPILER_DIR bcc
Jeff Thompsona28eed82013-08-22 16:21:10 -070040# else
Jeff Thompson3d613fd2013-10-15 15:39:04 -070041# define NDNBOOST_MPL_CFG_COMPILER_DIR bcc_pre590
Jeff Thompsona28eed82013-08-22 16:21:10 -070042# endif
43
Jeff Thompson3d613fd2013-10-15 15:39:04 -070044# elif NDNBOOST_WORKAROUND(__DMC__, NDNBOOST_TESTED_AT(0x840))
45# define NDNBOOST_MPL_CFG_COMPILER_DIR dmc
Jeff Thompsona28eed82013-08-22 16:21:10 -070046
47# elif defined(__MWERKS__)
Jeff Thompson3d613fd2013-10-15 15:39:04 -070048# if defined(NDNBOOST_MPL_CFG_BROKEN_DEFAULT_PARAMETERS_IN_NESTED_TEMPLATES)
49# define NDNBOOST_MPL_CFG_COMPILER_DIR mwcw
Jeff Thompsona28eed82013-08-22 16:21:10 -070050# else
Jeff Thompson3d613fd2013-10-15 15:39:04 -070051# define NDNBOOST_MPL_CFG_COMPILER_DIR plain
Jeff Thompsona28eed82013-08-22 16:21:10 -070052# endif
53
Jeff Thompson3d613fd2013-10-15 15:39:04 -070054# elif defined(NDNBOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION)
55# define NDNBOOST_MPL_CFG_COMPILER_DIR no_ctps
Jeff Thompsona28eed82013-08-22 16:21:10 -070056
Jeff Thompson3d613fd2013-10-15 15:39:04 -070057# elif defined(NDNBOOST_MPL_CFG_NO_TEMPLATE_TEMPLATE_PARAMETERS)
58# define NDNBOOST_MPL_CFG_COMPILER_DIR no_ttp
Jeff Thompsona28eed82013-08-22 16:21:10 -070059
60# else
Jeff Thompson3d613fd2013-10-15 15:39:04 -070061# define NDNBOOST_MPL_CFG_COMPILER_DIR plain
Jeff Thompsona28eed82013-08-22 16:21:10 -070062# endif
63
Jeff Thompson3d613fd2013-10-15 15:39:04 -070064#endif // NDNBOOST_MPL_CFG_COMPILER_DIR
Jeff Thompsona28eed82013-08-22 16:21:10 -070065
Jeff Thompson3d613fd2013-10-15 15:39:04 -070066#endif // NDNBOOST_MPL_AUX_CONFIG_COMPILER_HPP_INCLUDED