Skip to content

Commit

Permalink
upgrade included boost lib from 1.32 to 1.48. This fixed building
Browse files Browse the repository at this point in the history
problems on recent platforms (debian Linux with gcc 4.x etc)
  • Loading branch information
Le Zhang committed Feb 9, 2012
1 parent 65acd0b commit f02c39b
Show file tree
Hide file tree
Showing 550 changed files with 43,940 additions and 8,535 deletions.
62 changes: 33 additions & 29 deletions ChangeLog
@@ -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 * 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 * Fixed: incorporated patch provided by Jiří Marší: numerically stable
fix for probability overflow, which can lead to crash in LBFGS training. 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 * 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 * 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 Sun Solaris platform
* Ported to gcc 3.4.3 * Ported to gcc 3.4.3
* Python swig binding ported to win32 * 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 * Added: unittest test for orange binding, setup.py for orngMaxent.py
* Change the meaning of -g from sigma to sigma^2 * Change the meaning of -g from sigma to sigma^2
* Dox fix: about -g gaussian option, swig python installation, python::eval_all() * 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: C interface wrapper code for lbfgs.f, with a driver sdriver.c
* Added: replace the heavy boost test unit with light weight minunit in * Added: replace the heavy boost test unit with light weight minunit in
test/ 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, * Fixed: An overflow caused by zero feature value in gis estimation code,
which can cause "nan" appear in the model file. which can cause "nan" appear in the model file.
* Added: SWIG python binding now fully functions under Linux. Will replace * Added: SWIG python binding now fully functions under Linux. Will replace
Boost.Python in furture releases. 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. * 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 * Added: Detail instructions on buliding on win32 were added in the
document. document.
* Added: Install headers in src/Jamfile * 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 * Fixed: wrongly display time measure on win32 platform in gistrainer.cpp
and lbfgstrainer.cpp and lbfgstrainer.cpp
* Added: a timer for loading events data in MaxentModel * 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 * Remove the use of boost::format lib, which is pretty heavy for this
application and can cause trouble on some C++ compilers. application and can cause trouble on some C++ compilers.
* Use own getopt implementation on Win32 platforms, which fixes file name * Use own getopt implementation on Win32 platforms, which fixes file name
bugs of command line program. 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 * 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 MSVC 7.1 with or without stlport
* Ported to Intel C++ 8.0 with MSVC 7.1's lib & headers * 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 * 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 * 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 * 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. * rewrite mmap supporting routines.
* now the toolkit can be cross-compiled into native win32 executable using * now the toolkit can be cross-compiled into native win32 executable using
cross-mingw toolchain (gcc 3.2) on FreeBSD. 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. * 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 * Fixed: a potential bug when reading non-binary feature value using
mmap() call in maxent.cpp::get_sample(). The old code tries to mmap() call in maxent.cpp::get_sample(). The old code tries to
call atof() with two more bytes beyond the feature value string. call atof() with two more bytes beyond the feature value string.
This works most time, but can cause a bus error. 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 * 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 * 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. * Fixed: re-arrange python binding and tagger code to python/ dir.
* Added: maxent can now use heldout data (--heldout) * Added: maxent can now use heldout data (--heldout)
* Added: maxent can now do prediction over test data directly after model * Added: maxent can now do prediction over test data directly after model
training: maxent [options] train.data test.data 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 * Fixed: possible damage to training data when calling msync() in
mmapfile.cpp 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 * Fixed: E_ref parameter of gistrainer's newton() method when using
Gaussian smoothing. Reported by Tom Morton Gaussian smoothing. Reported by Tom Morton
* Changed: license is changed to LGPL * 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 * 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 * Update document and add ChangeLog, THANKS
* Added: test for mmap() in src/SConscript * Added: test for mmap() in src/SConscript
* Added: add_heldout_event() now works * 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: fast mmap() file I/O, much faster than standard iostream
* Added: line_mem_iterator.hpp and token_mem_iterator.hpp * 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 * 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: non-binary feature is now fullly supported
* Added: test suites for pymaxent and mmapfile * Added: test suites for pymaxent and mmapfile
2 changes: 1 addition & 1 deletion INSTALL
Expand Up @@ -9,7 +9,7 @@ Now go on:


