2
0
mirror of https://github.com/boostorg/build.git synced 2026-02-15 13:02:11 +00:00

Add example of calling Python modules from Boost.Build.

[SVN r34474]
This commit is contained in:
Vladimir Prus
2006-07-07 07:14:46 +00:00
parent a7f3c8a3c4
commit eaa779f560
4 changed files with 38 additions and 0 deletions

View File

@@ -0,0 +1,5 @@
import python_helpers ;
ECHO "test1:" [ python_helpers.test1 ] ;
ECHO "test2:" [ python_helpers.test2 1234 : 5678 ] ;

View File

@@ -0,0 +1,7 @@
# Import the Python rules to Boost.Build
PYTHON_IMPORT_RULE python_helpers : test1 : python_helpers : test1 ;
PYTHON_IMPORT_RULE python_helpers : test2 : python_helpers : test2 ;
# Make the new rules accessible to everybody who imports us.
EXPORT python_helpers : test1 test2 ;

View File

@@ -0,0 +1,15 @@
# Declare a couple of functions called from Boost.Build
#
# Each function will receive as many arguments as there ":"-separated
# arguments in bjam call. Each argument is a list of strings.
# As a special exception (aka bug), if no arguments are passed in bjam,
# Python function will be passed a single empty list.
#
# All Python functions must return a list of strings, which may be empty.
def test1(l):
return ["foo", "bar"]
def test2(l, l2):
return [l[0], l2[0]]

View File

@@ -0,0 +1,11 @@
This example shows how you can use Python modules from Boost.Build.
In order to do this, you need to build bjam with Python support, by running:
./build.sh --with-python=/usr
in jam directory. (Replace /usr with the root of your Python installation.)
The integration between Python and bjam is very basic now, but enough to
be useful.