Boost logo

Boost :

From: Daryle Walker (darylew_at_[hidden])
Date: 2001-06-20 01:02:47


I tried out the download at
<http://groups.yahoo.com/group/boost/files/config/config_02.zip>, this is
what happened:

1. There were two errors in "test_all.cpp"
    A. The "#ifndefBOOST_NO_STRINGSTREAM" line was run together.
       I changed it to "#ifndef BOOST_NO_STRINGSTREAM".
    B. There were some garbage lines right before the main function that
       made an extra #include of "boost_no_slist.cxx" and an unmatched
       "#endif". I removed the lines.

2. Discoveries about my system.
    A. I think the use of "Metrowerks" as the extended standard
       namespace started with CodeWarrior Pro 6. Since I have
       the previous version, I had to add a check in <boost/config.hpp>.
    B. I don't have the proper hash headers. I guess they were
       "standardized" in CWP6. I have hash class templates, but they're
       in different files than <hash_set> and <hash_map>. I had to
       change <boost/config.hpp> there too.
    C. I already knew my compiler can't handle "template" qualifications.
       I commented those out to get the file to compile, but you don't
       have to do anything about it.
    D. I was left with a bunch of warnings about no prototypes and
       unused variables & parameters. You can ignore them too.

The changes resulted in this in <boost/config.hpp>, based off the last
regular version, and not any CVS update (excuse any word-wrap):

//=========================================================================
//...

// Metrowerks CodeWarrior ---------------------------------------------//

# elif defined __MWERKS__
# if __MWERKS__ <= 0x2401 // 6.2
# define BOOST_NO_MEMBER_TEMPLATE_FRIENDS
# endif
# if __MWERKS__ <= 0x2301 // 5.3?
# define BOOST_NO_POINTER_TO_MEMBER_CONST
# define BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS
# define BOOST_NO_HASH
# endif
# if __MWERKS__ >= 0x2400
# define BOOST_STD_EXTENSION_NAMESPACE Metrowerks
# endif
# if __MWERKS__ >= 0x2300
# define BOOST_SYSTEM_HAS_STDINT_H
# endif
# if defined BOOST_DECL_EXPORTS
# if defined BOOST_DECL_IMPORTS
# error Not valid to define both BOOST_DECL_EXPORTS and
BOOST_DECL_IMPORTS
# endif
# define BOOST_DECL __declspec(dllexport)
# elif defined BOOST_DECL_IMPORTS
# define BOOST_DECL __declspec(dllimport)
# else
# define BOOST_DECL
# endif

// Sun Workshop Compiler C++ ---------------------------------------------

//...
//=========================================================================

(Since I don't have CVS, do _not_ copy & paste my clip, or you'll erase any
CVS changes. I removed the independent BOOST_STD_EXTENSION_NAMESPACE line,
replaced it with a 3-line check for CWP6. And I added a BOOST_NO_HASH line
for versions less than or equal to CWP5.3.)

-- 
Daryle Walker
Mac, Internet, and Video Game Junkie
darylew AT mac DOT com

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