Merge c:/dyninst/pc_bluegene/dyninst into dyn_pc_integration
[dyninst.git] / external / boost / config / platform / hpux.hpp
1 //  (C) Copyright John Maddock 2001 - 2003. 
2 //  (C) Copyright Jens Maurer 2001 - 2003. 
3 //  (C) Copyright David Abrahams 2002. 
4 //  (C) Copyright Toon Knapen 2003. 
5 //  (C) Copyright Boris Gubenko 2006 - 2007.
6 //  Use, modification and distribution are subject to the 
7 //  Boost Software License, Version 1.0. (See accompanying file 
8 //  LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
9
10 //  See http://www.boost.org for most recent version.
11
12 //  hpux specific config options:
13
14 #define BOOST_PLATFORM "HP-UX"
15
16 // In principle, HP-UX has a nice <stdint.h> under the name <inttypes.h>
17 // However, it has the following problem:
18 // Use of UINT32_C(0) results in "0u l" for the preprocessed source
19 // (verifyable with gcc 2.95.3)
20 #if (defined(__GNUC__) && (__GNUC__ >= 3)) || defined(__HP_aCC)
21 #  define BOOST_HAS_STDINT_H
22 #endif
23
24 #if !(defined(__HP_aCC) || !defined(_INCLUDE__STDC_A1_SOURCE))
25 #  define BOOST_NO_SWPRINTF
26 #endif
27 #if defined(__HP_aCC) && !defined(_INCLUDE__STDC_A1_SOURCE)
28 #  define BOOST_NO_CWCTYPE
29 #endif
30
31 #if defined(__GNUC__)
32 #  if (__GNUC__ < 3) || ((__GNUC__ == 3) && (__GNUC_MINOR__ < 3))
33       // GNU C on HP-UX does not support threads (checked up to gcc 3.3)
34 #     define BOOST_DISABLE_THREADS
35 #  elif !defined(BOOST_DISABLE_THREADS)
36       // threads supported from gcc-3.3 onwards:
37 #     define BOOST_HAS_THREADS
38 #     define BOOST_HAS_PTHREADS
39 #  endif
40 #elif defined(__HP_aCC) && !defined(BOOST_DISABLE_THREADS)
41 #  define BOOST_HAS_PTHREADS
42 #endif
43
44 // boilerplate code:
45 #define BOOST_HAS_UNISTD_H
46 #include <boost/config/posix_features.hpp>
47
48 // the following are always available:
49 #ifndef BOOST_HAS_GETTIMEOFDAY
50 #  define BOOST_HAS_GETTIMEOFDAY
51 #endif
52 #ifndef BOOST_HAS_SCHED_YIELD
53 #    define BOOST_HAS_SCHED_YIELD
54 #endif
55 #ifndef BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE
56 #    define BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE
57 #endif
58 #ifndef BOOST_HAS_NL_TYPES_H
59 #    define BOOST_HAS_NL_TYPES_H
60 #endif
61 #ifndef BOOST_HAS_NANOSLEEP
62 #    define BOOST_HAS_NANOSLEEP
63 #endif
64 #ifndef BOOST_HAS_GETTIMEOFDAY
65 #    define BOOST_HAS_GETTIMEOFDAY
66 #endif
67 #ifndef BOOST_HAS_DIRENT_H
68 #    define BOOST_HAS_DIRENT_H
69 #endif
70 #ifndef BOOST_HAS_CLOCK_GETTIME
71 #    define BOOST_HAS_CLOCK_GETTIME
72 #endif
73 #ifndef BOOST_HAS_SIGACTION
74 #  define BOOST_HAS_SIGACTION
75 #endif
76 #ifndef BOOST_HAS_NRVO 
77 #  ifndef __parisc
78 #    define BOOST_HAS_NRVO
79 #  endif
80 #endif
81 #ifndef BOOST_HAS_LOG1P 
82 #  define BOOST_HAS_LOG1P
83 #endif
84 #ifndef BOOST_HAS_EXPM1
85 #  define BOOST_HAS_EXPM1
86 #endif
87