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