Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r49528 - in sandbox/compile-in-place: . Boost_1_35_0/boost/archive/impl Boost_1_35_0/boost/serialization
From: doomster_at_[hidden]
Date: 2008-11-02 02:38:55


Author: eckhardt
Date: 2008-11-02 02:38:52 EST (Sun, 02 Nov 2008)
New Revision: 49528
URL: http://svn.boost.org/trac/boost/changeset/49528

Log:
- Add include file to compile the serialization library in-place.
- Add example for the in-place compiled serialization library.

Added:
   sandbox/compile-in-place/Boost_1_35_0/boost/serialization/compile_in_place.cpp (contents, props changed)
   sandbox/compile-in-place/test-serialization.cpp (contents, props changed)
Text files modified:
   sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/archive_pointer_iserializer.ipp | 3 +++
   sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/archive_pointer_oserializer.ipp | 3 +++
   sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_binary_iarchive.ipp | 3 +++
   sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_binary_iprimitive.ipp | 3 +++
   sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_binary_oarchive.ipp | 3 +++
   sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_binary_oprimitive.ipp | 3 +++
   sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_text_iarchive.ipp | 3 +++
   sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_text_iprimitive.ipp | 3 +++
   sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_text_oarchive.ipp | 3 +++
   sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_text_oprimitive.ipp | 3 +++
   sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_xml_iarchive.ipp | 3 +++
   sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_xml_oarchive.ipp | 3 +++
   sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/text_iarchive_impl.ipp | 3 +++
   sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/text_oarchive_impl.ipp | 3 +++
   sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/text_wiarchive_impl.ipp | 3 +++
   sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/text_woarchive_impl.ipp | 4 +++-
   sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/xml_iarchive_impl.ipp | 3 +++
   sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/xml_oarchive_impl.ipp | 3 +++
   sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/xml_wiarchive_impl.ipp | 3 +++
   sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/xml_woarchive_impl.ipp | 3 +++
   20 files changed, 60 insertions(+), 1 deletions(-)

Modified: sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/archive_pointer_iserializer.ipp
==============================================================================
--- sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/archive_pointer_iserializer.ipp (original)
+++ sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/archive_pointer_iserializer.ipp 2008-11-02 02:38:52 EST (Sun, 02 Nov 2008)
@@ -8,6 +8,8 @@
 
 // See http://www.boost.org for updates, documentation, and revision history.
 
+#ifndef BOOST_ARCHIVE_IMPL_ARCHIVE_POINTER_ISERIALIZER_IPP_INCLUDED
+#define BOOST_ARCHIVE_IMPL_ARCHIVE_POINTER_ISERIALIZER_IPP_INCLUDED
 #include <cassert>
 
 #include <boost/config.hpp> // msvc 6.0 needs this for warning suppression
@@ -63,3 +65,4 @@
 } // namespace detail
 } // namespace archive
 } // namespace boost
+#endif

Modified: sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/archive_pointer_oserializer.ipp
==============================================================================
--- sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/archive_pointer_oserializer.ipp (original)
+++ sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/archive_pointer_oserializer.ipp 2008-11-02 02:38:52 EST (Sun, 02 Nov 2008)
@@ -8,6 +8,8 @@
 
 // See http://www.boost.org for updates, documentation, and revision history.
 
+#ifndef BOOST_ARCHIVE_IMPL_ARCHIVE_POINTER_OSERIALIZER_IPP_INCLUDED
+#define BOOST_ARCHIVE_IMPL_ARCHIVE_POINTER_OSERIALIZER_IPP_INCLUDED
 #include <boost/config.hpp> // msvc 6.0 needs this for warning suppression
 
 #include <boost/archive/detail/archive_pointer_oserializer.hpp>
@@ -61,3 +63,4 @@
 } // namespace detail
 } // namespace archive
 } // namespace boost
+#endif

