1# Copyright (c) 2022-2023 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("../../ressched.gni") 16 17config("frame_aware_plugin_config") { 18 include_dirs = [ 19 "include", 20 "../../../cgroup_sched/framework/process_group/include/", 21 "${ressched_common}/include", 22 "${ressched_interfaces}/innerkits/ressched_client/include", 23 ] 24} 25 26ohos_shared_library("frame_aware_plugin") { 27 branch_protector_ret = "pac_ret" 28 29 configs = [ ":frame_aware_plugin_config" ] 30 31 cflags_cc = [ 32 "-fomit-frame-pointer", 33 "-fdata-sections", 34 "-ffunction-sections", 35 "-fno-unroll-loops", 36 "-fno-exceptions", 37 "-fno-unwind-tables", 38 "-fno-asynchronous-unwind-tables", 39 "-g0", 40 "-Os", 41 ] 42 43 ldflags = [ "-Wl,--exclude-libs=ALL" ] 44 sources = [ 45 "src/frame_aware_plugin.cpp", 46 "src/network_latency_controller.cpp", 47 ] 48 49 deps = [ "${ressched_services}:resschedsvc" ] 50 51 external_deps = [ 52 "c_utils:utils", 53 "ffrt:libffrt", 54 "frame_aware_sched:frame_msg_intf", 55 "frame_aware_sched:rtg_interface", 56 "hilog:libhilog", 57 "init:libbegetutil", 58 ] 59 60 subsystem_name = "resourceschedule" 61 part_name = "resource_schedule_service" 62} 63