• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (C) 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("//foundation/multimedia/av_codec/config.gni")
16
17ohos_static_library("av_codec_codec_base") {
18  cflags = [
19    "-std=c++17",
20    "-fno-rtti",
21    "-fno-exceptions",
22    "-Wall",
23    "-fno-common",
24    "-fstack-protector-strong",
25    "-Wshadow",
26    "-FPIC",
27    "-FS",
28    "-O2",
29    "-D_FORTIFY_SOURCE=2",
30    "-fvisibility=hidden",
31    "-Wformat=2",
32    "-Wfloat-equal",
33    "-Wdate-time",
34    "-Werror",
35    "-Wno-deprecated-declarations",
36    "-Wextra",
37    "-Wimplicit-fallthrough",
38    "-Wsign-compare",
39    "-Wunused-parameter",
40  ]
41  sanitize = {
42    cfi = true
43    cfi_cross_dso = true
44    debug = false
45  }
46
47  include_dirs = [
48    "$av_codec_root_dir/interfaces/inner_api/native",
49    "$av_codec_root_dir/interfaces/kits/c",
50    "$av_codec_root_dir/services/dfx/include",
51    "$av_codec_root_dir/services/engine/base/include",
52    "$av_codec_root_dir/services/utils/include",
53    "//base/hiviewdfx/hisysevent/interfaces/native/innerkits/hisysevent/include",
54    "//third_party/ffmpeg",
55  ]
56
57  sources = [ "$av_codec_root_dir/services/engine/base/codecbase.cpp" ]
58
59  deps = [
60    "$av_codec_root_dir/services/engine/common:av_codec_engine_common",
61    "//third_party/ffmpeg:libohosffmpeg",
62  ]
63
64  public_deps = [
65    "$av_codec_root_dir/services/dfx:av_codec_service_dfx",
66    "$av_codec_root_dir/services/utils:av_codec_format",
67  ]
68
69  external_deps = [
70    "graphic_2d:surface",
71    "hilog:libhilog",
72    "hisysevent:libhisysevent",
73    "hitrace:hitrace_meter",
74  ]
75
76  subsystem_name = "multimedia"
77  part_name = "av_codec"
78}
79