/*!
@file config.hpp
@brief 環境設定系コンフィグファイル および、環境設定ifdef軍
*/
#ifndef DKUTIL_CONFIG_HPP
#define DKUTIL_CONFIG_HPP




#ifndef DKUTIL_NOT_USE_CONFIG_HPP

///抽象クラスに使われる型をすべてPOD(C言語でも使える型)化するならこれを定義する。
#	define DKUTIL_ABSTRUCT_CLASS_POD


///throwを使いたくないときはこれを定義する。
//#	define DKUTIL_NOT_USE_THROW


///dkutil.libを使わない場合は定義する
//#	define DKUTIL_NOT_USE_SELF_LIBRARY


///assert時のファイル名の出力をフルパスにする。
#define DKUTIL_ASSERT_FILENAME_FULLPATH

///asset時にエラーを出力して強制終了する。（しかしatexitになにかしら設定されている場合はそれに依存する）
#define DKUTIL_ASSERT_EXIT_CALL

///デフォルトの内部バッファ（テンポラリバッファ）サイズ
#define DKUTIL_DEFAULT_INNER_BUFFER_SIZE (1024 * 64)

///dkutil_cを使用しないモード (なるべく使用しないで下さい。分かる人だけ使ってください。）
//#define DKUTIL_NOT_USE_DKUTIL_C
///STLPortをDynamic link libraryでしたい時はこれを定義
//#define _STLP_USE_DYNAMIC_LIB 


#endif



//自分のデバック時専用
#ifdef _DEBUG
//# define _STLP_USE_DYNAMIC_LIB
#endif
















#include <dkutil/boost/config/select_platform_config.hpp>
//#include BOOST_PLATFORM_CONFIG

#include <dkutil/boost/config/select_compiler_config.hpp>
#include BOOST_COMPILER_CONFIG

#include <dkutil/boost/config/select_stdlib_config.hpp>
#include BOOST_STDLIB_CONFIG


#include <dkutil/boost/config.hpp>
#include <dkutil/boost/version.hpp>


//compiler select

#if defined(__BORLAND__) || defined(_BORLAND_) || defined(BORLAND)
#	define DKUTIL_BORLAND_COMPILER 1
#endif

#if defined(_MSC_VER) || defined(BOOST_MSVC)
#	define DKUTIL_MSVC_COMPILER 1
#endif

#if defined(__GNUC__)
#	define DKUTIL_GCC_COMPILER 1
#endif

//stl select

#if defined(__SGI_STL_PORT) || defined(_STLPORT_VERSION)
#	define DKUTIL_STDLIB_STLPORT 1
#endif

//message output
#if BOOST_NO_DEPENDENT_NESTED_DERIVATIONS == 1
#	pragma message("テンプレートクラス内部にテンプレートクラスを宣言できないから多分エラーすると思う")
#error mukey
#endif




namespace dkutil{



}//end of dkutil namespace



#endif