ed5c53fe44c4e1432a9642d039885aa5b37b9de9
[pspp-builds.git] / pref.h.orig
1 /* Let's tell EMACS what language this is: -*- C -*- */
2
3 /* Used by separable libraries to enable PSPP-specific features. */
4 #define PSPP 1
5
6 /*
7  *
8  * Debugging
9  *
10  */
11
12 /* Define to get lots of info printed by procedures. */
13 /*#define DEBUGGING 1*/
14
15 #if DEBUGGING
16 #define GLOBAL_DEBUGGING 1
17 #endif
18
19 #if !HAVE_LIBPLOT
20 #define NO_CHARTS 1
21 #endif
22
23 /* Define these if DEBUGGING is off and you want to make certain
24    additional optimizations. */
25 #if !DEBUGGING
26 /* #define PRODUCTION 1 */              /* disable extra function calls */
27 /* #define NDEBUG 1 */                  /* disable assert() sanity checks */
28 #endif
29 \f
30 /* Compilers. */
31
32 /* Make sure to use the proper keywords. */
33 #if __GNUC__ > 1 && !defined (inline)
34 #define inline __inline__
35 #endif
36
37 /* GNU C allows the programmer to declare that certain functions take
38    printf-like arguments, never return, etc.  Conditionalize these
39    declarations on whether gcc is in use. */
40 #if __GNUC__ > 1
41 #define ATTRIBUTE(X) __attribute__ (X)
42 #else
43 #define ATTRIBUTE(X)
44 #endif
45
46 #define UNUSED ATTRIBUTE ((unused))
47 #define NO_RETURN ATTRIBUTE ((noreturn))
48 #define PRINTF_FORMAT(FMT, FIRST) ATTRIBUTE ((format (printf, FMT, FIRST)))
49 #define SCANF_FORMAT(FMT, FIRST) ATTRIBUTE ((format (scanf, FMT, FIRST)))
50 \f
51 /* CPUs. */
52
53 #if SIZEOF_DOUBLE == 8
54 #define second_lowest_flt64 second_lowest_value
55 #else
56 #error Must define second_lowest_flt64 for your architecture.
57 #endif
58
59 /* Figure out which integer type on this system is a signed 32-bit
60    integer. */
61 #if SIZEOF_SHORT==4
62   #define int32 short
63 #elif SIZEOF_INT==4
64   #define int32 int
65 #elif SIZEOF_LONG==4
66   #define int32 long
67 #else
68   #error Which one of your basic types is 32-bit signed integer?
69 #endif
70
71 #if SIZEOF_FLOAT==8
72   #define flt64 float
73   #define FLT64_MAX FLT_MAX
74 #elif SIZEOF_DOUBLE==8
75   #define flt64 double
76   #define FLT64_MAX DBL_MAX
77 #elif SIZEOF_LONG_DOUBLE==8
78   #define flt64 long double
79   #define FLT64_MAX LDBL_MAX
80 #else
81   #error Which one of your basic types is 64-bit floating point?
82   #define flt64 double
83   #define FLT64_MAX DBL_MAX
84 #endif
85 \f
86 /* Environments. */
87
88 /* Internationalization. */
89 #include <libintl.h>
90
91 #if !ENABLE_NLS
92 /* If we don't do this then gettext() still monkeys with the string,
93    which causes gcc not to do its checking on printf() format
94    types. */
95 #undef gettext
96 #define gettext(STRING) STRING
97 #endif
98
99 #define _(STRING) gettext(STRING)
100 #define N_(STRING) STRING
101 \f
102 /* Filesystems. */
103
104 /* Directory separator character for this OS, if applicable. */
105 #ifndef __MSDOS__
106 #define DIR_SEPARATOR '/'
107 #else
108 #define DIR_SEPARATOR '\\'
109 #endif
110
111 /* Path delimiter character. */
112 #ifndef __MSDOS__
113 #define PATH_DELIMITER ':'
114 #else
115 #define PATH_DELIMITER ';'
116 #endif
117 \f
118 /* Options. */
119
120 /* Approximate amount of memory, in bytes, to allocate before paging
121    to disk.  */
122 #define MAX_WORKSPACE (4*1024*1024)     /* 4 MBytes */
123
124 /* (libhistory) The location for the history file that records
125    commands entered interactively.  Tilde expansion is performed. */
126 #define HISTORY_FILE "~/.pspp_history"
127
128 /* (libhistory) Maximum number of commands to record in history
129    file. */
130 #define MAX_HISTORY 500
131 \f
132 /* Output drivers. */
133
134 /* Define to exclude the HTML output driver. */
135 /* #define NO_HTML 1 */
136
137 /* Define to exclude the PostScript and Encapsulated PostScript
138    driver. */
139 /* #define NO_POSTSCRIPT 1 */
140
141 /* Non ansi compilers may set this */
142 #ifndef P_tmpdir
143 #define P_tmpdir "/tmp"
144 #endif