Modified: sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_binary_iarchive.ipp
==============================================================================
--- sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_binary_iarchive.ipp (original)
+++ sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_binary_iarchive.ipp 2008-11-02 02:38:52 EST (Sun, 02 Nov 2008)
@@ -7,6 +7,8 @@
 // http://www.boost.org/LICENSE_1_0.txt)
 
 // See http://www.boost.org for updates, documentation, and revision history.
+#ifndef BOOST_ARCHIVE_IMPL_BASIC_BINARY_IARCHIVE_IPP_INCLUDED
+#define BOOST_ARCHIVE_IMPL_BASIC_BINARY_IARCHIVE_IPP_INCLUDED
 #include <string>
 #include <cassert>
 #include <algorithm>
@@ -78,3 +80,4 @@
 
 } // namespace archive
 } // namespace boost
+#endif

Modified: sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_binary_iprimitive.ipp
==============================================================================
--- sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_binary_iprimitive.ipp (original)
+++ sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_binary_iprimitive.ipp 2008-11-02 02:38:52 EST (Sun, 02 Nov 2008)
@@ -8,6 +8,8 @@
 
 // See http://www.boost.org for updates, documentation, and revision history.
 
+#ifndef BOOST_ARCHIVE_IMPL_BASIC_BINARY_IPRIMITIVE_IPP_INCLUDED
+#define BOOST_ARCHIVE_IMPL_BASIC_BINARY_IPRIMITIVE_IPP_INCLUDED
 #include <cassert>
 #include <cstddef> // size_t
 #include <cstring> // memcpy
@@ -188,3 +190,4 @@
 
 } // namespace archive
 } // namespace boost
+#endif

Modified: sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_binary_oarchive.ipp
==============================================================================
--- sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_binary_oarchive.ipp (original)
+++ sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_binary_oarchive.ipp 2008-11-02 02:38:52 EST (Sun, 02 Nov 2008)
@@ -7,6 +7,8 @@
 // http://www.boost.org/LICENSE_1_0.txt)
 
 // See http://www.boost.org for updates, documentation, and revision history.
+#ifndef BOOST_ARCHIVE_IMPL_BASIC_BINARY_OARCHIVE_IPP_INCLUDED
+#define BOOST_ARCHIVE_IMPL_BASIC_BINARY_OARCHIVE_IPP_INCLUDED
 #include <string>
 #include <cassert>
 #include <algorithm>
@@ -44,3 +46,4 @@
 
 } // namespace archive
 } // namespace boost
+#endif

Modified: sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_binary_oprimitive.ipp
==============================================================================
--- sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_binary_oprimitive.ipp (original)
+++ sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_binary_oprimitive.ipp 2008-11-02 02:38:52 EST (Sun, 02 Nov 2008)
@@ -8,6 +8,8 @@
 
 // See http://www.boost.org for updates, documentation, and revision history.
 
+#ifndef BOOST_ARCHIVE_IMPL_BASIC_BINARY_OPRIMITIVE_IPP_INCLUDED
+#define BOOST_ARCHIVE_IMPL_BASIC_BINARY_OPRIMITIVE_IPP_INCLUDED
 #include <ostream>
 #include <cstring>
 
@@ -158,3 +160,4 @@
 
 } // namespace archive
 } // namespace boost
+#endif

Modified: sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_text_iarchive.ipp
==============================================================================
--- sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_text_iarchive.ipp (original)
+++ sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_text_iarchive.ipp 2008-11-02 02:38:52 EST (Sun, 02 Nov 2008)
@@ -7,6 +7,8 @@
 // http://www.boost.org/LICENSE_1_0.txt)
 
 // See http://www.boost.org for updates, documentation, and revision history.
+#ifndef BOOST_ARCHIVE_IMPL_BASIC_TEXT_IARCHIVE_IPP_INCLUDED
+#define BOOST_ARCHIVE_IMPL_BASIC_TEXT_IARCHIVE_IPP_INCLUDED
 #include <string>
 #include <cassert>
 #include <algorithm>
@@ -78,3 +80,4 @@
 
 } // namespace archive
 } // namespace boost
