1 // (C) Copyright John Maddock 2001 - 2003.
2 // (C) Copyright Bill Kempf 2001.
3 // (C) Copyright Aleksey Gurtovoy 2003.
4 // (C) Copyright Rene Rivera 2005.
5 // Use, modification and distribution are subject to the
6 // Boost Software License, Version 1.0. (See accompanying file
7 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
9 // See http://www.boost.org for most recent version.
11 // Win32 specific config options:
13 #define BOOST_PLATFORM "Win32"
15 // Get the information about the MinGW runtime, i.e. __MINGW32_*VERSION.
16 #if defined(__MINGW32__)
20 #if defined(__GNUC__) && !defined(BOOST_NO_SWPRINTF)
21 # define BOOST_NO_SWPRINTF
24 // Default defines for BOOST_SYMBOL_EXPORT and BOOST_SYMBOL_IMPORT
25 // If a compiler doesn't support __declspec(dllexport)/__declspec(dllimport),
26 // its boost/config/compiler/ file must define BOOST_SYMBOL_EXPORT and
27 // BOOST_SYMBOL_IMPORT
28 #ifndef BOOST_SYMBOL_EXPORT
29 # define BOOST_HAS_DECLSPEC
30 # define BOOST_SYMBOL_EXPORT __declspec(dllexport)
31 # define BOOST_SYMBOL_IMPORT __declspec(dllimport)
34 #if defined(__MINGW32__) && ((__MINGW32_MAJOR_VERSION > 2) || ((__MINGW32_MAJOR_VERSION == 2) && (__MINGW32_MINOR_VERSION >= 0)))
35 # define BOOST_HAS_STDINT_H
36 # ifndef __STDC_LIMIT_MACROS
37 # define __STDC_LIMIT_MACROS
39 # define BOOST_HAS_DIRENT_H
40 # define BOOST_HAS_UNISTD_H
43 #if defined(__MINGW32__) && (__GNUC__ >= 4)
44 // Mingw has these functions but there are persistent problems
45 // with calls to these crashing, so disable for now:
46 //# define BOOST_HAS_EXPM1
47 //# define BOOST_HAS_LOG1P
48 # define BOOST_HAS_GETTIMEOFDAY
51 // Win32 will normally be using native Win32 threads,
52 // but there is a pthread library avaliable as an option,
53 // we used to disable this when BOOST_DISABLE_WIN32 was
54 // defined but no longer - this should allow some
55 // files to be compiled in strict mode - while maintaining
56 // a consistent setting of BOOST_HAS_THREADS across
57 // all translation units (needed for shared_ptr etc).
60 #ifndef BOOST_HAS_PTHREADS
61 # define BOOST_HAS_WINTHREADS
65 // WinCE configuration:
67 #if defined(_WIN32_WCE) || defined(UNDER_CE)
68 # define BOOST_NO_ANSI_APIS
69 // Windows CE does not have a conforming signature for swprintf
70 # define BOOST_NO_SWPRINTF
72 # define BOOST_HAS_GETSYSTEMTIMEASFILETIME
73 # define BOOST_HAS_THREADEX
74 # define BOOST_HAS_GETSYSTEMTIMEASFILETIME
80 #if defined(WINAPI_FAMILY) && \
81 (WINAPI_FAMILY == WINAPI_FAMILY_APP || WINAPI_FAMILY == WINAPI_FAMILY_PHONE_APP)
82 # define BOOST_NO_ANSI_APIS
85 #ifndef BOOST_DISABLE_WIN32
87 #define BOOST_HAS_FTIME
88 #define BOOST_WINDOWS 1