Speed up esyscmd with buffer reads.
[m4.git] / modules / traditional.c
blob15ad6553031b6f153972b7aa42c2d829feba12f2
1 /* GNU m4 -- A simple macro processor
2 Copyright (C) 2000, 2006, 2007, 2008 Free Software Foundation, Inc.
4 This file is part of GNU M4.
6 GNU M4 is free software: you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation, either version 3 of the License, or
9 (at your option) any later version.
11 GNU M4 is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
16 You should have received a copy of the GNU General Public License
17 along with this program. If not, see <http://www.gnu.org/licenses/>.
20 #include <config.h>
22 /* Build using only the exported interfaces, unless NDEBUG is set, in
23 which case use private symbols to speed things up as much as possible. */
24 #ifndef NDEBUG
25 # include <m4/m4module.h>
26 #else
27 # include "m4private.h"
28 #endif
30 /* Rename exported symbols for dlpreload()ing. */
31 #define m4_macro_table traditional_LTX_m4_macro_table
33 /* A table for mapping m4 symbol names to simple expansion text. */
34 const m4_macro m4_macro_table[] =
36 /* name text min max */
37 #if UNIX
38 { "unix", "", 0, 0 },
39 #elif W32_NATIVE
40 { "windows", "", 0, 0 },
41 #elif OS2
42 { "os2", "", 0, 0 },
43 #else
44 # warning Platform macro not provided
45 #endif
46 { "__traditional__", "", 0, 0 },
47 { NULL, NULL, 0, 0 },