Vaucanson 1.4
system.hh
Go to the documentation of this file.
00001 // system.hh: this file is part of the Vaucanson project.
00002 //
00003 // Vaucanson, a generic library for finite state machines.
00004 //
00005 // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006 The Vaucanson Group.
00006 //
00007 // This program is free software; you can redistribute it and/or
00008 // modify it under the terms of the GNU General Public License
00009 // as published by the Free Software Foundation; either version 2
00010 // of the License, or (at your option) any later version.
00011 //
00012 // The complete GNU General Public Licence Notice can be found as the
00013 // `COPYING' file in the root directory.
00014 //
00015 // The Vaucanson Group consists of people listed in the `AUTHORS' file.
00016 //
00017 #ifndef VCSN_CONFIG_SYSTEM_HH
00018 # define VCSN_CONFIG_SYSTEM_HH
00019 
00034 # ifdef HAVE_PRETTY_FUNCTION
00035 #  define PRETTY_FUNCTION() __PRETTY_FUNCTION__
00036 # else
00037 #  define PRETTY_FUNCTION() static_cast<const char*>(0)
00038 # endif
00039 
00040 # ifndef VCSN_INTERNAL_IGNORE_PCONF_HH
00041 #  include <vaucanson/config/pconf.hh>
00042 # endif
00043 
00044 # include <vaucanson/config/math.hh>
00045 
00046 # if (defined __GNUC__) && (__GNUC__ < 3)
00047 # include <stl_config.h>
00048 #  undef __STL_BEGIN_RELOPS_NAMESPACE
00049 #  define __STL_BEGIN_RELOPS_NAMESPACE namespace rel_ops {
00050 #  undef __STL_END_RELOPS_NAMESPACE
00051 #  define __STL_END_RELOPS_NAMESPACE }
00052 #  define __STL_USE_NAMESPACES
00053 # endif
00054 
00055 // Set VCSN_NDEBUG if NDEBUG is defined.
00056 # ifdef NDEBUG
00057 #  define VCSN_NDEBUG 1
00058 # endif
00059 
00060 // FIXME: these should be tested
00061 
00062 # if (defined __GNUC__)
00063 #  define XUNUSED(X) X __attribute__ ((__unused__))
00064 # else
00065 #  define XUNUSED(X) /* unused */
00066 # endif
00067 
00069 # define VAUCANSON 1
00070 
00071 #endif // ! VCSN_CONFIG_SYSTEM_HH