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("//build/ohos.gni") 15import("//build/test.gni") 16import("../../ressched/ressched.gni") 17import("../ressched_executor.gni") 18 19config("service_public_config") { 20 include_dirs = [ 21 "${ressched_common}/include", 22 "${resschedexe_common}/include", 23 "${resschedexe_plugins}/pluginbase/include", 24 "${resschedexe_plugins}/resschedfwk/include", 25 "resschedexemgr/include", 26 ] 27} 28 29config("service_private_config") { 30 include_dirs = [ "resschedexeservice/include" ] 31} 32 33ohos_shared_library("resschedexesvc") { 34 configs = [ ":service_private_config" ] 35 36 public_configs = [ ":service_public_config" ] 37 38 defines = [] 39 40 include_dirs = [] 41 42 sources = [ 43 "${resschedexe_plugins}/resschedfwk/src/config_reader.cpp", 44 "${resschedexe_plugins}/resschedfwk/src/plugin_mgr.cpp", 45 "${resschedexe_plugins}/resschedfwk/src/plugin_switch.cpp", 46 "resschedexemgr/src/res_sched_exe_mgr.cpp", 47 "resschedexeservice/src/res_sched_exe_service.cpp", 48 ] 49 50 deps = [ 51 "${resourcescheduleservice_path}/ressched/plugins/cgroup_sched_plugin/framework/process_group:libprocess_group", 52 "${ressched_common}:ressched_common_utils", 53 "${resschedexe_interfaces}/innerkits/ressched_executor_client:res_sched_exe_service_stub", 54 "${resschedexe_interfaces}/innerkits/ressched_executor_client:resschedexe_client", 55 ] 56 57 external_deps = [ 58 "access_token:libaccesstoken_sdk", 59 "access_token:libtokenid_sdk", 60 "config_policy:configpolicy_util", 61 "ffrt:libffrt", 62 "hilog:libhilog", 63 "hisysevent:libhisysevent", 64 "hisysevent:libhisyseventmanager", 65 "hitrace:hitrace_meter", 66 "init:libbegetutil", 67 "ipc:ipc_single", 68 "libxml2:libxml2", 69 "safwk:system_ability_fwk", 70 "samgr:samgr_proxy", 71 ] 72 73 public_external_deps = [ 74 "c_utils:utils", 75 "eventhandler:libeventhandler", 76 ] 77 78 if (resource_schedule_service_with_ffrt_enable) { 79 defines += [ "RESOURCE_SCHEDULE_SERVICE_WITH_FFRT_ENABLE" ] 80 } 81 82 version_script = "libresschedexeservice.versionscript" 83 shlib_type = "sa" 84 subsystem_name = "resourceschedule" 85 part_name = "resource_schedule_service" 86 87 branch_protector_ret = "pac_ret" 88 89 sanitize = { 90 cfi = true 91 cfi_cross_dso = true 92 debug = false 93 } 94} 95 96# for unittest 97ohos_static_library("resschedexesvc_static") { 98 configs = [] 99 100 public_configs = [ 101 ":service_private_config", 102 ":service_public_config", 103 ] 104 105 defines = [] 106 107 include_dirs = [] 108 109 sources = [ 110 "${resschedexe_plugins}/resschedfwk/src/config_reader.cpp", 111 "${resschedexe_plugins}/resschedfwk/src/plugin_mgr.cpp", 112 "${resschedexe_plugins}/resschedfwk/src/plugin_switch.cpp", 113 "resschedexemgr/src/res_sched_exe_mgr.cpp", 114 "resschedexeservice/src/res_sched_exe_service.cpp", 115 ] 116 117 deps = [ 118 "${resourcescheduleservice_path}/ressched/plugins/cgroup_sched_plugin/framework/process_group:libprocess_group", 119 "${resschedexe_interfaces}/innerkits/ressched_executor_client:res_sched_exe_service_stub", 120 "${resschedexe_interfaces}/innerkits/ressched_executor_client:resschedexe_client", 121 ] 122 123 external_deps = [ 124 "access_token:libaccesstoken_sdk", 125 "access_token:libtokenid_sdk", 126 "config_policy:configpolicy_util", 127 "ffrt:libffrt", 128 "hilog:libhilog", 129 "hisysevent:libhisysevent", 130 "hisysevent:libhisyseventmanager", 131 "hitrace:hitrace_meter", 132 "init:libbegetutil", 133 "ipc:ipc_single", 134 "samgr:samgr_proxy", 135 ] 136 137 public_external_deps = [ 138 "c_utils:utils", 139 "eventhandler:libeventhandler", 140 "libxml2:libxml2", 141 "safwk:system_ability_fwk", 142 ] 143 144 if (resource_schedule_service_with_ffrt_enable) { 145 defines += [ "RESOURCE_SCHEDULE_SERVICE_WITH_FFRT_ENABLE" ] 146 } 147 148 subsystem_name = "resourceschedule" 149 part_name = "resource_schedule_service" 150 151 branch_protector_ret = "pac_ret" 152 153 sanitize = { 154 cfi = true 155 cfi_cross_dso = true 156 debug = false 157 } 158} 159