The following build dependancies are required: The following build dependancies are required:
* Jam (included) (http://www.perforce.com/) * 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) * zlib library and headers (optional)
* a fortran compiler (optional but highly recommended) * a fortran compiler (optional but highly recommended)


Expand Down
111 changes: 102 additions & 9 deletions lib/boost/assert.hpp
@@ -1,18 +1,31 @@
// //
// boost/assert.hpp - BOOST_ASSERT(expr) // 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) 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 // Distributed under the Boost Software License, Version 1.0. (See
// is granted provided this copyright notice appears in all copies. // accompanying file LICENSE_1_0.txt or copy at
// This software is provided "as is" without express or implied // http://www.boost.org/LICENSE_1_0.txt)
// warranty, and with no claim as to its suitability for any purpose.
// //
// Note: There are no include guards. This is intentional. // Note: There are no include guards. This is intentional.
// //
// See http://www.boost.org/libs/utility/assert.html for documentation. // 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 #undef BOOST_ASSERT


#if defined(BOOST_DISABLE_ASSERTS) #if defined(BOOST_DISABLE_ASSERTS)
Expand All @@ -25,14 +38,94 @@


namespace boost namespace boost
{ {

void assertion_failed(char const * expr,
void assertion_failed(char const * expr, char const * function, char const * file, long line); // user defined char const * function, char const * file, long line); // user defined

} // namespace boost } // 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 #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) # define BOOST_ASSERT(expr) assert(expr)
#endif #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
8 changes: 3 additions & 5 deletions lib/boost/checked_delete.hpp
Expand Up @@ -10,15 +10,13 @@
// //
// boost/checked_delete.hpp // boost/checked_delete.hpp
// //
// Copyright (c) 1999, 2000, 2001, 2002 boost.org
// Copyright (c) 2002, 2003 Peter Dimov // Copyright (c) 2002, 2003 Peter Dimov
// Copyright (c) 2003 Daniel Frey // Copyright (c) 2003 Daniel Frey
// Copyright (c) 2003 Howard Hinnant // Copyright (c) 2003 Howard Hinnant
// //
// Permission to copy, use, modify, sell and distribute this software // Distributed under the Boost Software License, Version 1.0. (See
// is granted provided this copyright notice appears in all copies. // accompanying file LICENSE_1_0.txt or copy at
// This software is provided "as is" without express or implied // http://www.boost.org/LICENSE_1_0.txt)
// warranty, and with no claim as to its suitability for any purpose.
// //
// See http://www.boost.org/libs/utility/checked_delete.html for documentation. // See http://www.boost.org/libs/utility/checked_delete.html for documentation.
// //
Expand Down
2 changes: 1 addition & 1 deletion lib/boost/config.hpp
Expand Up @@ -36,7 +36,7 @@
#endif #endif


// if we don't have a std library config set, try and find one: // 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> # include <boost/config/select_stdlib_config.hpp>
#endif #endif
// if we have a std library config, include it now: // if we have a std library config, include it now:
Expand Down
2 changes: 1 addition & 1 deletion lib/boost/config/abi/borland_prefix.hpp
Expand Up @@ -21,7 +21,7 @@
// 8026 - functions taking class by value arguments are not expanded inline // 8026 - functions taking class by value arguments are not expanded inline


#pragma nopushoptwarn #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






16 changes: 15 additions & 1 deletion lib/boost/config/abi/msvc_prefix.hpp
Expand Up @@ -3,6 +3,20 @@
// Boost Software License, Version 1.0. (See accompanying file // Boost Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) // 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




7 changes: 6 additions & 1 deletion lib/boost/config/abi_prefix.hpp
@@ -1,6 +1,6 @@
// abi_prefix header -------------------------------------------------------// // abi_prefix header -------------------------------------------------------//


// © Copyright John Maddock 2003 // (c) Copyright John Maddock 2003


// Use, modification and distribution are subject to the Boost Software License, // Use, modification and distribution are subject to the Boost Software License,
// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
Expand All @@ -18,3 +18,8 @@
#ifdef BOOST_HAS_ABI_HEADERS #ifdef BOOST_HAS_ABI_HEADERS
# include BOOST_ABI_PREFIX # include BOOST_ABI_PREFIX
#endif #endif

#if defined( __BORLANDC__ )
#pragma nopushoptwarn
#endif

0 comments on commit f02c39b

Please sign in to comment.