14f7ff21fSopenharmony_ci# Copyright (c) 2022-2023 Huawei Device Co., Ltd.
24f7ff21fSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
34f7ff21fSopenharmony_ci# you may not use this file except in compliance with the License.
44f7ff21fSopenharmony_ci# You may obtain a copy of the License at
54f7ff21fSopenharmony_ci#
64f7ff21fSopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
74f7ff21fSopenharmony_ci#
84f7ff21fSopenharmony_ci# Unless required by applicable law or agreed to in writing, software
94f7ff21fSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
104f7ff21fSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
114f7ff21fSopenharmony_ci# See the License for the specific language governing permissions and
124f7ff21fSopenharmony_ci# limitations under the License.
134f7ff21fSopenharmony_ci
144f7ff21fSopenharmony_ciimport("//base/useriam/fingerprint_auth/fingerprint_auth.gni")
154f7ff21fSopenharmony_ciimport("//build/ohos.gni")
164f7ff21fSopenharmony_ci
174f7ff21fSopenharmony_ciconfig("fingerprintauthservice_ex_config") {
184f7ff21fSopenharmony_ci  include_dirs = [ "inc" ]
194f7ff21fSopenharmony_ci}
204f7ff21fSopenharmony_ci
214f7ff21fSopenharmony_ciohos_source_set("fingerprintauthservice_ex_source_set") {
224f7ff21fSopenharmony_ci  sanitize = {
234f7ff21fSopenharmony_ci    integer_overflow = true
244f7ff21fSopenharmony_ci    ubsan = true
254f7ff21fSopenharmony_ci    boundary_sanitize = true
264f7ff21fSopenharmony_ci    cfi = true
274f7ff21fSopenharmony_ci    cfi_cross_dso = true
284f7ff21fSopenharmony_ci    debug = false
294f7ff21fSopenharmony_ci  }
304f7ff21fSopenharmony_ci  branch_protector_ret = "pac_ret"
314f7ff21fSopenharmony_ci  sources = [
324f7ff21fSopenharmony_ci    "src/screen_state_monitor.cpp",
334f7ff21fSopenharmony_ci    "src/sensor_illumination_task.cpp",
344f7ff21fSopenharmony_ci  ]
354f7ff21fSopenharmony_ci
364f7ff21fSopenharmony_ci  include_dirs = [
374f7ff21fSopenharmony_ci    "inc",
384f7ff21fSopenharmony_ci    "../services/inc",
394f7ff21fSopenharmony_ci    "../common/inc",
404f7ff21fSopenharmony_ci    "../common/logs",
414f7ff21fSopenharmony_ci    "../common/utils",
424f7ff21fSopenharmony_ci  ]
434f7ff21fSopenharmony_ci
444f7ff21fSopenharmony_ci  public_configs = [ ":fingerprintauthservice_ex_config" ]
454f7ff21fSopenharmony_ci
464f7ff21fSopenharmony_ci  deps = [ "../services:fingerprintauthservice" ]
474f7ff21fSopenharmony_ci
484f7ff21fSopenharmony_ci  external_deps = [
494f7ff21fSopenharmony_ci    "ability_base:want",
504f7ff21fSopenharmony_ci    "c_utils:utils",
514f7ff21fSopenharmony_ci    "common_event_service:cesfwk_innerkits",
524f7ff21fSopenharmony_ci    "drivers_interface_fingerprint_auth:libfingerprint_auth_proxy_2.0",
534f7ff21fSopenharmony_ci    "egl:libEGL",
544f7ff21fSopenharmony_ci    "graphic_2d:libcomposer",
554f7ff21fSopenharmony_ci    "graphic_2d:librender_service_base",
564f7ff21fSopenharmony_ci    "graphic_2d:librender_service_client",
574f7ff21fSopenharmony_ci    "graphic_surface:buffer_handle",
584f7ff21fSopenharmony_ci    "graphic_surface:surface_headers",
594f7ff21fSopenharmony_ci    "hdf_core:libhdf_utils",
604f7ff21fSopenharmony_ci    "hilog:libhilog",
614f7ff21fSopenharmony_ci    "ipc:ipc_single",
624f7ff21fSopenharmony_ci    "opengles:libGLES",
634f7ff21fSopenharmony_ci    "samgr:samgr_proxy",
644f7ff21fSopenharmony_ci    "skia:skia_canvaskit",
654f7ff21fSopenharmony_ci    "user_auth_framework:userauth_executors",
664f7ff21fSopenharmony_ci    "window_manager:libdm",
674f7ff21fSopenharmony_ci  ]
684f7ff21fSopenharmony_ci
694f7ff21fSopenharmony_ci  defines = []
704f7ff21fSopenharmony_ci
714f7ff21fSopenharmony_ci  if (use_display_manager_component) {
724f7ff21fSopenharmony_ci    external_deps += [ "display_manager:displaymgr" ]
734f7ff21fSopenharmony_ci    defines += [ "CONFIG_USE_DISPLAY_MANAGER_COMPONENT" ]
744f7ff21fSopenharmony_ci  }
754f7ff21fSopenharmony_ci
764f7ff21fSopenharmony_ci  if (use_power_manager_component) {
774f7ff21fSopenharmony_ci    external_deps += [ "power_manager:powermgr_client" ]
784f7ff21fSopenharmony_ci    defines += [ "CONFIG_USE_POWER_MANAGER_COMPONENT" ]
794f7ff21fSopenharmony_ci  }
804f7ff21fSopenharmony_ci
814f7ff21fSopenharmony_ci  if (defined(use_rosen_drawing) && use_rosen_drawing) {
824f7ff21fSopenharmony_ci    external_deps += [ "graphic_2d:2d_graphics" ]
834f7ff21fSopenharmony_ci    defines += [ "USE_ROSEN_DRAWING" ]
844f7ff21fSopenharmony_ci  }
854f7ff21fSopenharmony_ci
864f7ff21fSopenharmony_ci  remove_configs = [ "//build/config/compiler:no_exceptions" ]
874f7ff21fSopenharmony_ci
884f7ff21fSopenharmony_ci  subsystem_name = "useriam"
894f7ff21fSopenharmony_ci  part_name = "fingerprint_auth"
904f7ff21fSopenharmony_ci}
914f7ff21fSopenharmony_ci
924f7ff21fSopenharmony_ciohos_shared_library("fingerprintauthservice_ex") {
934f7ff21fSopenharmony_ci  sanitize = {
944f7ff21fSopenharmony_ci    integer_overflow = true
954f7ff21fSopenharmony_ci    ubsan = true
964f7ff21fSopenharmony_ci    boundary_sanitize = true
974f7ff21fSopenharmony_ci    cfi = true
984f7ff21fSopenharmony_ci    cfi_cross_dso = true
994f7ff21fSopenharmony_ci    debug = false
1004f7ff21fSopenharmony_ci  }
1014f7ff21fSopenharmony_ci  branch_protector_ret = "pac_ret"
1024f7ff21fSopenharmony_ci  deps = [ ":fingerprintauthservice_ex_source_set" ]
1034f7ff21fSopenharmony_ci
1044f7ff21fSopenharmony_ci  external_deps = [ "hilog:libhilog" ]
1054f7ff21fSopenharmony_ci
1064f7ff21fSopenharmony_ci  if (use_musl) {
1074f7ff21fSopenharmony_ci    version_script = "fingerprint_auth_service_ex_map"
1084f7ff21fSopenharmony_ci  }
1094f7ff21fSopenharmony_ci
1104f7ff21fSopenharmony_ci  subsystem_name = "useriam"
1114f7ff21fSopenharmony_ci  part_name = "fingerprint_auth"
1124f7ff21fSopenharmony_ci}
113