- Remove the now unnecessary patches now the that wide character

support has been integrated
  - Move the endian setting bits within endian.hpp header up above
    Boost's own set of checks to try and guess the endianness of
      the architecture so that the OpenBSD endian header is actually
	used
	- Sync the Boost.Math patch for enabling the long double support
	  on OpenBSD/hppa with what was submitted upstream and commited.

tested by aja@ and naddy@
	  from brad
	  ok aja@
This commit is contained in:
jasper 2011-11-02 11:54:15 +00:00
parent f93b7bc084
commit dae9b3f523
8 changed files with 20 additions and 100 deletions

View File

@ -1,14 +1,14 @@
# $OpenBSD: Makefile,v 1.31 2011/09/19 19:53:20 naddy Exp $
# $OpenBSD: Makefile,v 1.32 2011/11/02 11:54:15 jasper Exp $
COMMENT= free peer-reviewed portable C++ source libraries
PKGNAME= boost-${VERSION}
REVISION= 8
REVISION= 9
VERSION= 1.42.0
DISTNAME= boost_${VERSION:S/./_/g}
SO_VERSION= 3.0
SO_VERSION= 4.0
BOOST_LIBS= boost_date_time boost_date_time-mt \
boost_filesystem boost_filesystem-mt \
boost_graph boost_graph-mt \

View File

@ -1,12 +0,0 @@
$OpenBSD: patch-boost_archive_impl_basic_text_iprimitive_ipp,v 1.2 2010/04/21 09:26:58 landry Exp $
--- boost/archive/impl/basic_text_iprimitive.ipp.orig Sat Dec 5 07:32:01 2009
+++ boost/archive/impl/basic_text_iprimitive.ipp Thu Apr 8 13:37:44 2010
@@ -45,7 +45,7 @@ namespace {
#ifndef BOOST_NO_CWCHAR
template<>
bool is_whitespace(wchar_t t){
- return 0 != std::iswspace(t);
+ return 0 != ::iswspace(t);
}
#endif
}

View File

@ -1,4 +1,4 @@
$OpenBSD: patch-boost_archive_iterators_remove_whitespace_hpp,v 1.1 2010/03/30 11:01:10 robert Exp $
$OpenBSD: patch-boost_archive_iterators_remove_whitespace_hpp,v 1.2 2011/11/02 11:54:15 jasper Exp $
--- boost/archive/iterators/remove_whitespace.hpp.orig Sun Dec 20 14:40:29 2009
+++ boost/archive/iterators/remove_whitespace.hpp Sun Dec 20 19:07:34 2009
@@ -16,6 +16,7 @@
@ -9,21 +9,3 @@ $OpenBSD: patch-boost_archive_iterators_remove_whitespace_hpp,v 1.1 2010/03/30 1
#include <cassert>
#include <boost/config.hpp> // for BOOST_DEDUCED_TYPENAME
@@ -24,7 +25,6 @@
#include <boost/iterator/iterator_adaptor.hpp>
#include <boost/iterator/filter_iterator.hpp>
-
//#include <boost/detail/workaround.hpp>
//#if ! BOOST_WORKAROUND(BOOST_MSVC, <=1300)
@@ -72,7 +72,8 @@ template<>
struct remove_whitespace_predicate<wchar_t>
{
bool operator()(wchar_t t){
- return ! std::iswspace(t);
+ return ! ::iswspace(t);
+ //return ! std::iswspace(t);
}
};
#endif

View File

@ -1,19 +1,18 @@
$OpenBSD: patch-boost_detail_endian_hpp,v 1.3 2010/04/21 09:26:58 landry Exp $
--- boost/detail/endian.hpp.orig Wed Apr 21 09:36:53 2010
+++ boost/detail/endian.hpp Wed Apr 21 09:42:41 2010
@@ -65,6 +65,15 @@
# define BOOST_LITTLE_ENDIAN
# define BOOST_BYTE_ORDER 1234
$OpenBSD: patch-boost_detail_endian_hpp,v 1.4 2011/11/02 11:54:15 jasper Exp $
--- boost/detail/endian.hpp.orig Wed Oct 21 14:07:45 2009
+++ boost/detail/endian.hpp Mon Oct 17 01:13:58 2011
@@ -42,6 +42,14 @@
# error Unknown machine endianness detected.
# endif
# define BOOST_BYTE_ORDER __BYTE_ORDER
+#elif defined(__OpenBSD__)
+# include <sys/types.h>
+# include <machine/endian.h>
+# if (_BYTE_ORDER == _LITTLE_ENDIAN)
+# define BOOST_LITTLE_ENDIAN
+# define BOOST_BYTE_ORDER 1234
+# elif (_BYTE_ORDER == _BIG_ENDIAN)
+# define BOOST_BIG_ENDIAN
+# define BOOST_BYTE_ORDER 4321
+# endif
#else
# error The file boost/detail/endian.hpp needs to be set up for your CPU type.
#endif
+# define BOOST_BYTE_ORDER _BYTE_ORDER
#elif defined(_BIG_ENDIAN) && !defined(_LITTLE_ENDIAN)
# define BOOST_BIG_ENDIAN
# define BOOST_BYTE_ORDER 4321

