13c3173acSopenharmony_ci# Copyright (c) 2022 Huawei Device Co., Ltd.
23c3173acSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
33c3173acSopenharmony_ci# you may not use this file except in compliance with the License.
43c3173acSopenharmony_ci# You may obtain a copy of the License at
53c3173acSopenharmony_ci#
63c3173acSopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
73c3173acSopenharmony_ci#
83c3173acSopenharmony_ci# Unless required by applicable law or agreed to in writing, software
93c3173acSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
103c3173acSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
113c3173acSopenharmony_ci# See the License for the specific language governing permissions and
123c3173acSopenharmony_ci# limitations under the License.
133c3173acSopenharmony_ci
143c3173acSopenharmony_ciimport("//build/ohos.gni")
153c3173acSopenharmony_ciimport("//build/test.gni")
163c3173acSopenharmony_ci
173c3173acSopenharmony_ciconfig("client_private_config") {
183c3173acSopenharmony_ci  cflags_cc = [ "-fexceptions" ]
193c3173acSopenharmony_ci  include_dirs = [
203c3173acSopenharmony_ci    "../../include",
213c3173acSopenharmony_ci    "../../services/include",
223c3173acSopenharmony_ci  ]
233c3173acSopenharmony_ci}
243c3173acSopenharmony_ci
253c3173acSopenharmony_ciconfig("client_public_config") {
263c3173acSopenharmony_ci  visibility = [ ":*" ]
273c3173acSopenharmony_ci  cflags = [ "-fstack-protector-strong" ]
283c3173acSopenharmony_ci  include_dirs = [
293c3173acSopenharmony_ci    "include",
303c3173acSopenharmony_ci    "../../interfaces/inner_api/",
313c3173acSopenharmony_ci  ]
323c3173acSopenharmony_ci}
333c3173acSopenharmony_ci
343c3173acSopenharmony_ciohos_shared_library("concurrent_task_client") {
353c3173acSopenharmony_ci  branch_protector_ret = "pac_ret"
363c3173acSopenharmony_ci  configs = [ ":client_private_config" ]
373c3173acSopenharmony_ci
383c3173acSopenharmony_ci  public_configs = [ ":client_public_config" ]
393c3173acSopenharmony_ci
403c3173acSopenharmony_ci  cflags_cc = [
413c3173acSopenharmony_ci    "-fomit-frame-pointer",
423c3173acSopenharmony_ci    "-fdata-sections",
433c3173acSopenharmony_ci    "-ffunction-sections",
443c3173acSopenharmony_ci    "-fno-unroll-loops",
453c3173acSopenharmony_ci    "-fno-exceptions",
463c3173acSopenharmony_ci    "-fno-unwind-tables",
473c3173acSopenharmony_ci    "-fno-asynchronous-unwind-tables",
483c3173acSopenharmony_ci    "-g0",
493c3173acSopenharmony_ci    "-Os",
503c3173acSopenharmony_ci  ]
513c3173acSopenharmony_ci
523c3173acSopenharmony_ci  ldflags = [ "-Wl,--exclude-libs=ALL" ]
533c3173acSopenharmony_ci  sources = [
543c3173acSopenharmony_ci    "src/concurrent_task_client.cpp",
553c3173acSopenharmony_ci    "src/concurrent_task_service_proxy.cpp",
563c3173acSopenharmony_ci  ]
573c3173acSopenharmony_ci
583c3173acSopenharmony_ci  public_external_deps = [ "jsoncpp:jsoncpp" ]
593c3173acSopenharmony_ci
603c3173acSopenharmony_ci  external_deps = [
613c3173acSopenharmony_ci    "c_utils:utils",
623c3173acSopenharmony_ci    "hilog:libhilog",
633c3173acSopenharmony_ci    "ipc:ipc_single",
643c3173acSopenharmony_ci    "samgr:samgr_proxy",
653c3173acSopenharmony_ci  ]
663c3173acSopenharmony_ci
673c3173acSopenharmony_ci  subsystem_name = "resourceschedule"
683c3173acSopenharmony_ci  part_name = "qos_manager"
693c3173acSopenharmony_ci}
70