+#endif

Modified: sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_text_iprimitive.ipp
==============================================================================
--- sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_text_iprimitive.ipp (original)
+++ sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_text_iprimitive.ipp 2008-11-02 02:38:52 EST (Sun, 02 Nov 2008)
@@ -7,6 +7,8 @@
 // http://www.boost.org/LICENSE_1_0.txt)
 
 // See http://www.boost.org for updates, documentation, and revision history.
+#ifndef BOOST_ARCHIVE_IMPL_BASIC_TEXT_IPRIMITIVE_IPP_INCLUDED
+#define BOOST_ARCHIVE_IMPL_BASIC_TEXT_IPRIMITIVE_IPP_INCLUDED
 
 #include <cstddef> // size_t
 
@@ -121,3 +123,4 @@
 
 } // namespace archive
 } // namespace boost
+#endif

Modified: sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_text_oarchive.ipp
==============================================================================
--- sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_text_oarchive.ipp (original)
+++ sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_text_oarchive.ipp 2008-11-02 02:38:52 EST (Sun, 02 Nov 2008)
@@ -7,6 +7,8 @@
 // http://www.boost.org/LICENSE_1_0.txt)
 
 // See http://www.boost.org for updates, documentation, and revision history.
+#ifndef BOOST_ARCHIVE_IMPL_BASIC_TEXT_OARCHIVE_IPP_INCLUDED
+#define BOOST_ARCHIVE_IMPL_BASIC_TEXT_OARCHIVE_IPP_INCLUDED
 #include <string>
 #include <cassert>
 #include <cstring>
@@ -60,3 +62,4 @@
 
 } // namespace archive
 } // namespace boost
+#endif

Modified: sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_text_oprimitive.ipp
==============================================================================
--- sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_text_oprimitive.ipp (original)
+++ sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_text_oprimitive.ipp 2008-11-02 02:38:52 EST (Sun, 02 Nov 2008)
@@ -8,6 +8,8 @@
 
 // See http://www.boost.org for updates, documentation, and revision history.
 
+#ifndef BOOST_ARCHIVE_IMPL_BASIC_TEXT_OPRIMITIVE_IPP_INCLUDED
+#define BOOST_ARCHIVE_IMPL_BASIC_TEXT_OPRIMITIVE_IPP_INCLUDED
 #include <boost/pfto.hpp>
 
 #include <boost/archive/basic_text_oprimitive.hpp>
@@ -101,3 +103,4 @@
 
 } //namespace boost
 } //namespace archive
+#endif

Modified: sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_xml_iarchive.ipp
==============================================================================
--- sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_xml_iarchive.ipp (original)
+++ sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_xml_iarchive.ipp 2008-11-02 02:38:52 EST (Sun, 02 Nov 2008)
@@ -8,6 +8,8 @@
 
 // See http://www.boost.org for updates, documentation, and revision history.
 
+#ifndef BOOST_ARCHIVE_IMPL_BASIC_XML_IARCHIVE_IPP_INCLUDED
+#define BOOST_ARCHIVE_IMPL_BASIC_XML_IARCHIVE_IPP_INCLUDED
 #include <cassert>
 #include <algorithm>
 
@@ -109,3 +111,4 @@
 
 } // namespace archive
 } // namespace boost
+#endif

Modified: sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_xml_oarchive.ipp
==============================================================================
--- sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_xml_oarchive.ipp (original)
+++ sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/basic_xml_oarchive.ipp 2008-11-02 02:38:52 EST (Sun, 02 Nov 2008)
@@ -8,6 +8,8 @@
 
 // See http://www.boost.org for updates, documentation, and revision history.
 
+#ifndef BOOST_ARCHIVE_IMPL_BASIC_XML_OARCHIVE_IPP_INCLUDED
+#define BOOST_ARCHIVE_IMPL_BASIC_XML_OARCHIVE_IPP_INCLUDED
 #include <algorithm>
 #include <cstring>
 #if defined(BOOST_NO_STDC_NAMESPACE) && ! defined(__LIBCOMO__)
