summaryrefslogtreecommitdiff
path: root/src/system.hh
blob: bf376deb6f4f99ca3fe3812daf60c1c3f9b6c53f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
#ifndef _SYSTEM_HH
#define _SYSTEM_HH

/**
 * @file   system.hh
 * @author John Wiegley
 * @date   Mon Apr 23 03:43:05 2007
 * 
 * @brief  All system headers needed by Ledger.
 *
 * These are collected here so that a pre-compiled header can be made.
 * None of these header files (with the exception of acconf.h, when
 * configure is re-run) are expected to change.
 */

#include "acconf.h"

#if defined(__GNUG__) && __GNUG__ < 3
#define _XOPEN_SOURCE
#endif

#include <algorithm>
#include <exception>
#include <iostream>
#include <streambuf>
#include <iomanip>
#include <fstream>
#include <sstream>
#include <iterator>
#include <list>
#include <map>
#include <memory>
#include <new>
#include <stack>
#include <string>
#include <vector>

#if defined(__GNUG__) && __GNUG__ < 3
namespace std {
  inline ostream & right (ostream & i) {
    i.setf(i.right, i.adjustfield);
    return i;
  }
  inline ostream & left (ostream & i) {
    i.setf(i.left, i.adjustfield);
    return i;
  }
}
#endif

#include <cassert>
#include <cctype>
#include <cstdarg>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <ctime>

#if defined __FreeBSD__ && __FreeBSD__ <= 4
// FreeBSD has a broken isspace macro, so don't use it
#undef isspace(c)
#endif

#include <sys/stat.h>

#ifdef WIN32
#include <io.h>
#else
#include <unistd.h>
#endif

#if defined(HAVE_GETPWUID) || defined(HAVE_GETPWNAM)
#include <pwd.h>
#endif

#if defined(HAVE_NL_LANGINFO)
#include <langinfo.h>
#endif

#include <gmp.h>

#define HAVE_GDTOA 1
#ifdef HAVE_GDTOA
#include <gdtoa/gdtoa.h>
#endif

extern "C" {
#if defined(HAVE_EXPAT)
#include <expat.h>		// expat XML parser
#elif defined(HAVE_XMLPARSE)
#include <xmlparse.h>		// expat XML parser
#endif
}

#if defined(HAVE_LIBOFX)
#include <libofx.h>
#endif

#endif // _SYSTEM_HH