summaryrefslogtreecommitdiffstats
path: root/meta/recipes-support/boost/files
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-support/boost/files')
-rw-r--r--meta/recipes-support/boost/files/1.34.1-gcc43.patch224
-rw-r--r--meta/recipes-support/boost/files/arm-intrinsics.patch53
-rw-r--r--meta/recipes-support/boost/files/atomic_count_gcc_atomicity.patch13
-rw-r--r--meta/recipes-support/boost/files/gcc41.patch14
-rw-r--r--meta/recipes-support/boost/files/gcc43.patch256
-rw-r--r--meta/recipes-support/boost/files/linux-uclibc.patch10
-rw-r--r--meta/recipes-support/boost/files/unit_test_log10f.patch20
7 files changed, 590 insertions, 0 deletions
diff --git a/meta/recipes-support/boost/files/1.34.1-gcc43.patch b/meta/recipes-support/boost/files/1.34.1-gcc43.patch
new file mode 100644
index 0000000000..4670ac4295
--- /dev/null
+++ b/meta/recipes-support/boost/files/1.34.1-gcc43.patch
@@ -0,0 +1,224 @@
1Index: boost_1_34_1/boost/archive/polymorphic_iarchive.hpp
2===================================================================
3--- boost_1_34_1.orig/boost/archive/polymorphic_iarchive.hpp 2005-12-11 07:12:51.000000000 +0100
4+++ boost_1_34_1/boost/archive/polymorphic_iarchive.hpp 2008-09-20 20:55:21.000000000 +0200
5@@ -17,6 +17,7 @@
6 // See http://www.boost.org for updates, documentation, and revision history.
7
8 #include <cstddef> // std::size_t
9+#include <climits>
10 #include <boost/config.hpp>
11
12 #if defined(BOOST_NO_STDC_NAMESPACE)
13Index: boost_1_34_1/boost/archive/polymorphic_oarchive.hpp
14===================================================================
15--- boost_1_34_1.orig/boost/archive/polymorphic_oarchive.hpp 2006-02-12 06:43:06.000000000 +0100
16+++ boost_1_34_1/boost/archive/polymorphic_oarchive.hpp 2008-09-20 20:55:21.000000000 +0200
17@@ -17,6 +17,7 @@
18 // See http://www.boost.org for updates, documentation, and revision history.
19
20 #include <cstddef> // size_t
21+#include <climits>
22 #include <string>
23
24 #include <boost/config.hpp>
25Index: boost_1_34_1/boost/date_time/date_facet.hpp
26===================================================================
27--- boost_1_34_1.orig/boost/date_time/date_facet.hpp 2005-09-05 23:10:50.000000000 +0200
28+++ boost_1_34_1/boost/date_time/date_facet.hpp 2008-09-20 20:55:21.000000000 +0200
29@@ -429,7 +429,7 @@
30 typedef std::basic_string<CharT> string_type;
31 typedef CharT char_type;
32 typedef boost::date_time::period_parser<date_type, CharT> period_parser_type;
33- typedef special_values_parser<date_type,CharT> special_values_parser_type;
34+ typedef boost::date_time::special_values_parser<date_type,CharT> special_values_parser_type;
35 typedef std::vector<std::basic_string<CharT> > input_collection_type;
36 typedef format_date_parser<date_type, CharT> format_date_parser_type;
37 // date_generators stuff goes here
38Index: boost_1_34_1/boost/mpl/zip_view.hpp
39===================================================================
40--- boost_1_34_1.orig/boost/mpl/zip_view.hpp 2004-09-02 17:40:42.000000000 +0200
41+++ boost_1_34_1/boost/mpl/zip_view.hpp 2008-09-20 20:55:21.000000000 +0200
42@@ -37,7 +37,7 @@
43 typedef zip_iterator<
44 typename transform1<
45 IteratorSeq
46- , next<_1>
47+ , boost::mpl::next<_1>
48 >::type
49 > next;
50 };
51@@ -48,8 +48,8 @@
52 struct zip_view
53 {
54 private:
55- typedef typename transform1< Sequences, begin<_1> >::type first_ones_;
56- typedef typename transform1< Sequences, end<_1> >::type last_ones_;
57+ typedef typename transform1< Sequences, boost::mpl::begin<_1> >::type first_ones_;
58+ typedef typename transform1< Sequences, boost::mpl::end<_1> >::type last_ones_;
59
60 public:
61 typedef nested_begin_end_tag tag;
62Index: boost_1_34_1/boost/python/detail/def_helper.hpp
63===================================================================
64--- boost_1_34_1.orig/boost/python/detail/def_helper.hpp 2004-09-16 03:00:28.000000000 +0200
65+++ boost_1_34_1/boost/python/detail/def_helper.hpp 2008-09-20 20:55:21.000000000 +0200
66@@ -155,7 +155,7 @@
67 , T3 const&
68 , T4 const&
69 , default_call_policies
70- , keywords<0>
71+ , boost::python::detail::keywords<0>
72 , char const*
73 , void(not_specified::*)() // A function pointer type which is never an
74 // appropriate default implementation
75Index: boost_1_34_1/boost/regex/v4/basic_regex_creator.hpp
76===================================================================
77--- boost_1_34_1.orig/boost/regex/v4/basic_regex_creator.hpp 2006-07-16 18:06:38.000000000 +0200
78+++ boost_1_34_1/boost/regex/v4/basic_regex_creator.hpp 2008-09-20 20:55:21.000000000 +0200
79@@ -24,6 +24,8 @@
80 # include BOOST_ABI_PREFIX
81 #endif
82
83+#include <climits>
84+
85 namespace boost{
86
87 namespace re_detail{
88Index: boost_1_34_1/boost/regex/v4/basic_regex.hpp
89===================================================================
90--- boost_1_34_1.orig/boost/regex/v4/basic_regex.hpp 2007-06-05 19:28:18.000000000 +0200
91+++ boost_1_34_1/boost/regex/v4/basic_regex.hpp 2008-09-20 20:55:21.000000000 +0200
92@@ -23,6 +23,8 @@
93 # include BOOST_ABI_PREFIX
94 #endif
95
96+#include <climits>
97+
98 namespace boost{
99 #ifdef BOOST_MSVC
100 #pragma warning(push)
101Index: boost_1_34_1/boost/regex/v4/basic_regex_parser.hpp
102===================================================================
103--- boost_1_34_1.orig/boost/regex/v4/basic_regex_parser.hpp 2006-12-20 18:19:05.000000000 +0100
104+++ boost_1_34_1/boost/regex/v4/basic_regex_parser.hpp 2008-09-20 20:55:21.000000000 +0200
105@@ -23,6 +23,8 @@
106 # include BOOST_ABI_PREFIX
107 #endif
108
109+#include <climits>
110+
111 namespace boost{
112 namespace re_detail{
113
114Index: boost_1_34_1/boost/regex/v4/cpp_regex_traits.hpp
115===================================================================
116--- boost_1_34_1.orig/boost/regex/v4/cpp_regex_traits.hpp 2007-01-15 12:09:44.000000000 +0100
117+++ boost_1_34_1/boost/regex/v4/cpp_regex_traits.hpp 2008-09-20 20:55:21.000000000 +0200
118@@ -41,6 +41,7 @@
119
120 #include <istream>
121 #include <ios>
122+#include <climits>
123
124 #ifdef BOOST_HAS_ABI_HEADERS
125 # include BOOST_ABI_PREFIX
126Index: boost_1_34_1/boost/regex/v4/perl_matcher.hpp
127===================================================================
128--- boost_1_34_1.orig/boost/regex/v4/perl_matcher.hpp 2006-10-18 14:55:30.000000000 +0200
129+++ boost_1_34_1/boost/regex/v4/perl_matcher.hpp 2008-09-20 20:55:21.000000000 +0200
130@@ -18,6 +18,8 @@
131 # include BOOST_ABI_PREFIX
132 #endif
133
134+#include <climits>
135+
136 namespace boost{
137 namespace re_detail{
138
139Index: boost_1_34_1/boost/regex/v4/regex_split.hpp
140===================================================================
141--- boost_1_34_1.orig/boost/regex/v4/regex_split.hpp 2005-01-21 18:22:38.000000000 +0100
142+++ boost_1_34_1/boost/regex/v4/regex_split.hpp 2008-09-20 20:55:21.000000000 +0200
143@@ -21,6 +21,8 @@
144 #ifndef BOOST_REGEX_SPLIT_HPP
145 #define BOOST_REGEX_SPLIT_HPP
146
147+#include <climits>
148+
149 namespace boost{
150
151 #ifdef BOOST_HAS_ABI_HEADERS
152Index: boost_1_34_1/boost/regex/v4/states.hpp
153===================================================================
154--- boost_1_34_1.orig/boost/regex/v4/states.hpp 2005-09-20 14:01:25.000000000 +0200
155+++ boost_1_34_1/boost/regex/v4/states.hpp 2008-09-20 20:55:21.000000000 +0200
156@@ -23,6 +23,8 @@
157 # include BOOST_ABI_PREFIX
158 #endif
159
160+#include <climits>
161+
162 namespace boost{
163 namespace re_detail{
164
165Index: boost_1_34_1/boost/serialization/collection_traits.hpp
166===================================================================
167--- boost_1_34_1.orig/boost/serialization/collection_traits.hpp 2005-06-21 07:19:04.000000000 +0200
168+++ boost_1_34_1/boost/serialization/collection_traits.hpp 2008-09-20 20:55:21.000000000 +0200
169@@ -22,6 +22,7 @@
170 // compiles recognize the same set of primitive types, the possibility
171 // exists for archives to be non-portable if class information for primitive
172 // types is included. This is addressed by the following macros.
173+#include <climits>
174 #include <boost/config.hpp>
175 #include <boost/mpl/integral_c.hpp>
176 #include <boost/mpl/integral_c_tag.hpp>
177Index: boost_1_34_1/boost/spirit/phoenix/operators.hpp
178===================================================================
179--- boost_1_34_1.orig/boost/spirit/phoenix/operators.hpp 2006-08-25 18:27:30.000000000 +0200
180+++ boost_1_34_1/boost/spirit/phoenix/operators.hpp 2008-09-20 20:55:21.000000000 +0200
181@@ -24,6 +24,7 @@
182 #include <boost/spirit/phoenix/composite.hpp>
183 #include <boost/config.hpp>
184 #include <boost/mpl/if.hpp>
185+#include <climits>
186
187 ///////////////////////////////////////////////////////////////////////////////
188 namespace phoenix {
189Index: boost_1_34_1/boost/test/test_tools.hpp
190===================================================================
191--- boost_1_34_1.orig/boost/test/test_tools.hpp 2007-02-22 18:57:29.000000000 +0100
192+++ boost_1_34_1/boost/test/test_tools.hpp 2008-09-20 20:55:21.000000000 +0200
193@@ -42,6 +42,7 @@
194 #include <boost/mpl/or.hpp>
195
196 // STL
197+#include <climits>
198 #include <cstddef> // for std::size_t
199 #include <iosfwd>
200
201Index: boost_1_34_1/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp
202===================================================================
203--- boost_1_34_1.orig/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp 2006-12-20 17:38:24.000000000 +0100
204+++ boost_1_34_1/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp 2008-09-20 20:55:21.000000000 +0200
205@@ -16,6 +16,7 @@
206 #include <string>
207 #include <cstdio>
208 #include <cstdarg>
209+#include <cstring>
210 #if defined(BOOST_SPIRIT_DEBUG)
211 #include <iostream>
212 #endif // defined(BOOST_SPIRIT_DEBUG)
213Index: boost_1_34_1/boost/wave/util/flex_string.hpp
214===================================================================
215--- boost_1_34_1.orig/boost/wave/util/flex_string.hpp 2006-04-25 19:21:01.000000000 +0200
216+++ boost_1_34_1/boost/wave/util/flex_string.hpp 2008-09-20 20:55:21.000000000 +0200
217@@ -94,6 +94,7 @@
218 #include <limits>
219 #include <stdexcept>
220 #include <cstddef>
221+#include <cstring>
222
223 // this must occur after all of the includes and before any code appears
224 #ifdef BOOST_HAS_ABI_HEADERS
diff --git a/meta/recipes-support/boost/files/arm-intrinsics.patch b/meta/recipes-support/boost/files/arm-intrinsics.patch
new file mode 100644
index 0000000000..3f9c620ebe
--- /dev/null
+++ b/meta/recipes-support/boost/files/arm-intrinsics.patch
@@ -0,0 +1,53 @@
18/17/2010 - rebased to 1.44 by Qing He <qing.he@intel.com>
2
3diff --git a/boost/smart_ptr/detail/atomic_count_sync.hpp b/boost/smart_ptr/detail/atomic_count_sync.hpp
4index b6359b5..78b1cc2 100644
5--- a/boost/smart_ptr/detail/atomic_count_sync.hpp
6+++ b/boost/smart_ptr/detail/atomic_count_sync.hpp
7@@ -33,17 +33,46 @@ public:
8
9 long operator++()
10 {
11+#ifdef __ARM_ARCH_7A__
12+ int v1, tmp;
13+ asm volatile ("1: \n\t"
14+ "ldrex %0, %1 \n\t"
15+ "add %0 ,%0, #1 \n\t"
16+ "strex %2, %0, %1 \n\t"
17+ "cmp %2, #0 \n\t"
18+ "bne 1b \n\t"
19+ : "=&r" (v1), "+Q"(value_), "=&r"(tmp)
20+ );
21+#else
22 return __sync_add_and_fetch( &value_, 1 );
23+#endif
24 }
25
26 long operator--()
27 {
28+#ifdef __ARM_ARCH_7A__
29+ int v1, tmp;
30+ asm volatile ("1: \n\t"
31+ "ldrex %0, %1 \n\t"
32+ "sub %0 ,%0, #1 \n\t"
33+ "strex %2, %0, %1 \n\t"
34+ "cmp %2, #0 \n\t"
35+ "bne 1b \n\t"
36+ : "=&r" (v1), "+Q"(value_), "=&r"(tmp)
37+ );
38+ return value_;
39+#else
40 return __sync_add_and_fetch( &value_, -1 );
41+#endif
42 }
43
44 operator long() const
45 {
46+#if __ARM_ARCH_7A__
47+ return value_;
48+#else
49 return __sync_fetch_and_add( &value_, 0 );
50+#endif
51 }
52
53 private:
diff --git a/meta/recipes-support/boost/files/atomic_count_gcc_atomicity.patch b/meta/recipes-support/boost/files/atomic_count_gcc_atomicity.patch
new file mode 100644
index 0000000000..7d08e73550
--- /dev/null
+++ b/meta/recipes-support/boost/files/atomic_count_gcc_atomicity.patch
@@ -0,0 +1,13 @@
1Index: boost_1_33_1/boost/detail/atomic_count_gcc.hpp
2===================================================================
3--- boost_1_33_1.orig/boost/detail/atomic_count_gcc.hpp 2008-05-01 20:43:45.000000000 +0200
4+++ boost_1_33_1/boost/detail/atomic_count_gcc.hpp 2008-05-01 20:43:55.000000000 +0200
5@@ -17,7 +17,7 @@
6 // http://www.boost.org/LICENSE_1_0.txt)
7 //
8
9-#include <bits/atomicity.h>
10+#include <ext/atomicity.h>
11
12 namespace boost
13 {
diff --git a/meta/recipes-support/boost/files/gcc41.patch b/meta/recipes-support/boost/files/gcc41.patch
new file mode 100644
index 0000000000..f91d1adf2b
--- /dev/null
+++ b/meta/recipes-support/boost/files/gcc41.patch
@@ -0,0 +1,14 @@
1diff -ur boost_1_33_1.orig/boost/bind.hpp boost_1_33_1/boost/bind.hpp
2--- boost_1_33_1.orig/boost/bind.hpp 2008-10-11 10:30:03.000000000 +0200
3+++ boost_1_33_1/boost/bind.hpp 2008-10-11 10:41:25.000000000 +0200
4@@ -28,6 +28,10 @@
5 #include <boost/bind/arg.hpp>
6 #include <boost/detail/workaround.hpp>
7
8+#if __GNUC__ == 4 && __GNUC_MINOR__ == 1
9+# include <boost/visit_each.hpp>
10+#endif
11+
12 // Borland-specific bug, visit_each() silently fails to produce code
13
14 #if defined(__BORLANDC__)
diff --git a/meta/recipes-support/boost/files/gcc43.patch b/meta/recipes-support/boost/files/gcc43.patch
new file mode 100644
index 0000000000..aefe0800c3
--- /dev/null
+++ b/meta/recipes-support/boost/files/gcc43.patch
@@ -0,0 +1,256 @@
1diff -aNru boost_1_34_1-ORIGINAL/boost/archive/polymorphic_iarchive.hpp boost_1_34_1/boost/archive/polymorphic_iarchive.hpp
2--- boost_1_34_1-ORIGINAL/boost/archive/polymorphic_iarchive.hpp 2005-12-11 00:12:51.000000000 -0600
3+++ boost_1_34_1/boost/archive/polymorphic_iarchive.hpp 2008-03-03 03:08:59.000000000 -0600
4@@ -17,6 +17,7 @@
5 // See http://www.boost.org for updates, documentation, and revision history.
6
7 #include <cstddef> // std::size_t
8+#include <climits>
9 #include <boost/config.hpp>
10
11 #if defined(BOOST_NO_STDC_NAMESPACE)
12diff -aNru boost_1_34_1-ORIGINAL/boost/archive/polymorphic_oarchive.hpp boost_1_34_1/boost/archive/polymorphic_oarchive.hpp
13--- boost_1_34_1-ORIGINAL/boost/archive/polymorphic_oarchive.hpp 2006-02-11 23:43:06.000000000 -0600
14+++ boost_1_34_1/boost/archive/polymorphic_oarchive.hpp 2008-03-03 03:08:59.000000000 -0600
15@@ -17,6 +17,7 @@
16 // See http://www.boost.org for updates, documentation, and revision history.
17
18 #include <cstddef> // size_t
19+#include <climits>
20 #include <string>
21
22 #include <boost/config.hpp>
23diff -aNru boost_1_34_1-ORIGINAL/boost/date_time/date_facet.hpp boost_1_34_1/boost/date_time/date_facet.hpp
24--- boost_1_34_1-ORIGINAL/boost/date_time/date_facet.hpp 2005-09-05 16:10:50.000000000 -0500
25+++ boost_1_34_1/boost/date_time/date_facet.hpp 2008-03-03 03:08:59.000000000 -0600
26@@ -429,7 +429,7 @@
27 typedef std::basic_string<CharT> string_type;
28 typedef CharT char_type;
29 typedef boost::date_time::period_parser<date_type, CharT> period_parser_type;
30- typedef special_values_parser<date_type,CharT> special_values_parser_type;
31+ typedef boost::date_time::special_values_parser<date_type,CharT> special_values_parser_type;
32 typedef std::vector<std::basic_string<CharT> > input_collection_type;
33 typedef format_date_parser<date_type, CharT> format_date_parser_type;
34 // date_generators stuff goes here
35diff -aNru boost_1_34_1-ORIGINAL/boost/mpl/zip_view.hpp boost_1_34_1/boost/mpl/zip_view.hpp
36--- boost_1_34_1-ORIGINAL/boost/mpl/zip_view.hpp 2004-09-02 10:40:42.000000000 -0500
37+++ boost_1_34_1/boost/mpl/zip_view.hpp 2008-03-03 03:08:59.000000000 -0600
38@@ -37,7 +37,7 @@
39 typedef zip_iterator<
40 typename transform1<
41 IteratorSeq
42- , next<_1>
43+ , boost::mpl::next<_1>
44 >::type
45 > next;
46 };
47@@ -48,8 +48,8 @@
48 struct zip_view
49 {
50 private:
51- typedef typename transform1< Sequences, begin<_1> >::type first_ones_;
52- typedef typename transform1< Sequences, end<_1> >::type last_ones_;
53+ typedef typename transform1< Sequences, boost::mpl::begin<_1> >::type first_ones_;
54+ typedef typename transform1< Sequences, boost::mpl::end<_1> >::type last_ones_;
55
56 public:
57 typedef nested_begin_end_tag tag;
58diff -aNru boost_1_34_1-ORIGINAL/boost/python/detail/def_helper.hpp boost_1_34_1/boost/python/detail/def_helper.hpp
59--- boost_1_34_1-ORIGINAL/boost/python/detail/def_helper.hpp 2004-09-15 20:00:28.000000000 -0500
60+++ boost_1_34_1/boost/python/detail/def_helper.hpp 2008-03-03 03:08:59.000000000 -0600
61@@ -155,7 +155,7 @@
62 , T3 const&
63 , T4 const&
64 , default_call_policies
65- , keywords<0>
66+ , boost::python::detail::keywords<0>
67 , char const*
68 , void(not_specified::*)() // A function pointer type which is never an
69 // appropriate default implementation
70diff -aNru boost_1_34_1-ORIGINAL/boost/regex/v4/basic_regex_creator.hpp boost_1_34_1/boost/regex/v4/basic_regex_creator.hpp
71--- boost_1_34_1-ORIGINAL/boost/regex/v4/basic_regex_creator.hpp 2006-07-16 11:06:38.000000000 -0500
72+++ boost_1_34_1/boost/regex/v4/basic_regex_creator.hpp 2008-03-03 03:08:59.000000000 -0600
73@@ -24,6 +24,8 @@
74 # include BOOST_ABI_PREFIX
75 #endif
76
77+#include <climits>
78+
79 namespace boost{
80
81 namespace re_detail{
82diff -aNru boost_1_34_1-ORIGINAL/boost/regex/v4/basic_regex.hpp boost_1_34_1/boost/regex/v4/basic_regex.hpp
83--- boost_1_34_1-ORIGINAL/boost/regex/v4/basic_regex.hpp 2007-06-05 12:28:18.000000000 -0500
84+++ boost_1_34_1/boost/regex/v4/basic_regex.hpp 2008-03-03 03:08:59.000000000 -0600
85@@ -23,6 +23,8 @@
86 # include BOOST_ABI_PREFIX
87 #endif
88
89+#include <climits>
90+
91 namespace boost{
92 #ifdef BOOST_MSVC
93 #pragma warning(push)
94diff -aNru boost_1_34_1-ORIGINAL/boost/regex/v4/basic_regex_parser.hpp boost_1_34_1/boost/regex/v4/basic_regex_parser.hpp
95--- boost_1_34_1-ORIGINAL/boost/regex/v4/basic_regex_parser.hpp 2006-12-20 11:19:05.000000000 -0600
96+++ boost_1_34_1/boost/regex/v4/basic_regex_parser.hpp 2008-03-03 03:08:59.000000000 -0600
97@@ -23,6 +23,8 @@
98 # include BOOST_ABI_PREFIX
99 #endif
100
101+#include <climits>
102+
103 namespace boost{
104 namespace re_detail{
105
106diff -aNru boost_1_34_1-ORIGINAL/boost/regex/v4/cpp_regex_traits.hpp boost_1_34_1/boost/regex/v4/cpp_regex_traits.hpp
107--- boost_1_34_1-ORIGINAL/boost/regex/v4/cpp_regex_traits.hpp 2007-01-15 05:09:44.000000000 -0600
108+++ boost_1_34_1/boost/regex/v4/cpp_regex_traits.hpp 2008-03-03 03:08:59.000000000 -0600
109@@ -41,6 +41,7 @@
110
111 #include <istream>
112 #include <ios>
113+#include <climits>
114
115 #ifdef BOOST_HAS_ABI_HEADERS
116 # include BOOST_ABI_PREFIX
117diff -aNru boost_1_34_1-ORIGINAL/boost/regex/v4/perl_matcher.hpp boost_1_34_1/boost/regex/v4/perl_matcher.hpp
118--- boost_1_34_1-ORIGINAL/boost/regex/v4/perl_matcher.hpp 2006-10-18 07:55:30.000000000 -0500
119+++ boost_1_34_1/boost/regex/v4/perl_matcher.hpp 2008-03-03 03:08:59.000000000 -0600
120@@ -18,6 +18,8 @@
121 # include BOOST_ABI_PREFIX
122 #endif
123
124+#include <climits>
125+
126 namespace boost{
127 namespace re_detail{
128
129diff -aNru boost_1_34_1-ORIGINAL/boost/regex/v4/regex_split.hpp boost_1_34_1/boost/regex/v4/regex_split.hpp
130--- boost_1_34_1-ORIGINAL/boost/regex/v4/regex_split.hpp 2005-01-21 11:22:38.000000000 -0600
131+++ boost_1_34_1/boost/regex/v4/regex_split.hpp 2008-03-03 03:08:59.000000000 -0600
132@@ -21,6 +21,8 @@
133 #ifndef BOOST_REGEX_SPLIT_HPP
134 #define BOOST_REGEX_SPLIT_HPP
135
136+#include <climits>
137+
138 namespace boost{
139
140 #ifdef BOOST_HAS_ABI_HEADERS
141diff -aNru boost_1_34_1-ORIGINAL/boost/regex/v4/states.hpp boost_1_34_1/boost/regex/v4/states.hpp
142--- boost_1_34_1-ORIGINAL/boost/regex/v4/states.hpp 2005-09-20 07:01:25.000000000 -0500
143+++ boost_1_34_1/boost/regex/v4/states.hpp 2008-03-03 03:08:59.000000000 -0600
144@@ -23,6 +23,8 @@
145 # include BOOST_ABI_PREFIX
146 #endif
147
148+#include <climits>
149+
150 namespace boost{
151 namespace re_detail{
152
153diff -aNru boost_1_34_1-ORIGINAL/boost/serialization/collection_traits.hpp boost_1_34_1/boost/serialization/collection_traits.hpp
154--- boost_1_34_1-ORIGINAL/boost/serialization/collection_traits.hpp 2005-06-21 00:19:04.000000000 -0500
155+++ boost_1_34_1/boost/serialization/collection_traits.hpp 2008-03-03 03:09:49.000000000 -0600
156@@ -22,6 +22,7 @@
157 // compiles recognize the same set of primitive types, the possibility
158 // exists for archives to be non-portable if class information for primitive
159 // types is included. This is addressed by the following macros.
160+#include <climits>
161 #include <boost/config.hpp>
162 #include <boost/mpl/integral_c.hpp>
163 #include <boost/mpl/integral_c_tag.hpp>
164diff -aNru boost_1_34_1-ORIGINAL/boost/spirit/phoenix/operators.hpp boost_1_34_1/boost/spirit/phoenix/operators.hpp
165--- boost_1_34_1-ORIGINAL/boost/spirit/phoenix/operators.hpp 2006-08-25 11:27:30.000000000 -0500
166+++ boost_1_34_1/boost/spirit/phoenix/operators.hpp 2008-03-03 03:08:59.000000000 -0600
167@@ -24,6 +24,7 @@
168 #include <boost/spirit/phoenix/composite.hpp>
169 #include <boost/config.hpp>
170 #include <boost/mpl/if.hpp>
171+#include <climits>
172
173 ///////////////////////////////////////////////////////////////////////////////
174 namespace phoenix {
175diff -aNru boost_1_34_1-ORIGINAL/boost/test/test_tools.hpp boost_1_34_1/boost/test/test_tools.hpp
176--- boost_1_34_1-ORIGINAL/boost/test/test_tools.hpp 2007-02-22 11:57:29.000000000 -0600
177+++ boost_1_34_1/boost/test/test_tools.hpp 2008-03-03 03:08:59.000000000 -0600
178@@ -42,6 +42,7 @@
179 #include <boost/mpl/or.hpp>
180
181 // STL
182+#include <climits>
183 #include <cstddef> // for std::size_t
184 #include <iosfwd>
185
186diff -aNru boost_1_34_1-ORIGINAL/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp boost_1_34_1/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp
187--- boost_1_34_1-ORIGINAL/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp 2006-12-20 10:38:24.000000000 -0600
188+++ boost_1_34_1/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp 2008-03-03 03:08:59.000000000 -0600
189@@ -16,6 +16,7 @@
190 #include <string>
191 #include <cstdio>
192 #include <cstdarg>
193+#include <cstring>
194 #if defined(BOOST_SPIRIT_DEBUG)
195 #include <iostream>
196 #endif // defined(BOOST_SPIRIT_DEBUG)
197diff -aNru boost_1_34_1-ORIGINAL/boost/wave/util/flex_string.hpp boost_1_34_1/boost/wave/util/flex_string.hpp
198--- boost_1_34_1-ORIGINAL/boost/wave/util/flex_string.hpp 2006-04-25 12:21:01.000000000 -0500
199+++ boost_1_34_1/boost/wave/util/flex_string.hpp 2008-03-03 03:08:59.000000000 -0600
200@@ -94,6 +94,7 @@
201 #include <limits>
202 #include <stdexcept>
203 #include <cstddef>
204+#include <cstring>
205
206 // this must occur after all of the includes and before any code appears
207 #ifdef BOOST_HAS_ABI_HEADERS
208
209--- boost_1_33_1/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp 2008-07-05 01:50:04.000000000 +0200
210+++ boost_1_34_1/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp 2006-12-20 17:38:24.000000000 +0100
211@@ -295,17 +325,20 @@
212
213 lex_functor(IteratorT const &first, IteratorT const &last,
214 PositionT const &pos, boost::wave::language_support language)
215- : lexer(first, last, pos, language)
216+ : re2c_lexer(first, last, pos, language)
217 {}
218 virtual ~lex_functor() {}
219
220 // get the next token from the input stream
221- token_type get() { return lexer.get(); }
222- void set_position(PositionT const &pos)
223- { lexer.set_position(pos); }
224+ token_type get() { return re2c_lexer.get(); }
225+ void set_position(PositionT const &pos) { re2c_lexer.set_position(pos); }
226+#if BOOST_WAVE_SUPPORT_PRAGMA_ONCE != 0
227+ bool has_include_guards(std::string& guard_name) const
228+ { return re2c_lexer.has_include_guards(guard_name); }
229+#endif
230
231 private:
232- lexer<IteratorT, PositionT> lexer;
233+ lexer<IteratorT, PositionT> re2c_lexer;
234 };
235
236 ///////////////////////////////////////////////////////////////////////////////
237@@ -338,7 +371,7 @@
238 // It is coupled to the iterator type to allow to decouple the lexer/iterator
239 // configurations at compile time.
240 //
241-// This function is declared inside the cpp_slex_token.hpp file, which is
242+// This function is declared inside the cpp_lex_token.hpp file, which is
243 // referenced by the source file calling the lexer and the source file, which
244 // instantiates the lex_functor. But is is defined here, so it will be
245 // instantiated only while compiling the source file, which instantiates the
246@@ -356,8 +389,8 @@
247 IteratorT const &last, PositionT const &pos,
248 boost::wave::language_support language)
249 {
250- return new re2clex::lex_functor<IteratorT, PositionT>(first, last, pos,
251- language);
252+ using re2clex::lex_functor;
253+ return new lex_functor<IteratorT, PositionT>(first, last, pos, language);
254 }
255
256 #undef BOOST_WAVE_RE2C_NEW_LEXER_INLINE
diff --git a/meta/recipes-support/boost/files/linux-uclibc.patch b/meta/recipes-support/boost/files/linux-uclibc.patch
new file mode 100644
index 0000000000..79f14dea88
--- /dev/null
+++ b/meta/recipes-support/boost/files/linux-uclibc.patch
@@ -0,0 +1,10 @@
1--- /dev/null 1969-12-31 16:00:00.000000000 -0800
2+++ boost_1_32_0/boost/config/platform/linux-uclibc.hpp 2005-07-05 14:51:56.237294460 -0700
3@@ -0,0 +1,7 @@
4+// Modifications required to support uClibC libc implementation.
5+// Default to Linux...
6+#include "linux.hpp"
7+
8+// Override anything uClibC doesn't support.
9+// At present (0.9.27) the nl_types.h header exists but is not implemented
10+#undef BOOST_HAS_NL_TYPES_H
diff --git a/meta/recipes-support/boost/files/unit_test_log10f.patch b/meta/recipes-support/boost/files/unit_test_log10f.patch
new file mode 100644
index 0000000000..b235e12446
--- /dev/null
+++ b/meta/recipes-support/boost/files/unit_test_log10f.patch
@@ -0,0 +1,20 @@
1--- boost_1_32_0/libs/test/src/unit_test_result.cpp.orig 2005-07-05 11:00:53.887594850 -0700
2+++ boost_1_32_0/libs/test/src/unit_test_result.cpp 2005-07-05 11:01:20.683533034 -0700
3@@ -144,7 +144,7 @@
4 unit_test_counter num_passed, unit_test_counter num_failed )
5 {
6 unit_test_counter total_test_cases = num_passed + num_failed;
7- std::size_t width = static_cast<std::size_t>( std::log10( (float)(std::max)( num_passed, num_failed ) ) ) + 1;
8+ std::size_t width = static_cast<std::size_t>( std::log10( (double)(std::max)( num_passed, num_failed ) ) ) + 1;
9
10 where_to << std::setw( indent ) << "" << std::setw( width ) << num_passed
11 << " test " << ps_name( num_passed != 1, "case" ) << " out of " << total_test_cases << " passed\n"
12@@ -158,7 +158,7 @@
13 {
14 unit_test_counter total_assertions = num_passed + num_failed;
15 std::size_t width = total_assertions > 0
16- ? static_cast<std::size_t>( std::log10( (float)(std::max)( num_passed, num_failed ) ) ) + 1
17+ ? static_cast<std::size_t>( std::log10( (double)(std::max)( num_passed, num_failed ) ) ) + 1
18 : 1;
19
20 where_to << std::setw( indent ) << "" << std::setw( width ) << num_passed