# Copyright (c) 2021 Huawei Device Co., Ltd. # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. import("//build/ohos.gni") import("../render_service_base/config.gni") ## Build libframe_analyzer.so {{{ config("libframe_analyzer_config") { visibility = [ ":*" ] cflags = [ "-Wall", "-Werror", "-g3", ] if (current_os != "ohos") { cflags += [ "-Wno-c++17-extensions", "-Wno-unused-private-field", ] } } config("libframe_analyzer_public_config") { include_dirs = [ "export" ] } ohos_shared_library("libframe_analyzer") { if (current_os == "ohos") { sources = [ "src/frame_collector.cpp", "src/frame_painter.cpp", "src/frame_saver.cpp", ] include_dirs = [ "//foundation/graphic/graphic_2d/utils/sandbox" ] deps = [ "../../../utils/sandbox:sandbox_utils" ] if (defined(use_new_skia) && use_new_skia) { deps += [ "//third_party/skia:skia_ohos" ] } else { deps += [ "//third_party/flutter/build/skia:ace_skia_ohos" ] } external_deps = [ "c_utils:utils", "hilog:libhilog", "hitrace:hitrace_meter", "init:libbeget_proxy", "init:libbegetutil", ] } else { sources = [ "src/mingw/frame_collector.cpp", "src/mingw/frame_painter.cpp", ] } if (defined(use_rosen_drawing) && use_rosen_drawing) { defines = [ "USE_ROSEN_DRAWING" ] deps += [ "$rosen_root/modules/2d_graphics:2d_graphics" ] } configs = [ ":libframe_analyzer_config" ] public_configs = [ ":libframe_analyzer_public_config" ] subsystem_name = "graphic" innerapi_tags = [ "platformsdk_indirect" ] part_name = "graphic_2d" } ## Build libframe_analyzer.so }}}