cpp: Use #pragma once instead of #ifndef guards
[ghc.git] / includes / rts / Config.h
1 /* -----------------------------------------------------------------------------
2 *
3 * (c) The GHC Team, 1998-2009
4 *
5 * Rts settings.
6 *
7 * NOTE: assumes #include "ghcconfig.h"
8 *
9 * NB: THIS FILE IS INCLUDED IN NON-C CODE AND DATA! #defines only please.
10 *
11 * To understand the structure of the RTS headers, see the wiki:
12 * http://ghc.haskell.org/trac/ghc/wiki/Commentary/SourceTree/Includes
13 *
14 * ---------------------------------------------------------------------------*/
15
16 #pragma once
17
18 #if defined(TICKY_TICKY) && defined(THREADED_RTS)
19 #error TICKY_TICKY is incompatible with THREADED_RTS
20 #endif
21
22 /*
23 * Whether the runtime system will use libbfd for debugging purposes.
24 */
25 #if defined(DEBUG) && defined(HAVE_BFD_H) && defined(HAVE_LIBBFD) && !defined(_WIN32)
26 #define USING_LIBBFD 1
27 #endif
28
29 /* DEBUG implies TRACING and TICKY_TICKY */
30 #if defined(DEBUG)
31 #if !defined(TRACING)
32 #define TRACING
33 #endif
34 #if !defined(TICKY_TICKY)
35 #define TICKY_TICKY
36 #endif
37 #endif
38
39
40 /* -----------------------------------------------------------------------------
41 Signals - supported on non-PAR versions of the runtime. See RtsSignals.h.
42 -------------------------------------------------------------------------- */
43
44 #define RTS_USER_SIGNALS 1
45
46 /* Profile spin locks */
47
48 #define PROF_SPIN