1 // (C) Copyright Boost.org 2001. Permission to copy, use, modify, sell and
2 // distribute this software is granted provided this copyright notice appears
3 // in all copies. This software is provided "as is" without express or implied
4 // warranty, and with no claim as to its suitability for any purpose.
6 // See http://www.boost.org for most recent version.
8 // linux specific config options:
10 #define BOOST_PLATFORM "linux"
12 // make sure we have __GLIBC_PREREQ if available at all
16 // <stdint.h> added to glibc 2.1.1
17 // We can only test for 2.1 though:
19 #if defined(__GLIBC__) && ((__GLIBC__ > 2) || ((__GLIBC__ == 2) && (__GLIBC_MINOR__ >= 1)))
20 // <stdint.h> defines int64_t unconditionally, but <sys/types.h> defines
21 // int64_t only if __GNUC__. Thus, assume a fully usable <stdint.h>
22 // only when using GCC.
24 # define BOOST_HAS_STDINT_H
29 // como on linux doesn't have std:: c functions:
32 # define BOOST_NO_STDC_NAMESPACE
36 // Intel on linux doesn't have swprintf in std::
39 # define BOOST_NO_STDC_NAMESPACE
43 // If glibc is past version 2 then we definitely have
44 // gettimeofday, earlier versions may or may not have it:
46 #if defined(__GLIBC__) && (__GLIBC__ >= 2)
47 # define BOOST_HAS_GETTIMEOFDAY
50 #ifdef __USE_POSIX199309
51 # define BOOST_HAS_NANOSLEEP
54 #if defined(__GLIBC__) && defined(__GLIBC_PREREQ)
55 // __GLIBC_PREREQ is available since 2.1.2
57 // swprintf is available since glibc 2.2.0
58 # if !__GLIBC_PREREQ(2,2) || (!defined(__USE_ISOC99) && !defined(__USE_UNIX98))
59 # define BOOST_NO_SWPRINTF
62 # define BOOST_NO_SWPRINTF
66 #define BOOST_HAS_UNISTD_H
67 #include <boost/config/posix_features.hpp>
71 // if the compiler is not gcc we still need to be able to parse
72 // the GNU system headers, some of which (mainly <stdint.h>)
73 // use GNU specific extensions:
75 # ifndef __extension__
76 # define __extension__
79 # define __const__ const
82 # define __volatile__ volatile
85 # define __signed__ signed
88 # define __typeof__ typeof
91 # define __inline__ inline