View File

@ -1,12 +1,12 @@
$OpenBSD: patch-boost_math_tools_config_hpp,v 1.1 2010/04/13 17:15:28 landry Exp $
--- boost/math/tools/config.hpp.orig Mon Apr 12 06:14:08 2010
+++ boost/math/tools/config.hpp Mon Apr 12 06:14:38 2010
$OpenBSD: patch-boost_math_tools_config_hpp,v 1.2 2011/11/02 11:54:15 jasper Exp $
--- boost/math/tools/config.hpp.orig Mon Oct 12 06:35:20 2009
+++ boost/math/tools/config.hpp Mon Oct 17 01:15:58 2011
@@ -24,7 +24,7 @@
#include <boost/math/special_functions/detail/round_fwd.hpp>
#if defined(__CYGWIN__) || defined(__FreeBSD__) || defined(__NetBSD__) \
- || defined(__hppa) || defined(__NO_LONG_DOUBLE_MATH)
+ || defined(__NO_LONG_DOUBLE_MATH)
+ || (defined(__hppa) && !defined(__OpenBSD__)) || defined(__NO_LONG_DOUBLE_MATH)
# define BOOST_MATH_NO_LONG_DOUBLE_MATH_FUNCTIONS
#endif
#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x582))

View File

@ -1,16 +0,0 @@
$OpenBSD: patch-boost_regex_v4_c_regex_traits_hpp,v 1.1 2010/03/30 11:01:10 robert Exp $
--- boost/regex/v4/c_regex_traits.hpp.orig Tue Dec 22 17:25:03 2009
+++ boost/regex/v4/c_regex_traits.hpp Thu Dec 24 14:05:47 2009
@@ -34,6 +34,12 @@ namespace std{
}
#endif
+#if defined(__OpenBSD__)
+namespace std{
+ using ::towlower;
+}
+#endif
+
#ifdef BOOST_MSVC
#pragma warning(push)
#pragma warning(disable: 4103)

View File

@ -1,16 +0,0 @@
$OpenBSD: patch-libs_regex_src_regex_traits_defaults_cpp,v 1.1 2010/03/30 11:01:10 robert Exp $
--- libs/regex/src/regex_traits_defaults.cpp.orig Thu Dec 24 14:06:42 2009
+++ libs/regex/src/regex_traits_defaults.cpp Thu Dec 24 14:08:17 2009
@@ -35,6 +35,12 @@ namespace std{
}
#endif
+#if defined(__OpenBSD__)
+namespace std{
+ using ::towlower;
+ using ::towupper;
+}
+#endif
namespace boost{ namespace re_detail{

View File

@ -1,17 +0,0 @@
$OpenBSD: patch-libs_regex_src_wc_regex_traits_cpp,v 1.2 2010/03/30 11:00:15 robert Exp $
--- libs/regex/src/wc_regex_traits.cpp.orig Mon Aug 3 14:00:07 2009
+++ libs/regex/src/wc_regex_traits.cpp Thu Dec 24 14:11:11 2009
@@ -77,9 +77,12 @@ template BOOST_REGEX_STDLIB_DECL bool __cdecl operator
#include <boost/regex/v4/primary_transform.hpp>
#include <boost/regex/v4/regex_traits_defaults.hpp>
-#if defined(BOOST_NO_STDC_NAMESPACE)
+#if defined(BOOST_NO_STDC_NAMESPACE) || defined(__OpenBSD__)
namespace std{
using ::wcstol;
+ using ::iswspace; using ::iswprint; using ::iswcntrl;
+ using ::iswupper; using ::iswlower; using ::iswalpha;
+ using ::iswdigit; using ::iswpunct; using ::iswxdigit;
}
#endif