@@ -267,3 +269,4 @@
 
 } // namespace archive
 } // namespace boost
+#endif
\ No newline at end of file

Modified: sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/text_iarchive_impl.ipp
==============================================================================
--- sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/text_iarchive_impl.ipp (original)
+++ sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/text_iarchive_impl.ipp 2008-11-02 02:38:52 EST (Sun, 02 Nov 2008)
@@ -12,6 +12,8 @@
 // implementation of basic_text_iprimitive overrides for the combination
 // of template parameters used to implement a text_iprimitive
 
+#ifndef BOOST_ARCHIVE_IMPL_TEXT_IARCHIVE_IMPL_IPP_INCLUDED
+#define BOOST_ARCHIVE_IMPL_TEXT_IARCHIVE_IMPL_IPP_INCLUDED
 #include <cstddef> // size_t
 #include <boost/config.hpp>
 #if defined(BOOST_NO_STDC_NAMESPACE)
@@ -125,3 +127,4 @@
 
 } // namespace archive
 } // namespace boost
+#endif

Modified: sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/text_oarchive_impl.ipp
==============================================================================
--- sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/text_oarchive_impl.ipp (original)
+++ sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/text_oarchive_impl.ipp 2008-11-02 02:38:52 EST (Sun, 02 Nov 2008)
@@ -8,6 +8,8 @@
 
 // See http://www.boost.org for updates, documentation, and revision history.
 
+#ifndef BOOST_ARCHIVE_IMPL_TEXT_OARCHIVE_IMPL_IPP_INCLUDED
+#define BOOST_ARCHIVE_IMPL_TEXT_OARCHIVE_IMPL_IPP_INCLUDED
 #include <string>
 #include <boost/config.hpp>
 #include <locale>
@@ -122,3 +124,4 @@
 } // namespace archive
 } // namespace boost
 
+#endif

Modified: sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/text_wiarchive_impl.ipp
==============================================================================
--- sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/text_wiarchive_impl.ipp (original)
+++ sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/text_wiarchive_impl.ipp 2008-11-02 02:38:52 EST (Sun, 02 Nov 2008)
@@ -8,6 +8,8 @@
 
 // See http://www.boost.org for updates, documentation, and revision history.
 
+#ifndef BOOST_ARCHIVE_IMPL_TEXT_WIARCHIVE_IMPL_IPP_INCLUDED
+#define BOOST_ARCHIVE_IMPL_TEXT_WIARCHIVE_IMPL_IPP_INCLUDED
 #include <cstddef> // size_t
 
 #include <boost/config.hpp>
@@ -116,3 +118,4 @@
 } // boost
 
 #endif // BOOST_NO_STD_WSTREAMBUF
+#endif

Modified: sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/text_woarchive_impl.ipp
==============================================================================
--- sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/text_woarchive_impl.ipp (original)
+++ sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/text_woarchive_impl.ipp 2008-11-02 02:38:52 EST (Sun, 02 Nov 2008)
@@ -8,6 +8,8 @@
 
 // See http://www.boost.org for updates, documentation, and revision history.
 
+#ifndef BOOST_ARCHIVE_IMPL_TEXT_WOARCHIVE_IMPL_IPP_INCLUDED
+#define BOOST_ARCHIVE_IMPL_TEXT_WOARCHIVE_IMPL_IPP_INCLUDED
 #include <boost/config.hpp>
 #ifndef BOOST_NO_STD_WSTREAMBUF
 
@@ -82,4 +84,4 @@
 } // namespace boost
 
 #endif
-
+#endif

Modified: sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/xml_iarchive_impl.ipp
==============================================================================
--- sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/xml_iarchive_impl.ipp (original)
+++ sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/xml_iarchive_impl.ipp 2008-11-02 02:38:52 EST (Sun, 02 Nov 2008)
@@ -8,6 +8,8 @@
 
 // See http://www.boost.org for updates, documentation, and revision history.
 
