@@ -16,21 +16,25 @@ import("//build_overrides/chip.gni")
16
16
17
17
import (" ${ chip_root } /build/chip/tools.gni" )
18
18
19
+ import (" //with_pw_rpc.gni" )
20
+
19
21
assert (chip_build_tools )
20
22
21
- import (" //build_overrides/pigweed.gni" )
22
- import (" $dir_pw_build /target_types.gni" )
23
- import (" ${ chip_root } /examples/common/pigweed/pigweed_rpcs.gni" )
23
+ declare_args () {
24
+ bridge_enable_pw_rpc = false
25
+ }
26
+
27
+ if (bridge_enable_pw_rpc ) {
28
+ import (" //build_overrides/pigweed.gni" )
29
+ import (" $dir_pw_build /target_types.gni" )
30
+ import (" ${ chip_root } /examples/common/pigweed/pigweed_rpcs.gni" )
31
+ }
24
32
25
33
executable (" fabric-bridge-app" ) {
26
34
sources = [
27
35
" ${ chip_root } /examples/fabric-bridge-app/fabric-bridge-common/include/CHIPProjectAppConfig.h" ,
28
36
" Device.cpp" ,
29
- " RpcClient.cpp" ,
30
- " RpcServer.cpp" ,
31
37
" include/Device.h" ,
32
- " include/RpcClient.h" ,
33
- " include/RpcServer.h" ,
34
38
" main.cpp" ,
35
39
]
36
40
@@ -44,31 +48,39 @@ executable("fabric-bridge-app") {
44
48
45
49
include_dirs = [ " include" ]
46
50
47
- defines = [
48
- " PW_RPC_FABRIC_ADMIN_SERVICE=1" ,
49
- " PW_RPC_FABRIC_BRIDGE_SERVICE=1" ,
50
- ]
51
-
52
- sources += [ " ${ chip_root } /examples/platform/linux/system_rpc_server.cc" ]
53
-
54
- deps += [
55
- " $dir_pw_hdlc :default_addresses" ,
56
- " $dir_pw_hdlc :rpc_channel_output" ,
57
- " $dir_pw_log " ,
58
- " $dir_pw_rpc :server" ,
59
- " $dir_pw_rpc /system_server:facade" ,
60
- " $dir_pw_rpc /system_server:socket" ,
61
- " $dir_pw_stream :socket_stream" ,
62
- " $dir_pw_sync :mutex" ,
63
- " ${ chip_root } /config/linux/lib/pw_rpc:pw_rpc" ,
64
- " ${ chip_root } /examples/common/pigweed:fabric_admin_service.nanopb_rpc" ,
65
- " ${ chip_root } /examples/common/pigweed:fabric_bridge_service.nanopb_rpc" ,
66
- " ${ chip_root } /examples/common/pigweed:rpc_services" ,
67
- ]
68
-
69
- deps += pw_build_LINK_DEPS
70
-
71
- include_dirs += [ " ${ chip_root } /examples/common" ]
51
+ if (bridge_enable_pw_rpc ) {
52
+ defines = [
53
+ " PW_RPC_FABRIC_ADMIN_SERVICE=1" ,
54
+ " PW_RPC_FABRIC_BRIDGE_SERVICE=1" ,
55
+ ]
56
+
57
+ sources += [
58
+ " ${ chip_root } /examples/platform/linux/system_rpc_server.cc" ,
59
+ " RpcClient.cpp" ,
60
+ " RpcServer.cpp" ,
61
+ " include/RpcClient.h" ,
62
+ " include/RpcServer.h" ,
63
+ ]
64
+
65
+ deps += [
66
+ " $dir_pw_hdlc :default_addresses" ,
67
+ " $dir_pw_hdlc :rpc_channel_output" ,
68
+ " $dir_pw_log " ,
69
+ " $dir_pw_rpc :server" ,
70
+ " $dir_pw_rpc /system_server:facade" ,
71
+ " $dir_pw_rpc /system_server:socket" ,
72
+ " $dir_pw_stream :socket_stream" ,
73
+ " $dir_pw_sync :mutex" ,
74
+ " ${ chip_root } /config/linux/lib/pw_rpc:pw_rpc" ,
75
+ " ${ chip_root } /examples/common/pigweed:fabric_admin_service.nanopb_rpc" ,
76
+ " ${ chip_root } /examples/common/pigweed:fabric_bridge_service.nanopb_rpc" ,
77
+ " ${ chip_root } /examples/common/pigweed:rpc_services" ,
78
+ ]
79
+
80
+ deps += pw_build_LINK_DEPS
81
+
82
+ include_dirs += [ " ${ chip_root } /examples/common" ]
83
+ }
72
84
73
85
output_dir = root_out_dir
74
86
}
0 commit comments