]>
Commit | Line | Data |
---|---|---|
1 | // Boost compiler configuration selection header file | |
2 | ||
3 | // (C) Copyright John Maddock 2001 - 2002. | |
4 | // (C) Copyright Jens Maurer 2001. | |
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) | |
8 | ||
9 | // See http://www.boost.org for most recent version. | |
10 | ||
11 | // locate which platform we are on and define BOOST_PLATFORM_CONFIG as needed. | |
12 | // Note that we define the headers to include using "header_name" not | |
13 | // <header_name> in order to prevent macro expansion within the header | |
14 | // name (for example "linux" is a macro on linux systems). | |
15 | ||
16 | #if (defined(linux) || defined(__linux) || defined(__linux__) || defined(__GNU__) || defined(__GLIBC__)) && !defined(_CRAYC) | |
17 | // linux, also other platforms (Hurd etc) that use GLIBC, should these really have their own config headers though? | |
18 | # define BOOST_PLATFORM_CONFIG "boost/config/platform/linux.hpp" | |
19 | ||
20 | #elif defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__DragonFly__) | |
21 | // BSD: | |
22 | # define BOOST_PLATFORM_CONFIG "boost/config/platform/bsd.hpp" | |
23 | ||
24 | #elif defined(sun) || defined(__sun) | |
25 | // solaris: | |
26 | # define BOOST_PLATFORM_CONFIG "boost/config/platform/solaris.hpp" | |
27 | ||
28 | #elif defined(__sgi) | |
29 | // SGI Irix: | |
30 | # define BOOST_PLATFORM_CONFIG "boost/config/platform/irix.hpp" | |
31 | ||
32 | #elif defined(__hpux) | |
33 | // hp unix: | |
34 | # define BOOST_PLATFORM_CONFIG "boost/config/platform/hpux.hpp" | |
35 | ||
36 | #elif defined(__CYGWIN__) | |
37 | // cygwin is not win32: | |
38 | # define BOOST_PLATFORM_CONFIG "boost/config/platform/cygwin.hpp" | |
39 | ||
40 | #elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32) | |
41 | // win32: | |
42 | # define BOOST_PLATFORM_CONFIG "boost/config/platform/win32.hpp" | |
43 | ||
44 | #elif defined(__HAIKU__) | |
45 | // Haiku | |
46 | # define BOOST_PLATFORM_CONFIG "boost/config/platform/haiku.hpp" | |
47 | ||
48 | #elif defined(__BEOS__) | |
49 | // BeOS | |
50 | # define BOOST_PLATFORM_CONFIG "boost/config/platform/beos.hpp" | |
51 | ||
52 | #elif defined(macintosh) || defined(__APPLE__) || defined(__APPLE_CC__) | |
53 | // MacOS | |
54 | # define BOOST_PLATFORM_CONFIG "boost/config/platform/macos.hpp" | |
55 | ||
56 | #elif defined(__IBMCPP__) || defined(_AIX) | |
57 | // IBM | |
58 | # define BOOST_PLATFORM_CONFIG "boost/config/platform/aix.hpp" | |
59 | ||
60 | #elif defined(__amigaos__) | |
61 | // AmigaOS | |
62 | # define BOOST_PLATFORM_CONFIG "boost/config/platform/amigaos.hpp" | |
63 | ||
64 | #elif defined(__QNXNTO__) | |
65 | // QNX: | |
66 | # define BOOST_PLATFORM_CONFIG "boost/config/platform/qnxnto.hpp" | |
67 | ||
68 | #elif defined(__VXWORKS__) | |
69 | // vxWorks: | |
70 | # define BOOST_PLATFORM_CONFIG "boost/config/platform/vxworks.hpp" | |
71 | ||
72 | #elif defined(__SYMBIAN32__) | |
73 | // Symbian: | |
74 | # define BOOST_PLATFORM_CONFIG "boost/config/platform/symbian.hpp" | |
75 | ||
76 | #elif defined(_CRAYC) | |
77 | // Cray: | |
78 | # define BOOST_PLATFORM_CONFIG "boost/config/platform/cray.hpp" | |
79 | ||
80 | #elif defined(__VMS) | |
81 | // VMS: | |
82 | # define BOOST_PLATFORM_CONFIG "boost/config/platform/vms.hpp" | |
83 | ||
84 | #elif defined(__CloudABI__) | |
85 | // Nuxi CloudABI: | |
86 | # define BOOST_PLATFORM_CONFIG "boost/config/platform/cloudabi.hpp" | |
87 | #else | |
88 | ||
89 | # if defined(unix) \ | |
90 | || defined(__unix) \ | |
91 | || defined(_XOPEN_SOURCE) \ | |
92 | || defined(_POSIX_SOURCE) | |
93 | ||
94 | // generic unix platform: | |
95 | ||
96 | # ifndef BOOST_HAS_UNISTD_H | |
97 | # define BOOST_HAS_UNISTD_H | |
98 | # endif | |
99 | ||
100 | # include <boost/config/posix_features.hpp> | |
101 | ||
102 | # endif | |
103 | ||
104 | # if defined (BOOST_ASSERT_CONFIG) | |
105 | // this must come last - generate an error if we don't | |
106 | // recognise the platform: | |
107 | # error "Unknown platform - please configure and report the results to boost.org" | |
108 | # endif | |
109 | ||
110 | #endif | |
111 | ||
112 | #if 0 | |
113 | // | |
114 | // This section allows dependency scanners to find all the files we *might* include: | |
115 | // | |
116 | # include "boost/config/platform/linux.hpp" | |
117 | # include "boost/config/platform/bsd.hpp" | |
118 | # include "boost/config/platform/solaris.hpp" | |
119 | # include "boost/config/platform/irix.hpp" | |
120 | # include "boost/config/platform/hpux.hpp" | |
121 | # include "boost/config/platform/cygwin.hpp" | |
122 | # include "boost/config/platform/win32.hpp" | |
123 | # include "boost/config/platform/beos.hpp" | |
124 | # include "boost/config/platform/macos.hpp" | |
125 | # include "boost/config/platform/aix.hpp" | |
126 | # include "boost/config/platform/amigaos.hpp" | |
127 | # include "boost/config/platform/qnxnto.hpp" | |
128 | # include "boost/config/platform/vxworks.hpp" | |
129 | # include "boost/config/platform/symbian.hpp" | |
130 | # include "boost/config/platform/cray.hpp" | |
131 | # include "boost/config/platform/vms.hpp" | |
132 | # include <boost/config/posix_features.hpp> | |
133 | ||
134 | ||
135 | ||
136 | #endif | |
137 |