+#ifndef BOOST_ARCHIVE_IMPL_XML_IARCHIVE_IMPL_IPP_INCLUDED
+#define BOOST_ARCHIVE_IMPL_XML_IARCHIVE_IMPL_IPP_INCLUDED
 #include <boost/config.hpp>
 #include <cstring> // memcpy
 #if defined(BOOST_NO_STDC_NAMESPACE)
@@ -197,3 +199,4 @@
 }
 } // namespace archive
 } // namespace boost
+#endif

Modified: sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/xml_oarchive_impl.ipp
==============================================================================
--- sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/xml_oarchive_impl.ipp (original)
+++ sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/xml_oarchive_impl.ipp 2008-11-02 02:38:52 EST (Sun, 02 Nov 2008)
@@ -6,6 +6,8 @@
 // accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
 
+#ifndef BOOST_ARCHIVE_IMPL_XML_OARCHIVE_IMPL_IPP_INCLUDED
+#define BOOST_ARCHIVE_IMPL_XML_OARCHIVE_IMPL_IPP_INCLUDED
 #include <ostream>
 #include <iomanip>
 #include <algorithm>
@@ -115,3 +117,4 @@
 
 } // namespace archive
 } // namespace boost
+#endif

Modified: sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/xml_wiarchive_impl.ipp
==============================================================================
--- sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/xml_wiarchive_impl.ipp (original)
+++ sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/xml_wiarchive_impl.ipp 2008-11-02 02:38:52 EST (Sun, 02 Nov 2008)
@@ -8,6 +8,8 @@
 
 // See http://www.boost.org for updates, documentation, and revision history.
 
+#ifndef BOOST_ARCHIVE_IMPL_XML_WIARCHIVE_IMPL_IPP_INCLUDED
+#define BOOST_ARCHIVE_IMPL_XML_WIARCHIVE_IMPL_IPP_INCLUDED
 #include <boost/config.hpp> // for BOOST_DEDUCED_TYPENAME
 
 #include <cstring>
@@ -200,3 +202,4 @@
 } // namespace boost
 
 #endif // BOOST_NO_STD_WSTREAMBUF
+#endif

Modified: sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/xml_woarchive_impl.ipp
==============================================================================
--- sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/xml_woarchive_impl.ipp (original)
+++ sandbox/compile-in-place/Boost_1_35_0/boost/archive/impl/xml_woarchive_impl.ipp 2008-11-02 02:38:52 EST (Sun, 02 Nov 2008)
@@ -6,6 +6,8 @@
 // accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
 
+#ifndef BOOST_ARCHIVE_IMPL_XML_WOARCHIVE_IMPL_IPP_INCLUDED
+#define BOOST_ARCHIVE_IMPL_XML_WOARCHIVE_IMPL_IPP_INCLUDED
 #include <boost/config.hpp>
 #ifndef BOOST_NO_STD_WSTREAMBUF
 
@@ -157,3 +159,4 @@
 } // namespace boost
 
 #endif //BOOST_NO_STD_WSTREAMBUF
+#endif

