• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) 2024 Huawei Device Co., Ltd.
2# Licensed under the Apache License, Version 2.0 (the "License");
3# you may not use this file except in compliance with the License.
4# You may obtain a copy of the License at
5#
6#     http://www.apache.org/licenses/LICENSE-2.0
7#
8# Unless required by applicable law or agreed to in writing, software
9# distributed under the License is distributed on an "AS IS" BASIS,
10# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11# See the License for the specific language governing permissions and
12# limitations under the License.
13
14import("//base/startup/appspawn/appspawn.gni")
15import("//build/test.gni")
16
17ohos_unittest("AppSpawn_ut") {
18  module_out_path = "${module_output_path}"
19  deps = []
20  defines = [
21    "APPSPAWN_BASE_DIR=\"/data/appspawn_ut\"",
22    "APPSPAWN_LABEL=\"APPSPAWN_UT\"",
23    "APPSPAWN_TEST",
24    "APPSPAWN_DEBUG",
25    "DEBUG_BEGETCTL_BOOT",
26    "USER_TIMER_TO_CHECK",
27    "OHOS_DEBUG",
28    "GRAPHIC_PERMISSION_CHECK",
29    "capset=CapsetStub",
30    "unshare=UnshareStub",
31    "mount=MountStub",
32    "symlink=SymlinkStub",
33    "chdir=ChdirStub",
34    "chroot=ChrootStub",
35    "syscall=SyscallStub",
36    "umount2=Umount2Stub",
37    "access=AccessStub",
38    "dlopen=DlopenStub",
39    "dlsym=DlsymStub",
40    "dlclose=DlcloseStub",
41    "execv=ExecvStub",
42    "getprocpid=GetprocpidStub",
43    "setgroups=SetgroupsStub",
44    "setresgid=SetresgidStub",
45    "setresuid=SetresuidStub",
46    "setuid=SetuidStub",
47    "setgid=SetgidStub",
48    "execvp=ExecvpStub",
49    "ioctl=IoctlStub",
50    "execve=ExecveStub",
51    "setcon=SetconStub",
52  ]
53
54  include_dirs = [
55    "${appspawn_path}",
56    "${appspawn_path}/common",
57    "${appspawn_path}/standard",
58    "${appspawn_path}/modules/modulemgr",
59    "${appspawn_path}/modules/ace_adapter",
60    "${appspawn_path}/modules/common",
61    "${appspawn_path}/modules/sandbox",
62    "${appspawn_path}/modules/sysevent",
63    "${appspawn_innerkits_path}/client",
64    "${appspawn_innerkits_path}/include",
65    "${appspawn_innerkits_path}/permission",
66    "${appspawn_path}/modules/module_engine/include",
67    "${appspawn_path}/test/mock",
68    "${appspawn_path}/test/unittest",
69    "${appspawn_path}/util/include",
70  ]
71  sources = [
72    "${appspawn_path}/common/appspawn_server.c",
73    "${appspawn_path}/common/appspawn_trace.cpp",
74    "${appspawn_path}/modules/modulemgr/appspawn_modulemgr.c",
75    "${appspawn_path}/standard/appspawn_appmgr.c",
76    "${appspawn_path}/standard/appspawn_kickdog.c",
77    "${appspawn_path}/standard/appspawn_msgmgr.c",
78    "${appspawn_path}/standard/appspawn_service.c",
79    "${appspawn_path}/standard/nwebspawn_launcher.c",
80    "${appspawn_path}/util/src/appspawn_utils.c",
81  ]
82
83  # client
84  sources += [
85    "${appspawn_innerkits_path}/client/appspawn_client.c",
86    "${appspawn_innerkits_path}/client/appspawn_msg.c",
87    "${appspawn_innerkits_path}/permission/appspawn_mount_permission.c",
88  ]
89
90  # modules sources
91  sources += [
92    "${appspawn_path}/modules/ace_adapter/ace_adapter.cpp",
93    "${appspawn_path}/modules/ace_adapter/command_lexer.cpp",
94    "${appspawn_path}/modules/common/appspawn_adapter.cpp",
95    "${appspawn_path}/modules/common/appspawn_begetctl.c",
96    "${appspawn_path}/modules/common/appspawn_cgroup.c",
97    "${appspawn_path}/modules/common/appspawn_common.c",
98    "${appspawn_path}/modules/common/appspawn_dfx_dump.cpp",
99    "${appspawn_path}/modules/common/appspawn_namespace.c",
100    "${appspawn_path}/modules/common/appspawn_silk.c",
101    "${appspawn_path}/modules/nweb_adapter/nwebspawn_adapter.cpp",
102    "${appspawn_path}/modules/sandbox/appspawn_mount_template.c",
103    "${appspawn_path}/modules/sandbox/appspawn_permission.c",
104    "${appspawn_path}/modules/sandbox/appspawn_sandbox.c",
105    "${appspawn_path}/modules/sandbox/sandbox_cfgvar.c",
106    "${appspawn_path}/modules/sandbox/sandbox_expand.c",
107    "${appspawn_path}/modules/sandbox/sandbox_load.c",
108    "${appspawn_path}/modules/sandbox/sandbox_manager.c",
109  ]
110
111  if (appspawn_use_encaps == true) {
112    sources += [ "${appspawn_path}/modules/common/appspawn_encaps.c" ]
113  }
114
115  # add stub
116  include_dirs += [ "${appspawn_path}/test/mock" ]
117  sources += [
118    "${appspawn_path}/test/mock/app_spawn_stub.cpp",
119    "${appspawn_path}/test/mock/app_system_stub.c",
120  ]
121
122  # add test
123  include_dirs += [ "${appspawn_path}/test/unittest" ]
124  sources += [
125    "${appspawn_path}/test/unittest/app_spawn_standard_test/app_spawn_appmgr_test.cpp",
126    "${appspawn_path}/test/unittest/app_spawn_standard_test/app_spawn_beget_test.cpp",
127    "${appspawn_path}/test/unittest/app_spawn_standard_test/app_spawn_cgroup_test.cpp",
128    "${appspawn_path}/test/unittest/app_spawn_standard_test/app_spawn_child_test.cpp",
129    "${appspawn_path}/test/unittest/app_spawn_standard_test/app_spawn_command_lexer_test.cpp",
130    "${appspawn_path}/test/unittest/app_spawn_standard_test/app_spawn_kickdog_test.cpp",
131    "${appspawn_path}/test/unittest/app_spawn_standard_test/app_spawn_module_interface_test.cpp",
132    "${appspawn_path}/test/unittest/app_spawn_standard_test/app_spawn_sandboxmgr_test.cpp",
133    "${appspawn_path}/test/unittest/app_spawn_standard_test/app_spawn_service_test.cpp",
134    "${appspawn_path}/test/unittest/app_spawn_standard_test/nweb_spawn_service_test.cpp",
135    "${appspawn_path}/test/unittest/app_spawn_test_helper.cpp",
136  ]
137
138  if (defined(appspawn_sandbox_new) && appspawn_sandbox_new) {
139    sources += [ "${appspawn_path}/test/unittest/app_spawn_standard_test/app_spawn_sandbox_new_test.cpp" ]
140    defines += [ "APPSPAWN_SANDBOX_NEW" ]
141  } else {
142    sources += [
143      "${appspawn_path}/modules/sandbox/sandbox_shared_mount.cpp",
144      "${appspawn_path}/modules/sandbox/sandbox_utils.cpp",
145      "${appspawn_path}/test/unittest/app_spawn_standard_test/app_spawn_sandbox_test.cpp",
146    ]
147  }
148
149  configs = [ "${appspawn_path}:appspawn_config" ]
150  external_deps = [
151    "ability_base:want",
152    "ability_runtime:app_manager",
153    "ability_runtime:appkit_native",
154    "ability_runtime:runtime",
155    "access_token:libtokenid_sdk",
156    "access_token:libtokensetproc_shared",
157    "ace_engine:ace_forward_compatibility",
158    "bundle_framework:appexecfwk_base",
159    "bundle_framework:appexecfwk_core",
160    "cJSON:cjson",
161    "c_utils:utils",
162    "config_policy:configpolicy_util",
163    "eventhandler:libeventhandler",
164    "hilog:libhilog",
165    "hitrace:hitrace_meter",
166    "init:libbegetutil",
167    "init:seccomp",
168    "ipc:ipc_core",
169    "napi:ace_napi",
170    "os_account:os_account_innerkits",
171    "resource_management:global_resmgr",
172  ]
173  if (enable_appspawn_dump_catcher) {
174    external_deps += [ "faultloggerd:libdfx_dumpcatcher" ]
175  }
176  if (asan_detector || is_asan) {
177    defines += [ "ASAN_DETECTOR" ]
178    sources += [ "${appspawn_path}/modules/asan/asan_detector.c" ]
179  }
180
181  if (build_selinux) {
182    defines += [ "WITH_SELINUX" ]
183    external_deps += [
184      "selinux:libselinux",
185      "selinux_adapter:libhap_restorecon",
186    ]
187  }
188
189  if (appspawn_report_event) {
190    defines += [ "REPORT_EVENT" ]
191    external_deps += [ "hisysevent:libhisysevent" ]
192    sources += [
193      "${appspawn_path}/modules/sysevent/appspawn_hisysevent.cpp",
194      "${appspawn_path}/modules/sysevent/event_reporter.cpp",
195    ]
196  }
197
198  if (target_cpu == "arm64" || target_cpu == "x86_64" ||
199      target_cpu == "riscv64") {
200    defines += [ "APPSPAWN_64" ]
201  }
202
203  if (dlp_permission_enable) {
204    cflags_cc = [ "-DWITH_DLP" ]
205    external_deps += [ "dlp_permission_service:libdlp_fuse" ]
206  }
207}
208
209ohos_unittest("AppSpawn_coldrun_ut") {
210  module_out_path = "${module_output_path}"
211  deps = []
212  defines = [
213    "APPSPAWN_BASE_DIR=\"/data/appspawn_ut\"",
214    "APPSPAWN_LABEL=\"APPSPAWN_UT\"",
215    "APPSPAWN_TEST",
216    "APPSPAWN_DEBUG",
217    "DEBUG_BEGETCTL_BOOT",
218    "USER_TIMER_TO_CHECK",
219    "OHOS_DEBUG",
220    "GRAPHIC_PERMISSION_CHECK",
221    "capset=CapsetStub",
222    "unshare=UnshareStub",
223    "mount=MountStub",
224    "symlink=SymlinkStub",
225    "chdir=ChdirStub",
226    "chroot=ChrootStub",
227    "syscall=SyscallStub",
228    "umount2=Umount2Stub",
229    "access=AccessStub",
230    "dlopen=DlopenStub",
231    "dlsym=DlsymStub",
232    "dlclose=DlcloseStub",
233    "execv=ExecvStub",
234    "getprocpid=GetprocpidStub",
235    "setgroups=SetgroupsStub",
236    "setresgid=SetresgidStub",
237    "setresuid=SetresuidStub",
238    "setuid=SetuidStub",
239    "setgid=SetgidStub",
240    "execvp=ExecvpStub",
241    "ioctl=IoctlStub",
242    "execve=ExecveStub",
243    "setcon=SetconStub",
244  ]
245
246  include_dirs = [
247    "${appspawn_path}",
248    "${appspawn_path}/common",
249    "${appspawn_path}/standard",
250    "${appspawn_path}/modules/modulemgr",
251    "${appspawn_path}/modules/ace_adapter",
252    "${appspawn_path}/modules/common",
253    "${appspawn_path}/modules/sandbox",
254    "${appspawn_path}/modules/sysevent",
255    "${appspawn_innerkits_path}/client",
256    "${appspawn_innerkits_path}/include",
257    "${appspawn_innerkits_path}/permission",
258    "${appspawn_path}/modules/module_engine/include",
259    "${appspawn_path}/test/mock",
260    "${appspawn_path}/test/unittest",
261    "${appspawn_path}/util/include",
262  ]
263  sources = [
264    "${appspawn_path}/common/appspawn_server.c",
265    "${appspawn_path}/common/appspawn_trace.cpp",
266    "${appspawn_path}/modules/modulemgr/appspawn_modulemgr.c",
267    "${appspawn_path}/standard/appspawn_appmgr.c",
268    "${appspawn_path}/standard/appspawn_kickdog.c",
269    "${appspawn_path}/standard/appspawn_msgmgr.c",
270    "${appspawn_path}/standard/appspawn_service.c",
271    "${appspawn_path}/standard/nwebspawn_launcher.c",
272    "${appspawn_path}/util/src/appspawn_utils.c",
273  ]
274
275  # client
276  sources += [
277    "${appspawn_innerkits_path}/client/appspawn_client.c",
278    "${appspawn_innerkits_path}/client/appspawn_msg.c",
279    "${appspawn_innerkits_path}/permission/appspawn_mount_permission.c",
280  ]
281
282  # modules sources
283  sources += [
284    "${appspawn_path}/modules/ace_adapter/ace_adapter.cpp",
285    "${appspawn_path}/modules/ace_adapter/command_lexer.cpp",
286    "${appspawn_path}/modules/common/appspawn_adapter.cpp",
287    "${appspawn_path}/modules/common/appspawn_begetctl.c",
288    "${appspawn_path}/modules/common/appspawn_cgroup.c",
289    "${appspawn_path}/modules/common/appspawn_common.c",
290    "${appspawn_path}/modules/common/appspawn_dfx_dump.cpp",
291    "${appspawn_path}/modules/common/appspawn_namespace.c",
292    "${appspawn_path}/modules/common/appspawn_silk.c",
293    "${appspawn_path}/modules/nweb_adapter/nwebspawn_adapter.cpp",
294    "${appspawn_path}/modules/sandbox/appspawn_mount_template.c",
295    "${appspawn_path}/modules/sandbox/appspawn_permission.c",
296    "${appspawn_path}/modules/sandbox/appspawn_sandbox.c",
297    "${appspawn_path}/modules/sandbox/sandbox_cfgvar.c",
298    "${appspawn_path}/modules/sandbox/sandbox_expand.c",
299    "${appspawn_path}/modules/sandbox/sandbox_load.c",
300    "${appspawn_path}/modules/sandbox/sandbox_manager.c",
301  ]
302
303  # add stub
304  include_dirs += [ "${appspawn_path}/test/mock" ]
305  sources += [
306    "${appspawn_path}/test/mock/app_spawn_stub.cpp",
307    "${appspawn_path}/test/mock/app_system_stub.c",
308  ]
309
310  # add test
311  include_dirs += [ "${appspawn_path}/test/unittest" ]
312  sources += [
313    "${appspawn_path}/test/unittest/app_spawn_standard_test/app_spawn_cold_run_test.cpp",
314    "${appspawn_path}/test/unittest/app_spawn_test_helper.cpp",
315  ]
316
317  if (defined(appspawn_sandbox_new) && appspawn_sandbox_new) {
318    defines += [ "APPSPAWN_SANDBOX_NEW" ]
319  } else {
320    sources += [
321      "${appspawn_path}/modules/sandbox/sandbox_shared_mount.cpp",
322      "${appspawn_path}/modules/sandbox/sandbox_utils.cpp",
323    ]
324  }
325
326  configs = [ "${appspawn_path}:appspawn_config" ]
327  external_deps = [
328    "ability_base:want",
329    "ability_runtime:app_manager",
330    "ability_runtime:appkit_native",
331    "ability_runtime:runtime",
332    "access_token:libtokenid_sdk",
333    "access_token:libtokensetproc_shared",
334    "ace_engine:ace_forward_compatibility",
335    "bundle_framework:appexecfwk_base",
336    "bundle_framework:appexecfwk_core",
337    "cJSON:cjson",
338    "c_utils:utils",
339    "config_policy:configpolicy_util",
340    "eventhandler:libeventhandler",
341    "hilog:libhilog",
342    "hitrace:hitrace_meter",
343    "init:libbegetutil",
344    "init:seccomp",
345    "ipc:ipc_core",
346    "napi:ace_napi",
347    "os_account:os_account_innerkits",
348    "resource_management:global_resmgr",
349  ]
350  if (enable_appspawn_dump_catcher) {
351    external_deps += [ "faultloggerd:libdfx_dumpcatcher" ]
352  }
353  if (asan_detector || is_asan) {
354    defines += [ "ASAN_DETECTOR" ]
355    sources += [ "${appspawn_path}/modules/asan/asan_detector.c" ]
356  }
357
358  if (build_selinux) {
359    defines += [ "WITH_SELINUX" ]
360    external_deps += [
361      "selinux:libselinux",
362      "selinux_adapter:libhap_restorecon",
363    ]
364  }
365
366  if (appspawn_report_event) {
367    defines += [ "REPORT_EVENT" ]
368    external_deps += [ "hisysevent:libhisysevent" ]
369    sources += [
370      "${appspawn_path}/modules/sysevent/appspawn_hisysevent.cpp",
371      "${appspawn_path}/modules/sysevent/event_reporter.cpp",
372    ]
373  }
374
375  if (target_cpu == "arm64" || target_cpu == "x86_64" ||
376      target_cpu == "riscv64") {
377    defines += [ "APPSPAWN_64" ]
378  }
379
380  if (dlp_permission_enable) {
381    cflags_cc = [ "-DWITH_DLP" ]
382    external_deps += [ "dlp_permission_service:libdlp_fuse" ]
383  }
384}
385
386ohos_unittest("AppSpawn_common_ut") {
387  module_out_path = "${module_output_path}"
388  deps = []
389  defines = [
390    "APPSPAWN_BASE_DIR=\"/data/appspawn_ut\"",
391    "APPSPAWN_LABEL=\"APPSPAWN_UT\"",
392    "APPSPAWN_TEST",
393    "APPSPAWN_DEBUG",
394    "DEBUG_BEGETCTL_BOOT",
395    "USER_TIMER_TO_CHECK",
396    "OHOS_DEBUG",
397    "GRAPHIC_PERMISSION_CHECK",
398    "capset=CapsetStub",
399    "unshare=UnshareStub",
400    "mount=MountStub",
401    "symlink=SymlinkStub",
402    "chdir=ChdirStub",
403    "chroot=ChrootStub",
404    "syscall=SyscallStub",
405    "umount2=Umount2Stub",
406    "access=AccessStub",
407    "dlopen=DlopenStub",
408    "dlsym=DlsymStub",
409    "dlclose=DlcloseStub",
410    "execv=ExecvStub",
411    "getprocpid=GetprocpidStub",
412    "setgroups=SetgroupsStub",
413    "setresgid=SetresgidStub",
414    "setresuid=SetresuidStub",
415    "setuid=SetuidStub",
416    "setgid=SetgidStub",
417    "execvp=ExecvpStub",
418    "ioctl=IoctlStub",
419    "execve=ExecveStub",
420    "setcon=SetconStub",
421  ]
422
423  include_dirs = [
424    "${appspawn_path}",
425    "${appspawn_path}/common",
426    "${appspawn_path}/standard",
427    "${appspawn_path}/modules/modulemgr",
428    "${appspawn_path}/modules/ace_adapter",
429    "${appspawn_path}/modules/common",
430    "${appspawn_path}/modules/sandbox",
431    "${appspawn_path}/modules/sysevent",
432    "${appspawn_innerkits_path}/client",
433    "${appspawn_innerkits_path}/include",
434    "${appspawn_innerkits_path}/permission",
435    "${appspawn_path}/modules/module_engine/include",
436    "${appspawn_path}/test/mock",
437    "${appspawn_path}/test/unittest",
438    "${appspawn_path}/util/include",
439  ]
440  sources = [
441    "${appspawn_path}/common/appspawn_server.c",
442    "${appspawn_path}/common/appspawn_trace.cpp",
443    "${appspawn_path}/modules/modulemgr/appspawn_modulemgr.c",
444    "${appspawn_path}/standard/appspawn_appmgr.c",
445    "${appspawn_path}/standard/appspawn_kickdog.c",
446    "${appspawn_path}/standard/appspawn_msgmgr.c",
447    "${appspawn_path}/standard/appspawn_service.c",
448    "${appspawn_path}/standard/nwebspawn_launcher.c",
449    "${appspawn_path}/util/src/appspawn_utils.c",
450  ]
451
452  # client
453  sources += [
454    "${appspawn_innerkits_path}/client/appspawn_client.c",
455    "${appspawn_innerkits_path}/client/appspawn_msg.c",
456    "${appspawn_innerkits_path}/permission/appspawn_mount_permission.c",
457  ]
458
459  # modules sources
460  sources += [
461    "${appspawn_path}/modules/ace_adapter/ace_adapter.cpp",
462    "${appspawn_path}/modules/ace_adapter/command_lexer.cpp",
463    "${appspawn_path}/modules/common/appspawn_adapter.cpp",
464    "${appspawn_path}/modules/common/appspawn_begetctl.c",
465    "${appspawn_path}/modules/common/appspawn_cgroup.c",
466    "${appspawn_path}/modules/common/appspawn_common.c",
467    "${appspawn_path}/modules/common/appspawn_dfx_dump.cpp",
468    "${appspawn_path}/modules/common/appspawn_namespace.c",
469    "${appspawn_path}/modules/common/appspawn_silk.c",
470    "${appspawn_path}/modules/nweb_adapter/nwebspawn_adapter.cpp",
471    "${appspawn_path}/modules/sandbox/appspawn_mount_template.c",
472    "${appspawn_path}/modules/sandbox/appspawn_permission.c",
473    "${appspawn_path}/modules/sandbox/appspawn_sandbox.c",
474    "${appspawn_path}/modules/sandbox/sandbox_cfgvar.c",
475    "${appspawn_path}/modules/sandbox/sandbox_expand.c",
476    "${appspawn_path}/modules/sandbox/sandbox_load.c",
477    "${appspawn_path}/modules/sandbox/sandbox_manager.c",
478  ]
479
480  # add stub
481  include_dirs += [ "${appspawn_path}/test/mock" ]
482  sources += [
483    "${appspawn_path}/test/mock/app_spawn_stub.cpp",
484    "${appspawn_path}/test/mock/app_system_stub.c",
485  ]
486
487  # add test
488  include_dirs += [ "${appspawn_path}/test/unittest" ]
489  sources += [
490    "${appspawn_path}/test/unittest/app_spawn_standard_test/app_spawn_common_test.cpp",
491    "${appspawn_path}/test/unittest/app_spawn_test_helper.cpp",
492  ]
493
494  if (defined(appspawn_sandbox_new) && appspawn_sandbox_new) {
495    defines += [ "APPSPAWN_SANDBOX_NEW" ]
496  } else {
497    sources += [
498      "${appspawn_path}/modules/sandbox/sandbox_shared_mount.cpp",
499      "${appspawn_path}/modules/sandbox/sandbox_utils.cpp",
500    ]
501  }
502
503  configs = [ "${appspawn_path}:appspawn_config" ]
504  external_deps = [
505    "ability_base:want",
506    "ability_runtime:app_manager",
507    "ability_runtime:appkit_native",
508    "ability_runtime:runtime",
509    "access_token:libtokenid_sdk",
510    "access_token:libtokensetproc_shared",
511    "ace_engine:ace_forward_compatibility",
512    "bundle_framework:appexecfwk_base",
513    "bundle_framework:appexecfwk_core",
514    "cJSON:cjson",
515    "c_utils:utils",
516    "config_policy:configpolicy_util",
517    "eventhandler:libeventhandler",
518    "hilog:libhilog",
519    "hitrace:hitrace_meter",
520    "init:libbegetutil",
521    "init:seccomp",
522    "ipc:ipc_core",
523    "napi:ace_napi",
524    "os_account:os_account_innerkits",
525    "resource_management:global_resmgr",
526  ]
527  if (enable_appspawn_dump_catcher) {
528    external_deps += [ "faultloggerd:libdfx_dumpcatcher" ]
529  }
530  if (asan_detector || is_asan) {
531    defines += [ "ASAN_DETECTOR" ]
532    sources += [ "${appspawn_path}/modules/asan/asan_detector.c" ]
533  }
534
535  if (build_selinux) {
536    defines += [ "WITH_SELINUX" ]
537    external_deps += [
538      "selinux:libselinux",
539      "selinux_adapter:libhap_restorecon",
540    ]
541  }
542
543  if (appspawn_report_event) {
544    defines += [ "REPORT_EVENT" ]
545    external_deps += [ "hisysevent:libhisysevent" ]
546    sources += [
547      "${appspawn_path}/modules/sysevent/appspawn_hisysevent.cpp",
548      "${appspawn_path}/modules/sysevent/event_reporter.cpp",
549      "${appspawn_path}/modules/sysevent/hisysevent_adapter.cpp",
550    ]
551  }
552
553  if (target_cpu == "arm64" || target_cpu == "x86_64" ||
554      target_cpu == "riscv64") {
555    defines += [ "APPSPAWN_64" ]
556  }
557
558  if (dlp_permission_enable) {
559    cflags_cc = [ "-DWITH_DLP" ]
560    external_deps += [ "dlp_permission_service:libdlp_fuse" ]
561  }
562}
563