@@ -5,7 +5,14 @@ import("../../../core/runtime/jsi/v8/v8.gni")
55import (" ../../../testing/test.gni" )
66import (" ../devtool.gni" )
77
8+ if (is_android ) {
9+ import (" ../../../platform/android/lynx_android/LynxAndroid.gni" )
10+ }
11+
812devtool_common_js_debug_sources = [
13+ " helper/js_debug_helper.cc" ,
14+ " helper/js_debug_helper.h" ,
15+ " helper/js_debug_proxy.h" ,
916 " inspector_client_delegate_impl.cc" ,
1017 " inspector_client_delegate_impl.h" ,
1118 " inspector_const_extend.h" ,
@@ -97,39 +104,23 @@ devtool_source_set("devtool_js_debug") {
97104 " :devtool_common_js_debug" ,
98105 " ../../../base/src:base_log_headers" ,
99106 ]
100- if (! enable_unittests ) {
101- deps += [ " :devtool_quickjs_debug" ]
102- if (is_android || jsengine_type == " v8" ) {
103- deps += [ " :devtool_v8_debug" ]
104- include_dirs = [ v8_headers_search_path ]
105- }
106- }
107- public_configs = [ " :common_config" ]
108107}
109108
110- devtool_source_set (" devtool_lepus_debug_sources" ) {
109+ devtool_source_set (" devtool_lepus_debug_manager" ) {
110+ sources = [
111+ " lepus/manager/lepus_inspector_manager_impl.cc" ,
112+ " lepus/manager/lepus_inspector_manager_impl.h" ,
113+ ]
114+ deps = [ " ../../js_inspect/lepus:lepus_debug" ]
115+ }
116+
117+ devtool_source_set (" devtool_lepus_debug" ) {
111118 sources = devtool_lepus_debug_sources
112119 deps = [
113120 " :devtool_common_js_debug" ,
114121 " ../../../base/src:base_log_headers" ,
115122 " ../recorder:recorder" ,
116123 ]
117-
118- if (! enable_unittests ) {
119- sources += [
120- " lepus/manager/lepus_inspector_manager_impl.cc" ,
121- " lepus/manager/lepus_inspector_manager_impl.h" ,
122- ]
123- }
124-
125- public_configs = [ " :common_config" ]
126- }
127-
128- devtool_source_set (" devtool_lepus_debug" ) {
129- deps = [ " :devtool_lepus_debug_sources" ]
130- if (! enable_unittests ) {
131- deps += [ " ../../js_inspect/lepus:lepus_debug" ]
132- }
133124}
134125
135126devtool_source_set (" js_debug" ) {
@@ -138,11 +129,26 @@ devtool_source_set("js_debug") {
138129 " :devtool_lepus_debug" ,
139130 " ../../../third_party/rapidjson:rapidjson" ,
140131 ]
132+ if (! is_android && ! enable_unittests ) {
133+ deps += [ " :js_debug_bridge" ]
134+ }
141135}
142136
143- config (" common_config" ) {
144- if (enable_unittests ) {
145- defines = [ " ENABLE_UNITTESTS" ]
137+ devtool_source_set (" js_debug_bridge" ) {
138+ sources = [
139+ " helper/js_debug_proxy_impl.cc" ,
140+ " helper/js_debug_proxy_impl.h" ,
141+ ]
142+ if (is_android ) {
143+ sources += [ " ../android/devtool_js_bridge.cc" ]
144+ }
145+ deps = [
146+ " :devtool_lepus_debug_manager" ,
147+ " :devtool_quickjs_debug" ,
148+ ]
149+ if (is_android || jsengine_type == " v8" ) {
150+ deps += [ " :devtool_v8_debug" ]
151+ include_dirs = [ v8_headers_search_path ]
146152 }
147153}
148154
@@ -174,3 +180,56 @@ group("js_debug_unit_test") {
174180 testonly = true
175181 deps = [ " :js_debug_unittest_exec" ]
176182}
183+
184+ if (is_android ) {
185+ cmake_target (" lynxdevtool_js_bridge" ) {
186+ is_only_sub_cmake = true
187+ cmake_version = " 3.4.1"
188+ target_type = " shared_library"
189+ output_name = " lynxdevtool_js_bridge"
190+ deps = [
191+ " :lynxdevtool_js_bridge_lib" ,
192+ " ../../../platform/android/lynx_android:lynx_android" ,
193+ " ../../../platform/android/lynx_devtool:lynxdevtool" ,
194+ ]
195+
196+ lib_dirs = [
197+ " ${ primjs_native_lib_dir } " ,
198+ " ${ v8_native_lib_dir } " ,
199+ ]
200+ libs = [
201+ " android" ,
202+ " dl" ,
203+ " log" ,
204+ " quick" ,
205+ " v8_libfull.cr" ,
206+ ]
207+
208+ if (enable_napi_binding ) {
209+ libs += [
210+ " napi" ,
211+ " napi_v8" ,
212+ ]
213+ }
214+
215+ configs = [
216+ " ../../../platform/android/lynx_devtool:devtool_common_defines" ,
217+ " ../../../platform/android/lynx_devtool:devtool_flag_config" ,
218+ " ../../../platform/android/lynx_devtool:devtool_ldflag_config" ,
219+ " ../../../platform/android:16kb_page" ,
220+ ]
221+ }
222+
223+ devtool_source_set (" lynxdevtool_js_bridge_lib" ) {
224+ public_deps = [
225+ " :js_debug_bridge" ,
226+ " :v8_profile_devtool" ,
227+ " ../../../core/build:build" ,
228+ ]
229+
230+ # jsbridge source file
231+ if (enable_napi_binding ) {
232+ public_deps += [ " ../../../core/runtime/bindings/napi:napi_binding_v8" ]
233+ }
234+ }
235+ }
0 commit comments