-
Notifications
You must be signed in to change notification settings - Fork 0
/
Jamroot
149 lines (130 loc) · 6.38 KB
/
Jamroot
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
# (c) Copyright 2012 Felipe Magno de Almeida
#
# Distributed under the Boost Software License, Version 1.0. (See
# accompanying file LICENSE_1_0.txt or copy at
# http://www.boost.org/LICENSE_1_0.txt)
import testing ;
import modules ;
path-constant here : . ;
local search_path = [ modules.peek : BOOST_BUILD_PATH ] ;
search_path += $(here)/tools ;
modules.poke : BOOST_BUILD_PATH : $(search_path) ;
import path ;
import java : java-class jar ;
project javabind ;
alias javabind : /boost//headers /jvm//jvm /boost//filesystem
: <include>include
: : <include>include
;
explicit javabind ;
alias compile-tests
: [ compile tests/create_overload.cpp javabind ]
;
explicit compile-tests ;
java-class ReadStaticAttributeByte : tests/ReadStaticAttributeByte.java ;
explicit ReadStaticAttributeByte ;
java-class ReadStaticAttributeChar : tests/ReadStaticAttributeChar.java ;
explicit ReadStaticAttributeChar ;
java-class ReadStaticAttributeDouble : tests/ReadStaticAttributeDouble.java ;
explicit ReadStaticAttributeDouble ;
java-class ReadStaticAttributeFloat : tests/ReadStaticAttributeFloat.java ;
explicit ReadStaticAttributeFloat ;
java-class ReadStaticAttributeInt : tests/ReadStaticAttributeInt.java ;
explicit ReadStaticAttributeInt ;
java-class ReadStaticAttributeLong : tests/ReadStaticAttributeLong.java ;
explicit ReadStaticAttributeLong ;
java-class ReadStaticAttributeShort : tests/ReadStaticAttributeShort.java ;
explicit ReadStaticAttributeShort ;
java-class ReadStaticAttributeObject : tests/ReadStaticAttributeObject.java ;
explicit ReadStaticAttributeObject ;
java-class CallMethodVoid : tests/CallMethodVoid.java ;
explicit CallMethodVoid ;
java-class CallMethodByte : tests/CallMethodByte.java ;
explicit CallMethodByte ;
java-class CallMethodChar : tests/CallMethodChar.java ;
explicit CallMethodChar ;
java-class CallMethodFloat : tests/CallMethodFloat.java ;
explicit CallMethodFloat ;
java-class CallMethodDouble : tests/CallMethodDouble.java ;
explicit CallMethodDouble ;
java-class CallMethodInt : tests/CallMethodInt.java ;
explicit CallMethodInt ;
java-class CallMethodLong : tests/CallMethodLong.java ;
explicit CallMethodLong ;
java-class CallMethodObject : tests/CallMethodObject.java ;
explicit CallMethodObject ;
java-class CallMethodShort : tests/CallMethodShort.java ;
explicit CallMethodShort ;
java-class NewObject : tests/NewObject.java ;
explicit NewObject ;
java-class NewObjectByte : tests/NewObjectByte.java ;
explicit NewObjectByte ;
java-class NewObjectChar : tests/NewObjectChar.java ;
explicit NewObjectChar ;
java-class NewObjectShort : tests/NewObjectShort.java ;
explicit NewObjectShort ;
java-class NewObjectInt : tests/NewObjectInt.java ;
explicit NewObjectInt ;
java-class NewObjectLong : tests/NewObjectLong.java ;
explicit NewObjectLong ;
java-class NewObjectDouble : tests/NewObjectDouble.java ;
explicit NewObjectDouble ;
java-class NewObjectFloat : tests/NewObjectFloat.java ;
explicit NewObjectFloat ;
java-class NewObjectObject : tests/NewObjectObject.java ;
explicit NewObjectObject ;
alias runtime-tests
: [ run tests/create-jvm.cpp javabind /jvm//jvm ]
# [ run tests/call_void_method.cpp javabind /jvm//jvm : : CallVoidMethod ]
[ run tests/new_object.cpp javabind /jvm//jvm : : NewObject NewObjectByte
NewObjectChar NewObjectDouble NewObjectFloat NewObjectInt NewObjectLong
NewObjectObject NewObjectShort ]
[ run tests/read_static_attribute.cpp javabind /jvm//jvm : : ReadStaticAttributeByte
ReadStaticAttributeChar ReadStaticAttributeDouble ReadStaticAttributeDouble
ReadStaticAttributeFloat ReadStaticAttributeInt ReadStaticAttributeLong
ReadStaticAttributeObject ReadStaticAttributeShort ]
[ run tests/call_method.cpp javabind /jvm//jvm : : CallMethodByte
CallMethodChar CallMethodDouble CallMethodFloat CallMethodInt
CallMethodLong CallMethodObject CallMethodShort CallMethodVoid ]
;
explicit runtime-tests ;
exe hello_world_demo : demo/hello_world/hello_world.cpp /javabind//javabind ;
explicit hello_world_demo ;
exe inheritance_demo : demo/inheritance/inheritance.cpp /javabind//javabind ;
explicit inheritance_demo ;
exe cpp_bind_demo : demo/cpp_bind/cpp_bind.cpp /javabind//javabind ;
explicit cpp_bind_demo ;
java-class CppBindHelloWorld : demo/cpp_bind/CppBindHelloWorld.java ;
explicit CppBindHelloWorld ;
exe manually_calling_demo : demo/manually_calling/manually_calling.cpp /javabind//javabind ;
explicit manually_calling_demo ;
java-class ManuallyCallingHelloWorld : demo/manually_calling/ManuallyCallingHelloWorld.java ;
explicit ManuallyCallingHelloWorld ;
exe manually_attribute_demo : demo/manually_attribute/manually_attribute.cpp /javabind//javabind ;
explicit manually_attribute_demo ;
java-class ManuallyAttribute : demo/manually_attribute/ManuallyAttribute.java ;
explicit ManuallyAttribute ;
lib cpp_library_demo : demo/cpp_library/cpp_library.cpp /javabind//javabind ;
explicit cpp_library_demo ;
java-class CallingCppLibrary : demo/cpp_library/CallingCppLibrary.java ;
explicit CallingCppLibrary ;
exe bind_function_demo : demo/bind_function/bind_function.cpp /javabind//javabind ;
explicit bind_function_demo ;
java-class BindFunctionHelloWorld : demo/bind_function/BindFunctionHelloWorld.java ;
explicit BindFunctionHelloWorld ;
exe bind_class_demo : demo/bind_class/bind_class.cpp /javabind//javabind
: <define>FUSION_MAX_VECTOR_SIZE=20 ;
explicit bind_class_demo ;
install hello_world_demo_install : hello_world_demo : <location>stage-demo/hello_world ;
install cpp_bind_demo_install : cpp_bind_demo CppBindHelloWorld : <location>stage-demo/cpp_bind ;
install manually_calling_demo_install : manually_calling_demo ManuallyCallingHelloWorld : <location>stage-demo/manually_calling ;
install manually_attribute_demo_install : manually_attribute_demo ManuallyAttribute : <location>stage-demo/manually_attribute ;
install cpp_library_demo_install : cpp_library_demo CallingCppLibrary : <location>stage-demo/cpp_library ;
install bind_function_demo_install : bind_function_demo BindFunctionHelloWorld : <location>stage-demo/bind_function ;
install bind_class_demo_install : bind_class_demo : <location>stage-demo/bind_class ;
install inheritance_install : inheritance_demo : <location>stage-demo/inheritance ;
alias stage-demo : hello_world_demo_install cpp_bind_demo_install
manually_calling_demo_install manually_attribute_demo_install cpp_library_demo_install
bind_function_demo_install bind_class_demo_install
inheritance_install
;