summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Jamroot5
-rw-r--r--boostcpp.jam13
2 files changed, 18 insertions, 0 deletions
diff --git a/Jamroot b/Jamroot
index 4a73899267..e669186821 100644
--- a/Jamroot
+++ b/Jamroot
@@ -182,6 +182,11 @@ rule tag ( name : type ? : property-set )
return [ boostcpp.tag $(name) : $(type) : $(property-set) ] ;
}
+rule python-tag ( name : type ? : property-set )
+{
+ return [ boostcpp.python-tag $(name) : $(type) : $(property-set) ] ;
+}
+
rule handle-static-runtime ( properties * )
{
# Using static runtime with shared libraries is impossible on Linux, and
diff --git a/boostcpp.jam b/boostcpp.jam
index f45d12ef2f..38113c46c6 100644
--- a/boostcpp.jam
+++ b/boostcpp.jam
@@ -163,6 +163,19 @@ rule tag ( name : type ? : property-set )
}
}
+# Specialized tag function to use for libraries linking to Python.
+# Appends value of --python-buildid if provided.
+rule python-tag ( name : type ? : property-set )
+{
+ local result = $(name) ;
+ if $(type) in STATIC_LIB SHARED_LIB IMPORT_LIB && $(PYTHON_ID)
+ {
+ result = $(result)-$(PYTHON_ID) ;
+ }
+
+ # forward to the boost tagging rule
+ return [ tag $(result) : $(type) : $(property-set) ] ;
+}
################################################################################
#