serialization build error (and possible fix)

I couldn't build the latest boost from svn with boost build v2 (win32 with msvc 80 sp1, serialization wide-archive compilation/link problems). I've attached a patch which allowed it to build (dunno if this is the right way to fix the problem). It also seems that the following files get deleted after I run bjam... 'svn up' restores these files: Restored: D:\dev\boost\boost.svn\trunk\libs\function_types\build\timestamps\arity_loops Restored: D:\dev\boost\boost.svn\trunk\libs\function_types\build\timestamps\encoding Restored: D:\dev\boost\boost.svn\trunk\libs\function_types\build\timestamps\cc_names HTH, --craig Index: boost/archive/detail/interface_iarchive.hpp =================================================================== --- boost/archive/detail/interface_iarchive.hpp (revision 38471) +++ boost/archive/detail/interface_iarchive.hpp (working copy) @@ -32,7 +32,7 @@ namespace archive { namespace detail { -class BOOST_ARCHIVE_DECL(BOOST_PP_EMPTY()) basic_pointer_iserializer; +class BOOST_ARCHIVE_OR_WARCHIVE_DECL(BOOST_PP_EMPTY()) basic_pointer_iserializer; template<class Archive> class interface_iarchive @@ -51,9 +51,9 @@ } template<class T> - const BOOST_ARCHIVE_DECL(BOOST_PP_EMPTY()) basic_pointer_iserializer * + const BOOST_ARCHIVE_OR_WARCHIVE_DECL(BOOST_PP_EMPTY()) basic_pointer_iserializer * register_type(T * = NULL){ - const BOOST_ARCHIVE_DECL(BOOST_PP_EMPTY()) basic_pointer_iserializer & bpis = + const BOOST_ARCHIVE_OR_WARCHIVE_DECL(BOOST_PP_EMPTY()) basic_pointer_iserializer & bpis = pointer_iserializer<Archive, T>::get_instance(); this->This()->register_basic_serializer(bpis.get_basic_serializer()); return & bpis; Index: boost/archive/detail/interface_oarchive.hpp =================================================================== --- boost/archive/detail/interface_oarchive.hpp (revision 38471) +++ boost/archive/detail/interface_oarchive.hpp (working copy) @@ -32,7 +32,7 @@ namespace archive { namespace detail { -class BOOST_ARCHIVE_DECL(BOOST_PP_EMPTY()) basic_pointer_oserializer; +class BOOST_ARCHIVE_OR_WARCHIVE_DECL(BOOST_PP_EMPTY()) basic_pointer_oserializer; template<class Archive> class interface_oarchive @@ -51,9 +51,9 @@ } template<class T> - const BOOST_ARCHIVE_DECL(BOOST_PP_EMPTY()) basic_pointer_oserializer * + const BOOST_ARCHIVE_OR_WARCHIVE_DECL(BOOST_PP_EMPTY()) basic_pointer_oserializer * register_type(const T * = NULL){ - const BOOST_ARCHIVE_DECL(BOOST_PP_EMPTY()) basic_pointer_oserializer & bpos = + const BOOST_ARCHIVE_OR_WARCHIVE_DECL(BOOST_PP_EMPTY()) basic_pointer_oserializer & bpos = pointer_oserializer<Archive, T>::get_instance(); this->This()->register_basic_serializer(bpos.get_basic_serializer()); return & bpos; Index: libs/serialization/build/Jamfile.v2 =================================================================== --- libs/serialization/build/Jamfile.v2 (revision 38471) +++ libs/serialization/build/Jamfile.v2 (working copy) @@ -44,7 +44,6 @@ basic_xml_archive binary_iarchive binary_oarchive - codecvt_null extended_type_info extended_type_info_no_rtti extended_type_info_typeid @@ -66,6 +65,7 @@ binary_woarchive text_wiarchive text_woarchive + codecvt_null utf8_codecvt_facet xml_wgrammar xml_wiarchive ____________________________________________________________________________________ Pinpoint customers who are looking for what you sell. http://searchmarketing.yahoo.com/
participants (1)
-
craigp