Changes 1.56.0:
Modularization
Boost version control has migrated to a system using git submodules. This shouldn't make too much of a difference to users, although the directory structure is now a bit different.
Parts of some libraries have been moved into different modules, and several new modules have been extracted from existing code. All header paths should remain the same. The new modules are:
Assert:
Customizable assert macros. Maintained by Peter Dimov.
Core:
Core utilities used by other libraries, with minimal dependencies. Maintained by Peter Dimov, Glen Fernandes and Andrey Semashev.
Lexical_Cast:
General literal text conversions, such as an int represented a string, or vice-versa, from Kevlin Henney.
Throw_Exception:
A common infrastructure for throwing exceptions from Boost libraries, from Emil Dotchevski.
Winapi:
Windows API declarations without <windows.h>, for internal Boost use.
New Libraries
Align:
Memory alignment functions, allocators, and adaptors, from Glen Fernandes.
Type_Index:
Runtime/Compile time copyable type info, from Antony Polukhin.
2014-08-13 12:56:35 +02:00
|
|
|
# $NetBSD: Makefile,v 1.25 2014/08/13 10:56:35 adam Exp $
|
2004-06-07 01:51:36 +02:00
|
|
|
|
Complete rework of the Boost packages:
- Drop devel/boost and devel/boost-thread.
- Add devel/boost-docs which includes all the documentation related to Boost
(previously included in devel/boost).
- Add devel/boost-build which includes bjam, the Boost.Build framework.
- Add devel/boost-headers which includes all the header files needed at build
time by programs using Boost (previously included in devel/boost).
- Add devel/boost-libs which includes all the binary libraries needed at build
and run time by programs using Boost (previously included in devel/boost and
devel/thread). All of them are multithreaded, to make things easier.
- devel/boost-python includes the Boost Python library (as it did before), but
now works, given that everything is threaded again.
- Drop our thread_user.hpp customization. Avoids some build failures that
appeared when the previous boost-thread package was not installed.
- Use static PLISTs.
- Install unversioned files. Makes things *a lot* easier when building stuff
outside pkgsrc.
- Add meta-pkgs/boost, a meta package that depends on all of the above.
Thanks go to jlam@ and tv@ for their comments.
While here, update to 1.32.0:
New Toolset Names
The names of some the Boost.Build toolsets have been changed to remove the "."
(dot) character and to fix some other naming inconsistencies. For example,
vc7.1 toolset was renamed to become vc-7_1. Please refer to the Supported
Toolsets section of the installation guide for the complete list of the current
toolset names. This change was made as a part of the effort to make the Boost
distribution compatible with ISO 9660 level 2 requirements.
New Libraries
* Assignment Library: Filling containers with constant or generated data
has never been easier, from Thorsten Ottosen.
* Minmax Library: Standard library extensions for simultaneous min/max and
min/max element computations, from Hervé Brönnimann.
* Multi-index Containers Library: Containers with multiple STL-compatible
access interfaces, from Joaquín M López Muñoz.
* Numeric Conversion Library: Optimized policy-based numeric conversions,
from Fernando Cacciola.
* Program Options Library: Access to configuration data given on command
line, in config files and other sources, from Vladimir Prus.
* Range Library: A new infrastructure for generic algorithms that builds
on top of the new iterator concepts, from Thorsten Ottosen.
* Serialization Library: Serialization/de-serialization of arbitrary C++
data structures to various formats including text, binary, and xml, from
Robert Ramey.
* String Algorithms Library: Collection of string related algorithms for
case conversion, trimming, find/replace operations and more, from Pavol
Droba.
* Tribool: 3-state boolean type library, from Doug Gregor.
Updated Libraries
* Compose: This deprecated library has been removed.
* Graph:
o Added bundled properties to the adjacency_list and adjacency_matrix
class templates, greatly simplifying the introduction of internal
vertex and edge properties.
o The LEDA graph adaptors have been ported to LEDA 4.5.
o Added algorithms for betweenness centrality and betweenness
centrality clustering.
o Added circle layout and undirected spring layout algorithms.
* MPL Library:
o Updated to use the Boost Software License.
o New documentation, including a complete reference manual.
o Major interface changes and improvements, many of which are not
backward compatible. Please refer to the 1.32 changelog for the
detailed information about upgrading to the new version.
* Python Library:
o Updated to use the Boost Software License.
o A new, better method of wrapping classes with virtual functions
has been implemented.
o Support for the new Python Bool type, thanks to Daniel Holth.
o Support for upcoming GCC symbol export control features have been
folded in, thanks to Niall Douglas.
o Improved support for std::auto_ptr-like types.
o Components used by other libraries have been moved out of
python/detail and into boost/detail to improve dependency
relationships.
o Miscellaneous bug fixes and compiler workarounds.
* Signals Library: Introduced deterministic slot ordering, permitting
slots to be connected at the beginning or end of slot groups or the slot
list itself. Combiners may safely have state and are accessible from the
signal.
* Utility: class template result_of added.
* Test Library:
o namespace names gets shorten; old one still supported till next
release
o added proper encoding of XML PCDATA
o support for wide string comparison implemented
For complete list of changes see Test Library release notes.
Regression tests
This release has been extensively tested on a variety of different compilers
and platforms. It is known to contain no regressions against the previous
reference release on the compilers and configurations tested. Please refer to
the corresponding regression reports to see how well your compiler performs on
the new Boost codebase.
2005-02-26 23:48:34 +01:00
|
|
|
BOOST_PACKAGE= python
|
|
|
|
BOOST_COMMENT= (Boost.Python binary library)
|
|
|
|
BOOST_CONFIG= installed
|
2004-06-07 01:51:36 +02:00
|
|
|
|
2012-07-02 09:02:25 +02:00
|
|
|
INSTALLATION_DIRS+= lib
|
|
|
|
|
Complete rework of the Boost packages:
- Drop devel/boost and devel/boost-thread.
- Add devel/boost-docs which includes all the documentation related to Boost
(previously included in devel/boost).
- Add devel/boost-build which includes bjam, the Boost.Build framework.
- Add devel/boost-headers which includes all the header files needed at build
time by programs using Boost (previously included in devel/boost).
- Add devel/boost-libs which includes all the binary libraries needed at build
and run time by programs using Boost (previously included in devel/boost and
devel/thread). All of them are multithreaded, to make things easier.
- devel/boost-python includes the Boost Python library (as it did before), but
now works, given that everything is threaded again.
- Drop our thread_user.hpp customization. Avoids some build failures that
appeared when the previous boost-thread package was not installed.
- Use static PLISTs.
- Install unversioned files. Makes things *a lot* easier when building stuff
outside pkgsrc.
- Add meta-pkgs/boost, a meta package that depends on all of the above.
Thanks go to jlam@ and tv@ for their comments.
While here, update to 1.32.0:
New Toolset Names
The names of some the Boost.Build toolsets have been changed to remove the "."
(dot) character and to fix some other naming inconsistencies. For example,
vc7.1 toolset was renamed to become vc-7_1. Please refer to the Supported
Toolsets section of the installation guide for the complete list of the current
toolset names. This change was made as a part of the effort to make the Boost
distribution compatible with ISO 9660 level 2 requirements.
New Libraries
* Assignment Library: Filling containers with constant or generated data
has never been easier, from Thorsten Ottosen.
* Minmax Library: Standard library extensions for simultaneous min/max and
min/max element computations, from Hervé Brönnimann.
* Multi-index Containers Library: Containers with multiple STL-compatible
access interfaces, from Joaquín M López Muñoz.
* Numeric Conversion Library: Optimized policy-based numeric conversions,
from Fernando Cacciola.
* Program Options Library: Access to configuration data given on command
line, in config files and other sources, from Vladimir Prus.
* Range Library: A new infrastructure for generic algorithms that builds
on top of the new iterator concepts, from Thorsten Ottosen.
* Serialization Library: Serialization/de-serialization of arbitrary C++
data structures to various formats including text, binary, and xml, from
Robert Ramey.
* String Algorithms Library: Collection of string related algorithms for
case conversion, trimming, find/replace operations and more, from Pavol
Droba.
* Tribool: 3-state boolean type library, from Doug Gregor.
Updated Libraries
* Compose: This deprecated library has been removed.
* Graph:
o Added bundled properties to the adjacency_list and adjacency_matrix
class templates, greatly simplifying the introduction of internal
vertex and edge properties.
o The LEDA graph adaptors have been ported to LEDA 4.5.
o Added algorithms for betweenness centrality and betweenness
centrality clustering.
o Added circle layout and undirected spring layout algorithms.
* MPL Library:
o Updated to use the Boost Software License.
o New documentation, including a complete reference manual.
o Major interface changes and improvements, many of which are not
backward compatible. Please refer to the 1.32 changelog for the
detailed information about upgrading to the new version.
* Python Library:
o Updated to use the Boost Software License.
o A new, better method of wrapping classes with virtual functions
has been implemented.
o Support for the new Python Bool type, thanks to Daniel Holth.
o Support for upcoming GCC symbol export control features have been
folded in, thanks to Niall Douglas.
o Improved support for std::auto_ptr-like types.
o Components used by other libraries have been moved out of
python/detail and into boost/detail to improve dependency
relationships.
o Miscellaneous bug fixes and compiler workarounds.
* Signals Library: Introduced deterministic slot ordering, permitting
slots to be connected at the beginning or end of slot groups or the slot
list itself. Combiners may safely have state and are accessible from the
signal.
* Utility: class template result_of added.
* Test Library:
o namespace names gets shorten; old one still supported till next
release
o added proper encoding of XML PCDATA
o support for wide string comparison implemented
For complete list of changes see Test Library release notes.
Regression tests
This release has been extensively tested on a variety of different compilers
and platforms. It is known to contain no regressions against the previous
reference release on the compilers and configurations tested. Please refer to
the corresponding regression reports to see how well your compiler performs on
the new Boost codebase.
2005-02-26 23:48:34 +01:00
|
|
|
.include "../../meta-pkgs/boost/Makefile.common"
|
2004-06-07 01:51:36 +02:00
|
|
|
|
2008-09-13 18:14:13 +02:00
|
|
|
BJAM_ARGS+= --user-config=${WRKSRC}/user-config.jam
|
Complete rework of the Boost packages:
- Drop devel/boost and devel/boost-thread.
- Add devel/boost-docs which includes all the documentation related to Boost
(previously included in devel/boost).
- Add devel/boost-build which includes bjam, the Boost.Build framework.
- Add devel/boost-headers which includes all the header files needed at build
time by programs using Boost (previously included in devel/boost).
- Add devel/boost-libs which includes all the binary libraries needed at build
and run time by programs using Boost (previously included in devel/boost and
devel/thread). All of them are multithreaded, to make things easier.
- devel/boost-python includes the Boost Python library (as it did before), but
now works, given that everything is threaded again.
- Drop our thread_user.hpp customization. Avoids some build failures that
appeared when the previous boost-thread package was not installed.
- Use static PLISTs.
- Install unversioned files. Makes things *a lot* easier when building stuff
outside pkgsrc.
- Add meta-pkgs/boost, a meta package that depends on all of the above.
Thanks go to jlam@ and tv@ for their comments.
While here, update to 1.32.0:
New Toolset Names
The names of some the Boost.Build toolsets have been changed to remove the "."
(dot) character and to fix some other naming inconsistencies. For example,
vc7.1 toolset was renamed to become vc-7_1. Please refer to the Supported
Toolsets section of the installation guide for the complete list of the current
toolset names. This change was made as a part of the effort to make the Boost
distribution compatible with ISO 9660 level 2 requirements.
New Libraries
* Assignment Library: Filling containers with constant or generated data
has never been easier, from Thorsten Ottosen.
* Minmax Library: Standard library extensions for simultaneous min/max and
min/max element computations, from Hervé Brönnimann.
* Multi-index Containers Library: Containers with multiple STL-compatible
access interfaces, from Joaquín M López Muñoz.
* Numeric Conversion Library: Optimized policy-based numeric conversions,
from Fernando Cacciola.
* Program Options Library: Access to configuration data given on command
line, in config files and other sources, from Vladimir Prus.
* Range Library: A new infrastructure for generic algorithms that builds
on top of the new iterator concepts, from Thorsten Ottosen.
* Serialization Library: Serialization/de-serialization of arbitrary C++
data structures to various formats including text, binary, and xml, from
Robert Ramey.
* String Algorithms Library: Collection of string related algorithms for
case conversion, trimming, find/replace operations and more, from Pavol
Droba.
* Tribool: 3-state boolean type library, from Doug Gregor.
Updated Libraries
* Compose: This deprecated library has been removed.
* Graph:
o Added bundled properties to the adjacency_list and adjacency_matrix
class templates, greatly simplifying the introduction of internal
vertex and edge properties.
o The LEDA graph adaptors have been ported to LEDA 4.5.
o Added algorithms for betweenness centrality and betweenness
centrality clustering.
o Added circle layout and undirected spring layout algorithms.
* MPL Library:
o Updated to use the Boost Software License.
o New documentation, including a complete reference manual.
o Major interface changes and improvements, many of which are not
backward compatible. Please refer to the 1.32 changelog for the
detailed information about upgrading to the new version.
* Python Library:
o Updated to use the Boost Software License.
o A new, better method of wrapping classes with virtual functions
has been implemented.
o Support for the new Python Bool type, thanks to Daniel Holth.
o Support for upcoming GCC symbol export control features have been
folded in, thanks to Niall Douglas.
o Improved support for std::auto_ptr-like types.
o Components used by other libraries have been moved out of
python/detail and into boost/detail to improve dependency
relationships.
o Miscellaneous bug fixes and compiler workarounds.
* Signals Library: Introduced deterministic slot ordering, permitting
slots to be connected at the beginning or end of slot groups or the slot
list itself. Combiners may safely have state and are accessible from the
signal.
* Utility: class template result_of added.
* Test Library:
o namespace names gets shorten; old one still supported till next
release
o added proper encoding of XML PCDATA
o support for wide string comparison implemented
For complete list of changes see Test Library release notes.
Regression tests
This release has been extensively tested on a variety of different compilers
and platforms. It is known to contain no regressions against the previous
reference release on the compilers and configurations tested. Please refer to
the corresponding regression reports to see how well your compiler performs on
the new Boost codebase.
2005-02-26 23:48:34 +01:00
|
|
|
BJAM_ARGS+= --with-python
|
2008-03-17 00:33:57 +01:00
|
|
|
MAKE_ENV+= BOOST_BUILD_PATH=${WRKSRC}
|
2004-06-07 01:51:36 +02:00
|
|
|
|
2007-06-02 19:51:48 +02:00
|
|
|
.include "../../devel/boost-jam/bjam.mk"
|
Complete rework of the Boost packages:
- Drop devel/boost and devel/boost-thread.
- Add devel/boost-docs which includes all the documentation related to Boost
(previously included in devel/boost).
- Add devel/boost-build which includes bjam, the Boost.Build framework.
- Add devel/boost-headers which includes all the header files needed at build
time by programs using Boost (previously included in devel/boost).
- Add devel/boost-libs which includes all the binary libraries needed at build
and run time by programs using Boost (previously included in devel/boost and
devel/thread). All of them are multithreaded, to make things easier.
- devel/boost-python includes the Boost Python library (as it did before), but
now works, given that everything is threaded again.
- Drop our thread_user.hpp customization. Avoids some build failures that
appeared when the previous boost-thread package was not installed.
- Use static PLISTs.
- Install unversioned files. Makes things *a lot* easier when building stuff
outside pkgsrc.
- Add meta-pkgs/boost, a meta package that depends on all of the above.
Thanks go to jlam@ and tv@ for their comments.
While here, update to 1.32.0:
New Toolset Names
The names of some the Boost.Build toolsets have been changed to remove the "."
(dot) character and to fix some other naming inconsistencies. For example,
vc7.1 toolset was renamed to become vc-7_1. Please refer to the Supported
Toolsets section of the installation guide for the complete list of the current
toolset names. This change was made as a part of the effort to make the Boost
distribution compatible with ISO 9660 level 2 requirements.
New Libraries
* Assignment Library: Filling containers with constant or generated data
has never been easier, from Thorsten Ottosen.
* Minmax Library: Standard library extensions for simultaneous min/max and
min/max element computations, from Hervé Brönnimann.
* Multi-index Containers Library: Containers with multiple STL-compatible
access interfaces, from Joaquín M López Muñoz.
* Numeric Conversion Library: Optimized policy-based numeric conversions,
from Fernando Cacciola.
* Program Options Library: Access to configuration data given on command
line, in config files and other sources, from Vladimir Prus.
* Range Library: A new infrastructure for generic algorithms that builds
on top of the new iterator concepts, from Thorsten Ottosen.
* Serialization Library: Serialization/de-serialization of arbitrary C++
data structures to various formats including text, binary, and xml, from
Robert Ramey.
* String Algorithms Library: Collection of string related algorithms for
case conversion, trimming, find/replace operations and more, from Pavol
Droba.
* Tribool: 3-state boolean type library, from Doug Gregor.
Updated Libraries
* Compose: This deprecated library has been removed.
* Graph:
o Added bundled properties to the adjacency_list and adjacency_matrix
class templates, greatly simplifying the introduction of internal
vertex and edge properties.
o The LEDA graph adaptors have been ported to LEDA 4.5.
o Added algorithms for betweenness centrality and betweenness
centrality clustering.
o Added circle layout and undirected spring layout algorithms.
* MPL Library:
o Updated to use the Boost Software License.
o New documentation, including a complete reference manual.
o Major interface changes and improvements, many of which are not
backward compatible. Please refer to the 1.32 changelog for the
detailed information about upgrading to the new version.
* Python Library:
o Updated to use the Boost Software License.
o A new, better method of wrapping classes with virtual functions
has been implemented.
o Support for the new Python Bool type, thanks to Daniel Holth.
o Support for upcoming GCC symbol export control features have been
folded in, thanks to Niall Douglas.
o Improved support for std::auto_ptr-like types.
o Components used by other libraries have been moved out of
python/detail and into boost/detail to improve dependency
relationships.
o Miscellaneous bug fixes and compiler workarounds.
* Signals Library: Introduced deterministic slot ordering, permitting
slots to be connected at the beginning or end of slot groups or the slot
list itself. Combiners may safely have state and are accessible from the
signal.
* Utility: class template result_of added.
* Test Library:
o namespace names gets shorten; old one still supported till next
release
o added proper encoding of XML PCDATA
o support for wide string comparison implemented
For complete list of changes see Test Library release notes.
Regression tests
This release has been extensively tested on a variety of different compilers
and platforms. It is known to contain no regressions against the previous
reference release on the compilers and configurations tested. Please refer to
the corresponding regression reports to see how well your compiler performs on
the new Boost codebase.
2005-02-26 23:48:34 +01:00
|
|
|
.include "../../lang/python/application.mk"
|
2004-06-07 01:51:36 +02:00
|
|
|
|
Update boost to 1.34.1. This is based on the patches provided by Brook Milligan
in PR pkg/36558. Committing it right after the freeze so that we have enough
time to resolve the problems that this will surely cause.
New Libraries
* Foreach Library:
BOOST_FOREACH macro for easily iterating over the elements of a
sequence, from Eric Niebler.
* Statechart Library:
Arbitrarily complex finite state machines can be implemented in
easily readable and maintainable C++ code, from Andreas Huber.
* TR1 Library:
An implementation of the C++ Technical Report on Standard Library
Extensions, from John Maddock.
This library does not itself implement the TR1 components, rather
it's a thin wrapper that will include your standard library's TR1
implementation (if it has one), otherwise it will include the Boost
Library equivalents, and import them into namespace std::tr1. Highlights
include: Reference Wrappers, Smart Pointers, result_of,
Function Object Binders, Polymorphic function wrappers, Type Traits,
Random Number Generators and Distributions, Tuples, Fixed Size Array,
Hash Function Objects, Regular Expressions and
Complex Number Additional Algorithms.
* Typeof Library:
Typeof operator emulation, from Arkadiy Vertleyb and Peder Holt.
* Xpressive Library:
Regular expressions that can be written as strings or as expression
templates, and that can refer to each other and themselves recursively
with the power of context-free grammars, from Eric Niebler.
Updated Libraries
* Assign Library:
o Support for ptr_map<key,T> via the new function ptr_map_insert()
o Support for initialization of Pointer Containers when the containers
hold pointers to an abstract base class.
* Date_time library:
o Support for new US/Canada timezone rules and other bug fixes.
See Change History for details.
* Filesystem Library:
Major upgrade in preparation for submission to the C++ Standards Committee
for TR2. Changes include:
o Internationalization, provided by class templates basic_path,
basic_filesystem_error, basic_directory_iterator
and basic_directory_entry.
o Simplification of the path interface by eliminating special constructors
to identify native formats.
o Rationalization of predicate function design, including the addition of
several new functions.
o Clearer specification by reference to POSIX, the ISO/IEEE Single Unix
Standard, with provisions for Windows and other operating systems.
o Preservation of existing user code whenever possible.
o More efficient directory iteration.
o Addition of a recursive directory iterator.
* Function Library:
Boost.Function now implements a small buffer optimization, which can
drastically improve the performance when copying or constructing
Boost.Function objects storing small function objects. For instance,
bind(&X:foo, &x, _1, _2) requires no heap allocation when placed into
a Boost.Function object.
* Functional/Hash Library
o Use declarations for standard classes, so that the library doesn't
need to include all of their headers
o Deprecated the <boost/functional/hash/*.hpp> headers.
o Add support for the BOOST_HASH_NO_EXTENSIONS macro, which disables
the extensions to TR1
o Minor improvements to the hash functions for floating point numbers.
* Graph Library:
o edmonds_maximum_cardinality_matching, from Aaron Windsor.
o lengauer_tarjan_dominator_tree, from JongSoo Park.
o compressed_sparse_row_graph, from Jeremiah Willcock and Douglas Gregor
of Indiana University.
o sorted_erdos_renyi_iterator, from Jeremiah Willcock
of Indiana University.
o biconnected_components now supports a visitor and named parameters,
from Janusz Piwowarski.
o adjacency_matrix now models the Bidirectional Graph concept.
o dijkstra_shortest_paths now calls vis.initialize_vertex for each
vertex during initialization.
o Note: the name of the compiled library for the GraphViz reader has
changed to boost_graph (from bgl-viz) to match Boost conventions.
o See the complete revision history for more information.
* MultiArray Library:
Boost.MultiArray now by default provides range-checking for operator[].
Range checking can be disabled by defining the macro BOOST_DISABLE_ASSERTS
before including multi_array.hpp. A bug in multi_array::resize() related
to storage orders was fixed.
* Multi-index Containers Library:
o New random access indices.
o Non key-based indices feature new rearrange facilities.
o This version also includes a number of optimizations and usage
improvements. For a complete list of changes,
see the library release notes.
* Optional Library:
o boost::none_t and boost::none now added to Optional's documentation
o Relational operators now directly support arguments of type 'T'
and 'none_t'
o operator->() now also works with reference types.
o Helper functions make_optional(val), make_optional(cond,val)
and get_optional_value_or(opt,alternative_value) added.
o Constructor taking a boolean condition (as well as a value) added.
o Member function get_value_or(alternative_value) added.
o Incompatbility bug with mpl::apply<> fixed.
o Converting assignment bug with uninitialized lvalues fixed.
* Parameter Library:
o Every ArgumentPack is now a valid MPL Forward Sequence.
o Support for unnamed arguments (those whose keyword is deduced from
their types) is added.
o Support for named and unnamed template arguments is added.
o New overload generation macros solve the forwarding problem directly.
o See also the Python library changes, below.
* Pointer Container Library:
o Support for serialization via Boost.Serialization.
o Exceptions can be disabled by defining the macro
BOOST_PTR_CONTAINER_NO_EXCEPTIONS before including any header.
This macro is defined by default if BOOST_NO_EXCEPTIONS is defined.
o Additional std::auto_ptr<T> overloads added s.t. one can also pass
std::auto_ptr<T> instead of only T* arguments to member functions.
o transfer() now has weaker requirements s.t. one can transfer objects
from ptr_container<Derived> to ptr_container<Base>,
* Python Library:
o Boost.Python now automatically appends C++ signatures to docstrings.
The new docstring_options.hpp header is available to control the
content of docstrings.
o stl_input_iterator, for turning a Python iterable object into an STL
input iterator, from Eric Niebler.
o Support for void* conversions is added.
o Integrated support for wrapping C++ functions built with the
parameter library; keyword names are automatically known to
docsstrings.
o Enhancements to the API for better embedding support
(boost::python::import(), boost::python::exec()
and boost::python::exec_file()).
* Signals Library:
More improvements to signal invocation performance from Robert Zeh.
* Smart Pointers Library:
o Allocator support as proposed in N1851 (162 Kb PDF).
o pointer_cast and pointer_to_other utilities to allow
pointer-independent code, from Ion Gaztanaga.
* String Algorithm Library:
o lexicographical_compare
o join
o New comparison predicates is_less, is_not_greater.
o Negative indexes support (like Perl) in various algorihtms
(*_head/tail, *_nth).
* Wave Library:
o Wave now correctly recognizes pp-number tokens as mandated by the
C++ Standard, which are converted to C++ tokens right before they are
returned from the library.
o Several new preprocessing hooks have been added. For a complete
description please refer to the related documentation page:
The Context Policy.
o Shared library (dll) support has been added for the generated Wave
libraries.
o The overall error handling has been improved. It is now possible to
recover and continue after an error or a warning was issued.
o Support for optional comment and/or full whitespace preservation
in the generated output stream has been added.
o The Wave library now performs automatic include guard detection to
avoid accessing header files more than once, if appropriate.
o Full interactive mode has been added to the Wave tool. Now the Wave
tool can be used just like Python or Perl for instance to
interactively try out your BOOST_PP macros. Additionally it is now
possible to load and save the current state of an interactive
session (macro tables et.al.).
o The overall performance has been improved by upto 40-60%, depending
on the concrete files to process.
o Support for new pragmas has been added allowing to control certain
library features from inside the preprocessed sources (partial
output redirection, control of generated whitespace and #line
directives).
o Optional support for #pragma message "..." has been added.
o This version also includes a number of bug fixes and usage
improvements. For a complete list of changes, see the libraries
change log.
2008-01-04 20:58:39 +01:00
|
|
|
post-configure:
|
Changes 1.40.0:
* Build System improvements.
* Updated Libraries: Accumulators, Asio, Circular Buffer, Foreach, Function,
Fusion, Hash, Interprocess, Intrusive, MPL, Program.Options, Proto, Random,
Serialization, Unordered, Xpressive.
Changes 1.39.0:
* New Libraries: Signals2.
* Updated Libraries: Asio, Flyweight, Foreach, Hash, Interprocess, Intrusive,
Program.Options, Proto, PtrContainer, Range, Unordered, Xpressive.
* Updated Tools: Boostbook, Quickbook.
2009-10-14 08:40:07 +02:00
|
|
|
${ECHO} 'using python : ${PYVERSSUFFIX} :' \
|
Update boost to 1.34.1. This is based on the patches provided by Brook Milligan
in PR pkg/36558. Committing it right after the freeze so that we have enough
time to resolve the problems that this will surely cause.
New Libraries
* Foreach Library:
BOOST_FOREACH macro for easily iterating over the elements of a
sequence, from Eric Niebler.
* Statechart Library:
Arbitrarily complex finite state machines can be implemented in
easily readable and maintainable C++ code, from Andreas Huber.
* TR1 Library:
An implementation of the C++ Technical Report on Standard Library
Extensions, from John Maddock.
This library does not itself implement the TR1 components, rather
it's a thin wrapper that will include your standard library's TR1
implementation (if it has one), otherwise it will include the Boost
Library equivalents, and import them into namespace std::tr1. Highlights
include: Reference Wrappers, Smart Pointers, result_of,
Function Object Binders, Polymorphic function wrappers, Type Traits,
Random Number Generators and Distributions, Tuples, Fixed Size Array,
Hash Function Objects, Regular Expressions and
Complex Number Additional Algorithms.
* Typeof Library:
Typeof operator emulation, from Arkadiy Vertleyb and Peder Holt.
* Xpressive Library:
Regular expressions that can be written as strings or as expression
templates, and that can refer to each other and themselves recursively
with the power of context-free grammars, from Eric Niebler.
Updated Libraries
* Assign Library:
o Support for ptr_map<key,T> via the new function ptr_map_insert()
o Support for initialization of Pointer Containers when the containers
hold pointers to an abstract base class.
* Date_time library:
o Support for new US/Canada timezone rules and other bug fixes.
See Change History for details.
* Filesystem Library:
Major upgrade in preparation for submission to the C++ Standards Committee
for TR2. Changes include:
o Internationalization, provided by class templates basic_path,
basic_filesystem_error, basic_directory_iterator
and basic_directory_entry.
o Simplification of the path interface by eliminating special constructors
to identify native formats.
o Rationalization of predicate function design, including the addition of
several new functions.
o Clearer specification by reference to POSIX, the ISO/IEEE Single Unix
Standard, with provisions for Windows and other operating systems.
o Preservation of existing user code whenever possible.
o More efficient directory iteration.
o Addition of a recursive directory iterator.
* Function Library:
Boost.Function now implements a small buffer optimization, which can
drastically improve the performance when copying or constructing
Boost.Function objects storing small function objects. For instance,
bind(&X:foo, &x, _1, _2) requires no heap allocation when placed into
a Boost.Function object.
* Functional/Hash Library
o Use declarations for standard classes, so that the library doesn't
need to include all of their headers
o Deprecated the <boost/functional/hash/*.hpp> headers.
o Add support for the BOOST_HASH_NO_EXTENSIONS macro, which disables
the extensions to TR1
o Minor improvements to the hash functions for floating point numbers.
* Graph Library:
o edmonds_maximum_cardinality_matching, from Aaron Windsor.
o lengauer_tarjan_dominator_tree, from JongSoo Park.
o compressed_sparse_row_graph, from Jeremiah Willcock and Douglas Gregor
of Indiana University.
o sorted_erdos_renyi_iterator, from Jeremiah Willcock
of Indiana University.
o biconnected_components now supports a visitor and named parameters,
from Janusz Piwowarski.
o adjacency_matrix now models the Bidirectional Graph concept.
o dijkstra_shortest_paths now calls vis.initialize_vertex for each
vertex during initialization.
o Note: the name of the compiled library for the GraphViz reader has
changed to boost_graph (from bgl-viz) to match Boost conventions.
o See the complete revision history for more information.
* MultiArray Library:
Boost.MultiArray now by default provides range-checking for operator[].
Range checking can be disabled by defining the macro BOOST_DISABLE_ASSERTS
before including multi_array.hpp. A bug in multi_array::resize() related
to storage orders was fixed.
* Multi-index Containers Library:
o New random access indices.
o Non key-based indices feature new rearrange facilities.
o This version also includes a number of optimizations and usage
improvements. For a complete list of changes,
see the library release notes.
* Optional Library:
o boost::none_t and boost::none now added to Optional's documentation
o Relational operators now directly support arguments of type 'T'
and 'none_t'
o operator->() now also works with reference types.
o Helper functions make_optional(val), make_optional(cond,val)
and get_optional_value_or(opt,alternative_value) added.
o Constructor taking a boolean condition (as well as a value) added.
o Member function get_value_or(alternative_value) added.
o Incompatbility bug with mpl::apply<> fixed.
o Converting assignment bug with uninitialized lvalues fixed.
* Parameter Library:
o Every ArgumentPack is now a valid MPL Forward Sequence.
o Support for unnamed arguments (those whose keyword is deduced from
their types) is added.
o Support for named and unnamed template arguments is added.
o New overload generation macros solve the forwarding problem directly.
o See also the Python library changes, below.
* Pointer Container Library:
o Support for serialization via Boost.Serialization.
o Exceptions can be disabled by defining the macro
BOOST_PTR_CONTAINER_NO_EXCEPTIONS before including any header.
This macro is defined by default if BOOST_NO_EXCEPTIONS is defined.
o Additional std::auto_ptr<T> overloads added s.t. one can also pass
std::auto_ptr<T> instead of only T* arguments to member functions.
o transfer() now has weaker requirements s.t. one can transfer objects
from ptr_container<Derived> to ptr_container<Base>,
* Python Library:
o Boost.Python now automatically appends C++ signatures to docstrings.
The new docstring_options.hpp header is available to control the
content of docstrings.
o stl_input_iterator, for turning a Python iterable object into an STL
input iterator, from Eric Niebler.
o Support for void* conversions is added.
o Integrated support for wrapping C++ functions built with the
parameter library; keyword names are automatically known to
docsstrings.
o Enhancements to the API for better embedding support
(boost::python::import(), boost::python::exec()
and boost::python::exec_file()).
* Signals Library:
More improvements to signal invocation performance from Robert Zeh.
* Smart Pointers Library:
o Allocator support as proposed in N1851 (162 Kb PDF).
o pointer_cast and pointer_to_other utilities to allow
pointer-independent code, from Ion Gaztanaga.
* String Algorithm Library:
o lexicographical_compare
o join
o New comparison predicates is_less, is_not_greater.
o Negative indexes support (like Perl) in various algorihtms
(*_head/tail, *_nth).
* Wave Library:
o Wave now correctly recognizes pp-number tokens as mandated by the
C++ Standard, which are converted to C++ tokens right before they are
returned from the library.
o Several new preprocessing hooks have been added. For a complete
description please refer to the related documentation page:
The Context Policy.
o Shared library (dll) support has been added for the generated Wave
libraries.
o The overall error handling has been improved. It is now possible to
recover and continue after an error or a warning was issued.
o Support for optional comment and/or full whitespace preservation
in the generated output stream has been added.
o The Wave library now performs automatic include guard detection to
avoid accessing header files more than once, if appropriate.
o Full interactive mode has been added to the Wave tool. Now the Wave
tool can be used just like Python or Perl for instance to
interactively try out your BOOST_PP macros. Additionally it is now
possible to load and save the current state of an interactive
session (macro tables et.al.).
o The overall performance has been improved by upto 40-60%, depending
on the concrete files to process.
o Support for new pragmas has been added allowing to control certain
library features from inside the preprocessed sources (partial
output redirection, control of generated whitespace and #line
directives).
o Optional support for #pragma message "..." has been added.
o This version also includes a number of bug fixes and usage
improvements. For a complete list of changes, see the libraries
change log.
2008-01-04 20:58:39 +01:00
|
|
|
'${PREFIX}/bin/python${PYVERSSUFFIX} ;' \
|
|
|
|
>${WRKSRC}/user-config.jam
|
|
|
|
|
Complete rework of the Boost packages:
- Drop devel/boost and devel/boost-thread.
- Add devel/boost-docs which includes all the documentation related to Boost
(previously included in devel/boost).
- Add devel/boost-build which includes bjam, the Boost.Build framework.
- Add devel/boost-headers which includes all the header files needed at build
time by programs using Boost (previously included in devel/boost).
- Add devel/boost-libs which includes all the binary libraries needed at build
and run time by programs using Boost (previously included in devel/boost and
devel/thread). All of them are multithreaded, to make things easier.
- devel/boost-python includes the Boost Python library (as it did before), but
now works, given that everything is threaded again.
- Drop our thread_user.hpp customization. Avoids some build failures that
appeared when the previous boost-thread package was not installed.
- Use static PLISTs.
- Install unversioned files. Makes things *a lot* easier when building stuff
outside pkgsrc.
- Add meta-pkgs/boost, a meta package that depends on all of the above.
Thanks go to jlam@ and tv@ for their comments.
While here, update to 1.32.0:
New Toolset Names
The names of some the Boost.Build toolsets have been changed to remove the "."
(dot) character and to fix some other naming inconsistencies. For example,
vc7.1 toolset was renamed to become vc-7_1. Please refer to the Supported
Toolsets section of the installation guide for the complete list of the current
toolset names. This change was made as a part of the effort to make the Boost
distribution compatible with ISO 9660 level 2 requirements.
New Libraries
* Assignment Library: Filling containers with constant or generated data
has never been easier, from Thorsten Ottosen.
* Minmax Library: Standard library extensions for simultaneous min/max and
min/max element computations, from Hervé Brönnimann.
* Multi-index Containers Library: Containers with multiple STL-compatible
access interfaces, from Joaquín M López Muñoz.
* Numeric Conversion Library: Optimized policy-based numeric conversions,
from Fernando Cacciola.
* Program Options Library: Access to configuration data given on command
line, in config files and other sources, from Vladimir Prus.
* Range Library: A new infrastructure for generic algorithms that builds
on top of the new iterator concepts, from Thorsten Ottosen.
* Serialization Library: Serialization/de-serialization of arbitrary C++
data structures to various formats including text, binary, and xml, from
Robert Ramey.
* String Algorithms Library: Collection of string related algorithms for
case conversion, trimming, find/replace operations and more, from Pavol
Droba.
* Tribool: 3-state boolean type library, from Doug Gregor.
Updated Libraries
* Compose: This deprecated library has been removed.
* Graph:
o Added bundled properties to the adjacency_list and adjacency_matrix
class templates, greatly simplifying the introduction of internal
vertex and edge properties.
o The LEDA graph adaptors have been ported to LEDA 4.5.
o Added algorithms for betweenness centrality and betweenness
centrality clustering.
o Added circle layout and undirected spring layout algorithms.
* MPL Library:
o Updated to use the Boost Software License.
o New documentation, including a complete reference manual.
o Major interface changes and improvements, many of which are not
backward compatible. Please refer to the 1.32 changelog for the
detailed information about upgrading to the new version.
* Python Library:
o Updated to use the Boost Software License.
o A new, better method of wrapping classes with virtual functions
has been implemented.
o Support for the new Python Bool type, thanks to Daniel Holth.
o Support for upcoming GCC symbol export control features have been
folded in, thanks to Niall Douglas.
o Improved support for std::auto_ptr-like types.
o Components used by other libraries have been moved out of
python/detail and into boost/detail to improve dependency
relationships.
o Miscellaneous bug fixes and compiler workarounds.
* Signals Library: Introduced deterministic slot ordering, permitting
slots to be connected at the beginning or end of slot groups or the slot
list itself. Combiners may safely have state and are accessible from the
signal.
* Utility: class template result_of added.
* Test Library:
o namespace names gets shorten; old one still supported till next
release
o added proper encoding of XML PCDATA
o support for wide string comparison implemented
For complete list of changes see Test Library release notes.
Regression tests
This release has been extensively tested on a variety of different compilers
and platforms. It is known to contain no regressions against the previous
reference release on the compilers and configurations tested. Please refer to
the corresponding regression reports to see how well your compiler performs on
the new Boost codebase.
2005-02-26 23:48:34 +01:00
|
|
|
do-build: bjam-build
|
2004-06-07 01:51:36 +02:00
|
|
|
|
Complete rework of the Boost packages:
- Drop devel/boost and devel/boost-thread.
- Add devel/boost-docs which includes all the documentation related to Boost
(previously included in devel/boost).
- Add devel/boost-build which includes bjam, the Boost.Build framework.
- Add devel/boost-headers which includes all the header files needed at build
time by programs using Boost (previously included in devel/boost).
- Add devel/boost-libs which includes all the binary libraries needed at build
and run time by programs using Boost (previously included in devel/boost and
devel/thread). All of them are multithreaded, to make things easier.
- devel/boost-python includes the Boost Python library (as it did before), but
now works, given that everything is threaded again.
- Drop our thread_user.hpp customization. Avoids some build failures that
appeared when the previous boost-thread package was not installed.
- Use static PLISTs.
- Install unversioned files. Makes things *a lot* easier when building stuff
outside pkgsrc.
- Add meta-pkgs/boost, a meta package that depends on all of the above.
Thanks go to jlam@ and tv@ for their comments.
While here, update to 1.32.0:
New Toolset Names
The names of some the Boost.Build toolsets have been changed to remove the "."
(dot) character and to fix some other naming inconsistencies. For example,
vc7.1 toolset was renamed to become vc-7_1. Please refer to the Supported
Toolsets section of the installation guide for the complete list of the current
toolset names. This change was made as a part of the effort to make the Boost
distribution compatible with ISO 9660 level 2 requirements.
New Libraries
* Assignment Library: Filling containers with constant or generated data
has never been easier, from Thorsten Ottosen.
* Minmax Library: Standard library extensions for simultaneous min/max and
min/max element computations, from Hervé Brönnimann.
* Multi-index Containers Library: Containers with multiple STL-compatible
access interfaces, from Joaquín M López Muñoz.
* Numeric Conversion Library: Optimized policy-based numeric conversions,
from Fernando Cacciola.
* Program Options Library: Access to configuration data given on command
line, in config files and other sources, from Vladimir Prus.
* Range Library: A new infrastructure for generic algorithms that builds
on top of the new iterator concepts, from Thorsten Ottosen.
* Serialization Library: Serialization/de-serialization of arbitrary C++
data structures to various formats including text, binary, and xml, from
Robert Ramey.
* String Algorithms Library: Collection of string related algorithms for
case conversion, trimming, find/replace operations and more, from Pavol
Droba.
* Tribool: 3-state boolean type library, from Doug Gregor.
Updated Libraries
* Compose: This deprecated library has been removed.
* Graph:
o Added bundled properties to the adjacency_list and adjacency_matrix
class templates, greatly simplifying the introduction of internal
vertex and edge properties.
o The LEDA graph adaptors have been ported to LEDA 4.5.
o Added algorithms for betweenness centrality and betweenness
centrality clustering.
o Added circle layout and undirected spring layout algorithms.
* MPL Library:
o Updated to use the Boost Software License.
o New documentation, including a complete reference manual.
o Major interface changes and improvements, many of which are not
backward compatible. Please refer to the 1.32 changelog for the
detailed information about upgrading to the new version.
* Python Library:
o Updated to use the Boost Software License.
o A new, better method of wrapping classes with virtual functions
has been implemented.
o Support for the new Python Bool type, thanks to Daniel Holth.
o Support for upcoming GCC symbol export control features have been
folded in, thanks to Niall Douglas.
o Improved support for std::auto_ptr-like types.
o Components used by other libraries have been moved out of
python/detail and into boost/detail to improve dependency
relationships.
o Miscellaneous bug fixes and compiler workarounds.
* Signals Library: Introduced deterministic slot ordering, permitting
slots to be connected at the beginning or end of slot groups or the slot
list itself. Combiners may safely have state and are accessible from the
signal.
* Utility: class template result_of added.
* Test Library:
o namespace names gets shorten; old one still supported till next
release
o added proper encoding of XML PCDATA
o support for wide string comparison implemented
For complete list of changes see Test Library release notes.
Regression tests
This release has been extensively tested on a variety of different compilers
and platforms. It is known to contain no regressions against the previous
reference release on the compilers and configurations tested. Please refer to
the corresponding regression reports to see how well your compiler performs on
the new Boost codebase.
2005-02-26 23:48:34 +01:00
|
|
|
do-install: boost-install-libs
|
2004-06-07 01:51:36 +02:00
|
|
|
|
|
|
|
.include "../../mk/bsd.pkg.mk"
|