portability/build.hpp
#ifndef STLPLUS_BUILD
#define STLPLUS_BUILD
////////////////////////////////////////////////////////////////////////////////
// Author: Andy Rushton
// Copyright: (c) Southampton University 1999-2004
// (c) Andy Rushton 2004 onwards
// License: BSD License, see ../docs/license.html
// Provides a printable representation of the build characteristics in the form:
// version, platform, compiler, variant
// Where
// version is the version of STLplus
// platform is the target operating system
// compiler is the compilation system and version that the function was compiled with
// variant is the kind of build - debug or release
// Example:
// STLplus version 3.0, Generic Unix, gcc v3.4, debug
////////////////////////////////////////////////////////////////////////////////
#include "portability_fixes.hpp"
#include <string>
namespace stlplus
{
// STLplus version in the form "STLplus version 3.0" - see version.hpp for a way of getting just the version number
std::string stlplus_version(void);
// platform is the target operating system in the form "Windows" or "Generic Unix"
std::string platform(void);
// compiler_name is the short name of the compiler, e.g. "gcc" or "MSVC"
std::string compiler_name(void);
// compiler_version is the version string of the compiler e.g. "3.4" for gcc or "15.00" for MSVC
std::string compiler_version(void);
// compiler is the compilation system and version above combined into a human- readable form e.g. "gcc v3.4"
std::string compiler(void);
// variant is the kind of build - "debug" or "release"
std::string variant(void);
// build is all of the above combined into a human-readable string
std::string build(void);
}
////////////////////////////////////////////////////////////////////////////////
#endif