Chris@16
|
1 // (C) Copyright John Maddock 2001 - 2003.
|
Chris@16
|
2 // (C) Copyright Darin Adler 2001 - 2002.
|
Chris@16
|
3 // (C) Copyright Bill Kempf 2002.
|
Chris@16
|
4 // Use, modification and distribution are subject to the
|
Chris@16
|
5 // Boost Software License, Version 1.0. (See accompanying file
|
Chris@16
|
6 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
Chris@16
|
7
|
Chris@16
|
8 // See http://www.boost.org for most recent version.
|
Chris@16
|
9
|
Chris@16
|
10 // Mac OS specific config options:
|
Chris@16
|
11
|
Chris@16
|
12 #define BOOST_PLATFORM "Mac OS"
|
Chris@16
|
13
|
Chris@16
|
14 #if __MACH__ && !defined(_MSL_USING_MSL_C)
|
Chris@16
|
15
|
Chris@16
|
16 // Using the Mac OS X system BSD-style C library.
|
Chris@16
|
17
|
Chris@16
|
18 # ifndef BOOST_HAS_UNISTD_H
|
Chris@16
|
19 # define BOOST_HAS_UNISTD_H
|
Chris@16
|
20 # endif
|
Chris@16
|
21 //
|
Chris@16
|
22 // Begin by including our boilerplate code for POSIX
|
Chris@16
|
23 // feature detection, this is safe even when using
|
Chris@16
|
24 // the MSL as Metrowerks supply their own <unistd.h>
|
Chris@16
|
25 // to replace the platform-native BSD one. G++ users
|
Chris@16
|
26 // should also always be able to do this on MaxOS X.
|
Chris@16
|
27 //
|
Chris@16
|
28 # include <boost/config/posix_features.hpp>
|
Chris@16
|
29 # ifndef BOOST_HAS_STDINT_H
|
Chris@16
|
30 # define BOOST_HAS_STDINT_H
|
Chris@16
|
31 # endif
|
Chris@16
|
32
|
Chris@16
|
33 //
|
Chris@16
|
34 // BSD runtime has pthreads, sigaction, sched_yield and gettimeofday,
|
Chris@16
|
35 // of these only pthreads are advertised in <unistd.h>, so set the
|
Chris@16
|
36 // other options explicitly:
|
Chris@16
|
37 //
|
Chris@16
|
38 # define BOOST_HAS_SCHED_YIELD
|
Chris@16
|
39 # define BOOST_HAS_GETTIMEOFDAY
|
Chris@16
|
40 # define BOOST_HAS_SIGACTION
|
Chris@16
|
41
|
Chris@16
|
42 # if (__GNUC__ < 3) && !defined( __APPLE_CC__)
|
Chris@16
|
43
|
Chris@16
|
44 // GCC strange "ignore std" mode works better if you pretend everything
|
Chris@16
|
45 // is in the std namespace, for the most part.
|
Chris@16
|
46
|
Chris@16
|
47 # define BOOST_NO_STDC_NAMESPACE
|
Chris@16
|
48 # endif
|
Chris@16
|
49
|
Chris@16
|
50 # if (__GNUC__ == 4)
|
Chris@16
|
51
|
Chris@16
|
52 // Both gcc and intel require these.
|
Chris@16
|
53 # define BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE
|
Chris@16
|
54 # define BOOST_HAS_NANOSLEEP
|
Chris@16
|
55
|
Chris@16
|
56 # endif
|
Chris@16
|
57
|
Chris@16
|
58 #else
|
Chris@16
|
59
|
Chris@16
|
60 // Using the MSL C library.
|
Chris@16
|
61
|
Chris@16
|
62 // We will eventually support threads in non-Carbon builds, but we do
|
Chris@16
|
63 // not support this yet.
|
Chris@16
|
64 # if ( defined(TARGET_API_MAC_CARBON) && TARGET_API_MAC_CARBON ) || ( defined(TARGET_CARBON) && TARGET_CARBON )
|
Chris@16
|
65
|
Chris@16
|
66 # if !defined(BOOST_HAS_PTHREADS)
|
Chris@16
|
67 // MPTasks support is deprecated/removed from Boost:
|
Chris@16
|
68 //# define BOOST_HAS_MPTASKS
|
Chris@16
|
69 # elif ( __dest_os == __mac_os_x )
|
Chris@16
|
70 // We are doing a Carbon/Mach-O/MSL build which has pthreads, but only the
|
Chris@16
|
71 // gettimeofday and no posix.
|
Chris@16
|
72 # define BOOST_HAS_GETTIMEOFDAY
|
Chris@16
|
73 # endif
|
Chris@16
|
74
|
Chris@16
|
75 #ifdef BOOST_HAS_PTHREADS
|
Chris@16
|
76 # define BOOST_HAS_THREADS
|
Chris@16
|
77 #endif
|
Chris@16
|
78
|
Chris@16
|
79 // The remote call manager depends on this.
|
Chris@16
|
80 # define BOOST_BIND_ENABLE_PASCAL
|
Chris@16
|
81
|
Chris@16
|
82 # endif
|
Chris@16
|
83
|
Chris@16
|
84 #endif
|
Chris@16
|
85
|
Chris@16
|
86
|
Chris@16
|
87
|