Added: sandbox/compile-in-place/Boost_1_35_0/boost/serialization/compile_in_place.cpp
==============================================================================
--- (empty file)
+++ sandbox/compile-in-place/Boost_1_35_0/boost/serialization/compile_in_place.cpp 2008-11-02 02:38:52 EST (Sun, 02 Nov 2008)
@@ -0,0 +1,53 @@
+/* compile in-place support for Boost.Serialization
+
+Copyright 2008 Ulrich Eckhardt
+
+Distributed under the Boost Software License, Version 1.0. (See accompanying
+file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+*/
+// $Id$
+
+// This file must not be included more than once. Note that this 'once' is
+// not per translation unit but per binary! Never include this in a header!
+#ifdef BOOST_SERIALIZATION_COMPILE_IN_PLACE_CPP_INCLUDED
+# error "this file should only be included once per binary"
+#endif
+
+#define BOOST_SERIALIZATION_COMPILE_IN_PLACE_CPP_INCLUDED
+#include "../../libs/serialization/src/basic_archive.cpp"
+#include "../../libs/serialization/src/basic_iarchive.cpp"
+#include "../../libs/serialization/src/basic_iserializer.cpp"
+#include "../../libs/serialization/src/basic_oarchive.cpp"
+#include "../../libs/serialization/src/basic_oserializer.cpp"
+#include "../../libs/serialization/src/basic_pointer_iserializer.cpp"
+#include "../../libs/serialization/src/basic_pointer_oserializer.cpp"
+#include "../../libs/serialization/src/basic_serializer_map.cpp"
+#include "../../libs/serialization/src/basic_text_iprimitive.cpp"
+#include "../../libs/serialization/src/basic_text_oprimitive.cpp"
+#include "../../libs/serialization/src/basic_text_wiprimitive.cpp"
+#include "../../libs/serialization/src/basic_text_woprimitive.cpp"
+#include "../../libs/serialization/src/basic_xml_archive.cpp"
+#include "../../libs/serialization/src/basic_xml_grammar.ipp"
+#include "../../libs/serialization/src/binary_iarchive.cpp"
+#include "../../libs/serialization/src/binary_oarchive.cpp"
+#include "../../libs/serialization/src/binary_wiarchive.cpp"
+#include "../../libs/serialization/src/binary_woarchive.cpp"
+#include "../../libs/serialization/src/codecvt_null.cpp"
+#include "../../libs/serialization/src/extended_type_info.cpp"
+#include "../../libs/serialization/src/extended_type_info_no_rtti.cpp"
+#include "../../libs/serialization/src/extended_type_info_typeid.cpp"
+#include "../../libs/serialization/src/polymorphic_iarchive.cpp"
+#include "../../libs/serialization/src/polymorphic_oarchive.cpp"
+#include "../../libs/serialization/src/stl_port.cpp"
+#include "../../libs/serialization/src/text_iarchive.cpp"
+#include "../../libs/serialization/src/text_oarchive.cpp"
+#include "../../libs/serialization/src/text_wiarchive.cpp"
+#include "../../libs/serialization/src/text_woarchive.cpp"
+#include "../../libs/serialization/src/utf8_codecvt_facet.cpp"
+#include "../../libs/serialization/src/void_cast.cpp"
+#include "../../libs/serialization/src/xml_grammar.cpp"
+#include "../../libs/serialization/src/xml_iarchive.cpp"
+#include "../../libs/serialization/src/xml_oarchive.cpp"
+#include "../../libs/serialization/src/xml_wgrammar.cpp"
+#include "../../libs/serialization/src/xml_wiarchive.cpp"
+#include "../../libs/serialization/src/xml_woarchive.cpp"

Added: sandbox/compile-in-place/test-serialization.cpp
==============================================================================
--- (empty file)
+++ sandbox/compile-in-place/test-serialization.cpp 2008-11-02 02:38:52 EST (Sun, 02 Nov 2008)
@@ -0,0 +1,39 @@
+/* example to demonstrate compile-in-place for Boost.Serialization
+
+Compile with
+ $CXX -I path/to/boost_X_YY_Z test-serialization.cpp
+
+Notes:
+
+$Id$
+*/
+
+#include <sstream>
+#include <boost/archive/text_iarchive.hpp>
+#include <boost/archive/text_oarchive.hpp>
+
+int main()
+{
+ // data to store
+ std::string str = "Hello World!";
+ int answer = 42;
+ // stream for storage
+ std::stringstream s;
+ {
+ // write data
+ boost::archive::text_oarchive oa(s);
+ oa << str << answer;
+ }
+ {
+ // read back data
+ boost::archive::text_iarchive ia(s);
+ ia >> str >> answer;
+ }
+ // verify results
+ assert(str=="Hello World!");
+ assert(answer=42);
+
+ return 0;
+}
+
+#include <boost/serialization/compile_in_place.cpp>


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk