Skip to content

Commit 0910710

Browse files
committed
Correct class/function mismatches for MSVC and bring across
documentation tweaks from HEAD. [SVN r36355]
1 parent 04c5281 commit 0910710

File tree

11 files changed

+31
-41
lines changed

11 files changed

+31
-41
lines changed

build/Jamfile.v2

Lines changed: 14 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -12,21 +12,6 @@ if [ python.configured ] {
1212

1313
project boost/python
1414
: source-location ../src
15-
: requirements
16-
#<include>$(PYTHON_PATH)/include
17-
# $(lib_condition)<library-path>$(PYTHON_PATH)/libs
18-
# <link>shared:<library>$(PYTHON_LIB)
19-
# <define>$(defines)
20-
#: usage-requirements # requirement that will be propageted to *users* of this library
21-
# <include>$(PYTHON_PATH)/include
22-
23-
# We have a bug which causes us to conclude that conditionalized
24-
# properties in this section are not free.
25-
# $(lib_condition)<library-path>$(PYTHON_PATH)/lib/python2.2/config
26-
# <shared>true:<find-library>$(PYTHON_LIB)
27-
28-
# <library-path>$(PYTHON_PATH)/lib/python2.2/config
29-
# <library>$(PYTHON_LIB)
3015
;
3116

3217
lib boost_python
@@ -63,16 +48,21 @@ lib boost_python
6348
: # requirements
6449
<link>static:<define>BOOST_PYTHON_STATIC_LIB
6550
<define>BOOST_PYTHON_SOURCE
66-
# On Linux, we don't link to Python library itself. If
67-
# Boost.Python is used for extension, all Python
68-
# symbols are available in Python interpreter.
69-
# If Boost.Python is used for extending, client
70-
# is required to link to /python//python itself.
71-
# On Windows, all code using Python has to link
72-
# to python import library. The 'python_for_extension'
73-
# is the target that's setup to provide either just
74-
# include paths, or import library.
51+
52+
# On Windows, all code using Python has to link to the Python
53+
# import library.
54+
#
55+
# On *nix we never link libboost_python to libpython. When
56+
# extending Python, all Python symbols are provided by the
57+
# Python interpreter executable. When embedding Python, the
58+
# client executable is expected to explicitly link to
59+
# /python//python (the target representing libpython) itself.
60+
#
61+
# python_for_extensions is a target defined by Boost.Build to
62+
# provide the Python include paths, and on Windows, the Python
63+
# import library, as usage requirements.
7564
<library>/python//python_for_extensions
65+
7666
: # default build
7767
<link>shared
7868
: # usage requirements

doc/building.html

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -66,11 +66,9 @@ <h2>Contents</h2>
6666
<hr>
6767

6868
<h2><a name="requirements">Requirements</a></h2>
69-
<b>Boost.Python</b> version 2 requires <a href=
69+
<b>Boost.Python</b> requires <a href=
7070
"http://www.python.org/2.2">Python 2.2</a> <i>or <a href=
71-
"http://www.python.org">newer</a></i>. An unsupported archive of
72-
Boost.Python version 1, which works with versions of Python since 1.5.2,
73-
is available <a href="../build/python_v1.zip">here</a>.
71+
"http://www.python.org">newer</a></i>.
7472

7573
<h2><a name="building">Building Boost.Python</a></h2>
7674

doc/projects.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -307,7 +307,7 @@ <h3>Scientific Computing</h3>
307307
<p>The SourceForge cctbx project is organized in modules to facilitate
308308
use in non-crystallographic applications. The scitbx module implements
309309
a general purpose array family for scientific applications and pure C++
310-
ports of FFTPACK and the LBFGS conjugate gradient minimizer.</p>
310+
ports of FFTPACK and the L-BFGS quasi-Newton minimizer.</p>
311311
</dd>
312312

313313
<dt><a href="http://www.llnl.gov/CASC/emsolve"><b>EMSolve</b></a></dt>

doc/tutorial/doc/tutorial.qbk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1100,7 +1100,7 @@ overloaded functions in one-shot:
11001100

11011101
Then...
11021102

1103-
.def("foo", foo, foo_overloads());
1103+
.def("foo", (void(*)(bool, int, char))0, foo_overloads());
11041104

11051105
Notice though that we have a situation now where we have a minimum of zero
11061106
(0) arguments and a maximum of 3 arguments.

doc/v2/opaque.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
22

3-
<!-- Copyright Gottfried Ganßauge 2006. Distributed under the Boost -->
3+
<!-- Copyright 2003..2006 Haufe Mediengruppe. Distributed under the Boost -->
44
<!-- Software License, Version 1.0. (See accompanying -->
55
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
66

doc/v2/reference.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -917,7 +917,7 @@ <h2><a name="type_conversion">To/From Python Type Conversion</a></h2>
917917
<dd>
918918
<dl class="index">
919919
<dt><a href=
920-
"opaque.html#opaque-spec">opaque_pointer_converter</a></dt>
920+
"opaque.html#opaque-spec">opaque</a></dt>
921921
</dl>
922922
</dd>
923923

example/boost-build.jam

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,6 @@
22
# Software License, Version 1.0. (See accompanying
33
# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
44

5-
# Edit this path to point at the tools/build/v1 subdirectory of your
5+
# Edit this path to point at the tools/build/v2 subdirectory of your
66
# Boost installation. Absolute paths work, too.
7-
boost-build ../../../tools/build/v1 ;
7+
boost-build ../../../tools/build/v2 ;

include/boost/python/docstring_options.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ class BOOST_PYTHON_DECL docstring_options : boost::noncopyable
6262
show_signatures_ = true;
6363
}
6464

65-
friend class objects::function;
65+
friend struct objects::function;
6666

6767
private:
6868
static volatile bool show_user_defined_;

include/boost/python/make_constructor.hpp

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -103,12 +103,14 @@ namespace detail
103103

104104
// If the BasePolicy_ supplied a result converter it would be
105105
// ignored; issue an error if it's not the default.
106-
BOOST_STATIC_ASSERT((
107-
is_same<
106+
BOOST_MPL_ASSERT_MSG(
107+
(is_same<
108108
typename BasePolicy_::result_converter
109109
, default_result_converter
110-
>::value
111-
));
110+
>::value)
111+
, MAKE_CONSTRUCTOR_SUPPLIES_ITS_OWN_RESULT_CONVERTER_THAT_WOULD_OVERRIDE_YOURS
112+
, (typename BasePolicy_::result_converter)
113+
);
112114

113115
typedef constructor_result_converter result_converter;
114116
typedef offset_args<typename BasePolicy_::argument_package, mpl::int_<1> > argument_package;

include/boost/python/numeric.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717

1818
namespace boost { namespace python { namespace numeric {
1919

20-
struct array;
20+
class array;
2121

2222
namespace aux
2323
{

0 commit comments

Comments
 (0)