summaryrefslogtreecommitdiff
path: root/slice.jam
diff options
context:
space:
mode:
authorDan Goodliffe <dan@randomdan.homeip.net>2016-06-26 14:06:54 +0100
committerDan Goodliffe <dan@randomdan.homeip.net>2016-06-26 14:06:54 +0100
commit714f78ab711cc5a8dd4285e54b7a0079526bf7ed (patch)
treee7262c8edca5c67e2a9030feb47b4c851dcb1fd2 /slice.jam
parentRemove implicit cast to char * because it's dangerous as everyone knows (diff)
downloadproject2-714f78ab711cc5a8dd4285e54b7a0079526bf7ed.tar.bz2
project2-714f78ab711cc5a8dd4285e54b7a0079526bf7ed.tar.xz
project2-714f78ab711cc5a8dd4285e54b7a0079526bf7ed.zip
Allow control of --dll-export and --ice
Diffstat (limited to 'slice.jam')
-rw-r--r--slice.jam15
1 files changed, 11 insertions, 4 deletions
diff --git a/slice.jam b/slice.jam
index bc038c1..0ea52ba 100644
--- a/slice.jam
+++ b/slice.jam
@@ -8,6 +8,8 @@ import toolset ;
type.register SLICE : ice ;
feature slicer : no yes pure ;
+feature allow-ice : no yes ;
+feature ice-visibility : public hidden ;
class slice-scanner : common-scanner
{
@@ -26,24 +28,29 @@ generators.register-standard slice.slicer : SLICE : CPP H : <slicer>yes ;
generators.register-standard slice.slicer.pure : SLICE : CPP : <slicer>pure ;
toolset.flags slice.slice2cpp INCLUDES <include> ;
+toolset.flags slice.slice2cpp DLLEXPORT <ice-visibility>public : --dll-export JAM_DLL_PUBLIC ;
+toolset.flags slice.slice2cpp ALLOWICE <allow-ice>yes : --ice ;
toolset.flags slice.slicer INCLUDES <include> ;
+toolset.flags slice.slicer DLLEXPORT <ice-visibility>public : --dll-export JAM_DLL_PUBLIC ;
+toolset.flags slice.slicer ALLOWICE <allow-ice>yes : --ice ;
toolset.flags slice.slicer.pure INCLUDES <include> ;
+toolset.flags slice.slicer.pure ALLOWICE <allow-ice>yes : --ice ;
actions slice.slice2cpp
{
- slice2cpp -I"$(INCLUDES)" --checksum --output-dir $(1[1]:D) $(2) --dll-export JAM_DLL_PUBLIC
+ slice2cpp -I"$(INCLUDES)" --checksum --output-dir $(1[1]:D) $(2) $(DLLEXPORT) $(ALLOWICE[1])
}
actions slice.slicer
{
- slice2cpp -I"$(INCLUDES)" --checksum --output-dir $(1[1]:D) $(2) --dll-export JAM_DLL_PUBLIC
- slicer -I"$(INCLUDES)" $(2) $(1[1])
+ slice2cpp -I"$(INCLUDES)" --checksum --output-dir $(1[1]:D) $(2) $(DLLEXPORT) $(ALLOWICE[1])
+ slicer -I"$(INCLUDES)" $(2) $(1[1]) $(ALLOWICE[1])
}
actions slice.slicer.pure
{
truncate -c -s 0 $(1[1])
- slicer -I"$(INCLUDES)" $(2) $(1[1])
+ slicer -I"$(INCLUDES)" $(2) $(1[1]) $(ALLOWICE[1])
}
IMPORT $(__name__) : slice.slice2cpp : : slice.slice2cpp ;