Permalink
Browse files

upgrade included boost lib from 1.32 to 1.48. This fixed building

problems on recent platforms (debian Linux with gcc 4.x etc)
  • Loading branch information...
1 parent 65acd0b commit f02c39bf21b2b126dbb2d8738165d43b76c2b2bf Le Zhang committed Feb 9, 2012
Showing 550 changed files with 43,940 additions and 8,535 deletions.
View
@@ -1,121 +1,125 @@
-2011-09-02 Zhang Le <ejoy@users.sourceforge.net>
+2012-02-09 Le Zhang <ejoy@users.sourceforge.net>
+ * Fixed: compile warnings on recent platforms. Also upgrade the included boost lib
+ to a newer version.
+
+2011-09-02 Le Zhang <ejoy@users.sourceforge.net>
* Fixed: compile warning in src/maxent.cpp
-2011-05-16 Zhang Le <ejoy@users.sourceforge.net>
+2011-05-16 Le Zhang <ejoy@users.sourceforge.net>
* Fixed: incorporated patch provided by Jiří Marší: numerically stable
fix for probability overflow, which can lead to crash in LBFGS training.
-2006-10-04 Zhang Le <ejoy@users.sourceforge.net>
+2006-10-04 Le Zhang <ejoy@users.sourceforge.net>
* Fixed: autoconf problem when using gcc4.0 with g77 replaced by gfortran
-2005-03-22 Zhang Le <ejoy@users.sourceforge.net>
+2005-03-22 Le Zhang <ejoy@users.sourceforge.net>
* Added: docstring support to python binding
-2004-12-25 Zhang Le <ejoy@users.sourceforge.net>
+2004-12-25 Le Zhang <ejoy@users.sourceforge.net>
* Ported to Sun Solaris platform
* Ported to gcc 3.4.3
* Python swig binding ported to win32
-2004-12-24 Zhang Le <ejoy@users.sourceforge.net>
+2004-12-24 Le Zhang <ejoy@users.sourceforge.net>
* Added: unittest test for orange binding, setup.py for orngMaxent.py
* Change the meaning of -g from sigma to sigma^2
* Dox fix: about -g gaussian option, swig python installation, python::eval_all()
-2004-11-17 Zhang Le <ejoy@users.sourceforge.net>
+2004-11-17 Le Zhang <ejoy@users.sourceforge.net>
* Added: C interface wrapper code for lbfgs.f, with a driver sdriver.c
* Added: replace the heavy boost test unit with light weight minunit in
test/
-2004-10-06 Zhang Le <ejoy@users.sourceforge.net>
+2004-10-06 Le Zhang <ejoy@users.sourceforge.net>
* Fixed: An overflow caused by zero feature value in gis estimation code,
which can cause "nan" appear in the model file.
* Added: SWIG python binding now fully functions under Linux. Will replace
Boost.Python in furture releases.
-2004-09-30 Zhang Le <ejoy@users.sourceforge.net>
+2004-09-30 Le Zhang <ejoy@users.sourceforge.net>
* Doc fix for a maintenance release.
-2004-07-08 Zhang Le <ejoy@users.sourceforge.net>
+2004-07-08 Le Zhang <ejoy@users.sourceforge.net>
* Added: Detail instructions on buliding on win32 were added in the
document.
* Added: Install headers in src/Jamfile
-2004-07-06 Zhang Le <ejoy@users.sourceforge.net>
+2004-07-06 Le Zhang <ejoy@users.sourceforge.net>
* Fixed: wrongly display time measure on win32 platform in gistrainer.cpp
and lbfgstrainer.cpp
* Added: a timer for loading events data in MaxentModel
-2004-07-04 Zhang Le <ejoy@users.sourceforge.net>
+2004-07-04 Le Zhang <ejoy@users.sourceforge.net>
* Remove the use of boost::format lib, which is pretty heavy for this
application and can cause trouble on some C++ compilers.
* Use own getopt implementation on Win32 platforms, which fixes file name
bugs of command line program.
-2004-07-03 Zhang Le <ejoy@users.sourceforge.net>
+2004-07-03 Le Zhang <ejoy@users.sourceforge.net>
* Fixed: use fabs instead of abs, a crucial bug in gistrainer.cpp
-2004-07-01 Zhang Le <ejoy@users.sourceforge.net>
+2004-07-01 Le Zhang <ejoy@users.sourceforge.net>
* Ported to MSVC 7.1 with or without stlport
* Ported to Intel C++ 8.0 with MSVC 7.1's lib & headers
* Fixed: win32 getopt limitation by using own getopt.c on win32 platform
-2004-06-25 Zhang Le <ejoy@users.sourceforge.net>
+2004-06-25 Le Zhang <ejoy@users.sourceforge.net>
* Automatically disable lbfgs routine on system without fortran compiler
-2004-06-09 Zhang Le <ejoy@users.sourceforge.net>
+2004-06-09 Le Zhang <ejoy@users.sourceforge.net>
* Fixed: GIS now supports non-binary features
-2004-05-29 Zhang Le <ejoy@users.sourceforge.net>
+2004-05-29 Le Zhang <ejoy@users.sourceforge.net>
* rewrite mmap supporting routines.
* now the toolkit can be cross-compiled into native win32 executable using
cross-mingw toolchain (gcc 3.2) on FreeBSD.
-2004-05-28 Zhang Le <ejoy@users.sourceforge.net>
+2004-05-28 Le Zhang <ejoy@users.sourceforge.net>
* initial port to autoconf/jam building system, SCons is abandoned.
-2004-04-27 Zhang Le <ejoy@users.sourceforge.net>
+2004-04-27 Le Zhang <ejoy@users.sourceforge.net>
* Fixed: a potential bug when reading non-binary feature value using
mmap() call in maxent.cpp::get_sample(). The old code tries to
call atof() with two more bytes beyond the feature value string.
This works most time, but can cause a bus error.
-2004-04-11 Zhang Le <ejoy@users.sourceforge.net>
+2004-04-11 Le Zhang <ejoy@users.sourceforge.net>
* detect gnugetopt lib with a CheckLib call in src/SConscript
-2004-03-13 Zhang Le <ejoy@users.sourceforge.net>
+2004-03-13 Le Zhang <ejoy@users.sourceforge.net>
* Revised user manual
-2004-03-12 Zhang Le <ejoy@users.sourceforge.net>
+2004-03-12 Le Zhang <ejoy@users.sourceforge.net>
* Fixed: re-arrange python binding and tagger code to python/ dir.
* Added: maxent can now use heldout data (--heldout)
* Added: maxent can now do prediction over test data directly after model
training: maxent [options] train.data test.data
-2004-02-29 Zhang Le <ejoy@users.sourceforge.net>
+2004-02-29 Le Zhang <ejoy@users.sourceforge.net>
* Fixed: possible damage to training data when calling msync() in
mmapfile.cpp
-2004-02-28 Zhang Le <ejoy@users.sourceforge.net>
+2004-02-28 Le Zhang <ejoy@users.sourceforge.net>
* Fixed: E_ref parameter of gistrainer's newton() method when using
Gaussian smoothing. Reported by Tom Morton
* Changed: license is changed to LGPL
-2004-02-25 Zhang Le <ejoy@users.sourceforge.net>
+2004-02-25 Le Zhang <ejoy@users.sourceforge.net>
* Use numeric_limits<double>::epsilon() instead of hardcoded eps
-2003-10-06 Zhang Le <ejoy@users.sourceforge.net>
+2003-10-06 Le Zhang <ejoy@users.sourceforge.net>
* Update document and add ChangeLog, THANKS
* Added: test for mmap() in src/SConscript
* Added: add_heldout_event() now works
-2003-10-05 Zhang Le <ejoy@users.sourceforge.net>
+2003-10-05 Le Zhang <ejoy@users.sourceforge.net>
* Added: fast mmap() file I/O, much faster than standard iostream
* Added: line_mem_iterator.hpp and token_mem_iterator.hpp
-2003-10-04 Zhang Le <ejoy@users.sourceforge.net>
+2003-10-04 Le Zhang <ejoy@users.sourceforge.net>
* Added: new build_params() suggested by Carmen Alvarez
-2003-09-27 Zhang Le <ejoy@users.sourceforge.net>
+2003-09-27 Le Zhang <ejoy@users.sourceforge.net>
* Added: non-binary feature is now fullly supported
* Added: test suites for pymaxent and mmapfile
View
@@ -9,7 +9,7 @@ Now go on:
The following build dependancies are required:
* Jam (included) (http://www.perforce.com/)
- * Boost C++ library version 1.31 or higher (included) (http://www.boost.org)
+ * Boost C++ library (subset of v1.48 included) (http://www.boost.org)
* zlib library and headers (optional)
* a fortran compiler (optional but highly recommended)
View
@@ -1,18 +1,31 @@
//
// boost/assert.hpp - BOOST_ASSERT(expr)
+// BOOST_ASSERT_MSG(expr, msg)
+// BOOST_VERIFY(expr)
//
// Copyright (c) 2001, 2002 Peter Dimov and Multi Media Ltd.
+// Copyright (c) 2007 Peter Dimov
+// Copyright (c) Beman Dawes 2011
//
-// Permission to copy, use, modify, sell and distribute this software
-// is granted provided this copyright notice appears in all copies.
-// This software is provided "as is" without express or implied
-// warranty, and with no claim as to its suitability for any purpose.
+// 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)
//
// Note: There are no include guards. This is intentional.
//
// See http://www.boost.org/libs/utility/assert.html for documentation.
//
+//
+// Stop inspect complaining about use of 'assert':
+//
+// boostinspect:naassert_macro
+//
+
+//--------------------------------------------------------------------------------------//
+// BOOST_ASSERT //
+//--------------------------------------------------------------------------------------//
+
#undef BOOST_ASSERT
#if defined(BOOST_DISABLE_ASSERTS)
@@ -25,14 +38,94 @@
namespace boost
{
-
-void assertion_failed(char const * expr, char const * function, char const * file, long line); // user defined
-
+ void assertion_failed(char const * expr,
+ char const * function, char const * file, long line); // user defined
} // namespace boost
-#define BOOST_ASSERT(expr) ((expr)? ((void)0): ::boost::assertion_failed(#expr, BOOST_CURRENT_FUNCTION, __FILE__, __LINE__))
+#define BOOST_ASSERT(expr) ((expr) \
+ ? ((void)0) \
+ : ::boost::assertion_failed(#expr, BOOST_CURRENT_FUNCTION, __FILE__, __LINE__))
#else
-# include <assert.h>
+# include <assert.h> // .h to support old libraries w/o <cassert> - effect is the same
# define BOOST_ASSERT(expr) assert(expr)
#endif
+
+//--------------------------------------------------------------------------------------//
+// BOOST_ASSERT_MSG //
+//--------------------------------------------------------------------------------------//
+
+# undef BOOST_ASSERT_MSG
+
+#if defined(BOOST_DISABLE_ASSERTS) || defined(NDEBUG)
+
+ #define BOOST_ASSERT_MSG(expr, msg) ((void)0)
+
+#elif defined(BOOST_ENABLE_ASSERT_HANDLER)
+
+ #include <boost/current_function.hpp>
+
+ namespace boost
+ {
+ void assertion_failed_msg(char const * expr, char const * msg,
+ char const * function, char const * file, long line); // user defined
+ } // namespace boost
+
+ #define BOOST_ASSERT_MSG(expr, msg) ((expr) \
+ ? ((void)0) \
+ : ::boost::assertion_failed_msg(#expr, msg, BOOST_CURRENT_FUNCTION, __FILE__, __LINE__))
+
+#else
+ #ifndef BOOST_ASSERT_HPP
+ #define BOOST_ASSERT_HPP
+ #include <cstdlib>
+ #include <iostream>
+ #include <boost/current_function.hpp>
+
+ // IDE's like Visual Studio perform better if output goes to std::cout or
+ // some other stream, so allow user to configure output stream:
+ #ifndef BOOST_ASSERT_MSG_OSTREAM
+ # define BOOST_ASSERT_MSG_OSTREAM std::cerr
+ #endif
+
+ namespace boost
+ {
+ namespace assertion
+ {
+ namespace detail
+ {
+ inline void assertion_failed_msg(char const * expr, char const * msg, char const * function,
+ char const * file, long line)
+ {
+ BOOST_ASSERT_MSG_OSTREAM
+ << "***** Internal Program Error - assertion (" << expr << ") failed in "
+ << function << ":\n"
+ << file << '(' << line << "): " << msg << std::endl;
+ std::abort();
+ }
+ } // detail
+ } // assertion
+ } // detail
+ #endif
+
+ #define BOOST_ASSERT_MSG(expr, msg) ((expr) \
+ ? ((void)0) \
+ : ::boost::assertion::detail::assertion_failed_msg(#expr, msg, \
+ BOOST_CURRENT_FUNCTION, __FILE__, __LINE__))
+#endif
+
+//--------------------------------------------------------------------------------------//
+// BOOST_VERIFY //
+//--------------------------------------------------------------------------------------//
+
+#undef BOOST_VERIFY
+
+#if defined(BOOST_DISABLE_ASSERTS) || ( !defined(BOOST_ENABLE_ASSERT_HANDLER) && defined(NDEBUG) )
+
+# define BOOST_VERIFY(expr) ((void)(expr))
+
+#else
+
+# define BOOST_VERIFY(expr) BOOST_ASSERT(expr)
+
+#endif
@@ -10,15 +10,13 @@
//
// boost/checked_delete.hpp
//
-// Copyright (c) 1999, 2000, 2001, 2002 boost.org
// Copyright (c) 2002, 2003 Peter Dimov
// Copyright (c) 2003 Daniel Frey
// Copyright (c) 2003 Howard Hinnant
//
-// Permission to copy, use, modify, sell and distribute this software
-// is granted provided this copyright notice appears in all copies.
-// This software is provided "as is" without express or implied
-// warranty, and with no claim as to its suitability for any purpose.
+// 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)
//
// See http://www.boost.org/libs/utility/checked_delete.html for documentation.
//
@@ -36,7 +36,7 @@
#endif
// if we don't have a std library config set, try and find one:
-#if !defined(BOOST_STDLIB_CONFIG) && !defined(BOOST_NO_STDLIB_CONFIG) && !defined(BOOST_NO_CONFIG)
+#if !defined(BOOST_STDLIB_CONFIG) && !defined(BOOST_NO_STDLIB_CONFIG) && !defined(BOOST_NO_CONFIG) && defined(__cplusplus)
# include <boost/config/select_stdlib_config.hpp>
#endif
// if we have a std library config, include it now:
@@ -21,7 +21,7 @@
// 8026 - functions taking class by value arguments are not expanded inline
#pragma nopushoptwarn
-# pragma option push -Vx -Ve -a8 -b -pc -Vmv -VC- -Vl- -w-8027 -w-8026
+# pragma option push -a8 -Vx- -Ve- -b- -pc -Vmv -VC- -Vl- -w-8027 -w-8026
@@ -3,6 +3,20 @@
// Boost Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-#pragma pack(push,8)
+//
+// Boost binaries are built with the compiler's default ABI settings,
+// if the user changes their default alignment in the VS IDE then their
+// code will no longer be binary compatible with the bjam built binaries
+// unless this header is included to force Boost code into a consistent ABI.
+//
+// Note that inclusion of this header is only necessary for libraries with
+// separate source, header only libraries DO NOT need this as long as all
+// translation units are built with the same options.
+//
+#if defined(_M_X64)
+# pragma pack(push,16)
+#else
+# pragma pack(push,8)
+#endif
@@ -1,6 +1,6 @@
// abi_prefix header -------------------------------------------------------//
-// © Copyright John Maddock 2003
+// (c) Copyright John Maddock 2003
// Use, modification and distribution are subject to the Boost Software License,
// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
@@ -18,3 +18,8 @@
#ifdef BOOST_HAS_ABI_HEADERS
# include BOOST_ABI_PREFIX
#endif
+
+#if defined( __BORLANDC__ )
+#pragma nopushoptwarn
+#endif
+
Oops, something went wrong. Retry.

0 comments on commit f02c39b

Please sign in to comment.