00001 // 00002 // aegis - project change supervisor 00003 // Copyright (C) 1997, 1999, 2004-2006, 2008 Peter Miller 00004 // Copyright (C) 2008 Walter Franzini 00005 // 00006 // This program is free software; you can redistribute it and/or modify 00007 // it under the terms of the GNU General Public License as published by 00008 // the Free Software Foundation; either version 3 of the License, or 00009 // (at your option) any later version. 00010 // 00011 // This program is distributed in the hope that it will be useful, 00012 // but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00014 // GNU General Public License for more details. 00015 // 00016 // You should have received a copy of the GNU General Public License 00017 // along with this program. If not, see 00018 // <http://www.gnu.org/licenses/>. 00019 // 00020 00021 #ifndef COMMON_AC_STDIO_H 00022 #define COMMON_AC_STDIO_H 00023 00024 #include <common/config.h> 00025 00026 #include <cstdio> 00027 00028 // 00029 // The bits/c++locale.h include define an inline function that may use 00030 // one of the symbols (re)defined below, this will lead to compilation 00031 // on error on system's include on some platforms (eg. FreeBSD). 00032 // In order to preserve the sprintf/vsprintf detection feature in the 00033 // Aegis source code, we read the named include before defining the 00034 // macro below. 00035 // 00036 #if HAVE_BITS_C__LOCALE_H 00037 #include <bits/c++locale.h> 00038 #endif 00039 00040 #define sprintf use_snprintf_instead 00041 #define vsprintf use_vsnprintf_instead 00042 00043 #endif // COMMON_AC_STDIO_H