Boost logo

Boost :

From: Dan Gohman (djg_at_[hidden])
Date: 2003-02-05 09:55:03


Here's what I've made so far the a Cray platform and compiler config
file. As Matthias pointed out, a reasonable stdint.h is available, so
having this configuration makes the __crayx1 customizations to
boost/cstdint.hpp unnecessary.

Also as Matthias mentioned earlier, the Cray C++ library is based on
Dinkumware, and a recent CVS checkout of the Boost configuration system
is able to detect it in the preliminary Cray X1 testing I've been doing.
Matthias, what version of the config system were you using?

Here's the test in select_platform_config.hpp: It uses _CRAY instead of
CRAY because the former is always defined, while the latter is not in
certain `strict' modes.

#elif defined(_CRAY)
// Cray
# define BOOST_PLATFORM_CONFIG "boost/config/platform/cray.hpp"

and here's the select_compiler_config.hpp entry:

#elif defined(_CRAYC)
// Cray
# define BOOST_COMPILER_CONFIG "boost/config/compiler/cray.hpp"

Here's what I have so far for a platform/cray.hpp . I don't have much
access to Cray SV1 machines currently, so that part needs help.

#if defined(__crayx1)

# define BOOST_PLATFORM "Cray X1"

   // swprintf is not available
# define BOOST_NO_SWPRINTF

   // these are not auto detected by POSIX feature tests:
# define BOOST_HAS_STDINT_H
# define BOOST_HAS_GETTIMEOFDAY
# define BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE

#elif defined(_CRAYSV2)

# define BOOST_PLATFORM "Cray SV2"

#endif

// boilerplate code for all Cray platforms:
#define BOOST_HAS_UNISTD_H
#include <boost/config/posix_features.hpp>

and a compiler/cray.hpp:

// Cray compiler setup:

#if _RELEASE >= 4

# define BOOST_COMPILER BOOST_STRINGIZE(_RELEASE_STRING)

#else

# define BOOST_COMPILER "Cray C++"

#endif

#include "boost/config/compiler/common_edg.hpp"


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk