1# Copyright (c) 2021 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("//developtools/profiler/build/config.gni") 16import("../copts/configure_copts.gni") 17 18config("cflags_config") { 19 cflags = [ 20 "-Wall", 21 "-Wextra", 22 "-Weverything", 23 "-Wno-c++98-compat-pedantic", 24 "-Wno-conversion", 25 "-Wno-covered-switch-default", 26 "-Wno-deprecated", 27 "-Wno-disabled-macro-expansion", 28 "-Wno-double-promotion", 29 "-Wno-comma", 30 "-Wno-extra-semi", 31 "-Wno-extra-semi-stmt", 32 "-Wno-packed", 33 "-Wno-padded", 34 "-Wno-sign-compare", 35 "-Wno-float-conversion", 36 "-Wno-float-equal", 37 "-Wno-format-nonliteral", 38 "-Wno-gcc-compat", 39 "-Wno-global-constructors", 40 "-Wno-exit-time-destructors", 41 "-Wno-non-modular-include-in-module", 42 "-Wno-old-style-cast", 43 "-Wno-range-loop-analysis", 44 "-Wno-reserved-id-macro", 45 "-Wno-shorten-64-to-32", 46 "-Wno-switch-enum", 47 "-Wno-thread-safety-negative", 48 "-Wno-unknown-warning-option", 49 "-Wno-unreachable-code", 50 "-Wno-unused-macros", 51 "-Wno-weak-vtables", 52 "-Wno-zero-as-null-pointer-constant", 53 "-Wbitfield-enum-conversion", 54 "-Wbool-conversion", 55 "-Wconstant-conversion", 56 "-Wenum-conversion", 57 "-Wint-conversion", 58 "-Wliteral-conversion", 59 "-Wnon-literal-null-conversion", 60 "-Wnull-conversion", 61 "-Wobjc-literal-conversion", 62 "-Wno-sign-conversion", 63 "-Wstring-conversion", 64 "-DNOMINMAX", 65 ] 66 67 # Adapating DEBUG version, FIX ME 68 # https://gitee.com/openharmony/build/pulls/1206/files 69 defines = [ "NDEBUG" ] 70} 71 72ohos_shared_library("absl_strings") { 73 sources = [ 74 "ascii.cc", 75 "charconv.cc", 76 "escaping.cc", 77 "internal/charconv_bigint.cc", 78 "internal/charconv_bigint.h", 79 "internal/charconv_parse.cc", 80 "internal/charconv_parse.h", 81 "internal/memutil.cc", 82 "internal/memutil.h", 83 "internal/stl_type_traits.h", 84 "internal/str_join_internal.h", 85 "internal/str_split_internal.h", 86 "match.cc", 87 "numbers.cc", 88 "str_cat.cc", 89 "str_replace.cc", 90 "str_split.cc", 91 "string_view.cc", 92 "substitute.cc", 93 ] 94 95 include_dirs = [ "${ABSEIL_DIR}/" ] 96 97 configs = [ ":cflags_config" ] 98 99 public_deps = [ 100 ":absl_strings_internal", 101 "${ABSEIL_DIR}/absl/base:absl_raw_logging_internal", 102 ] 103 install_enable = true 104 subsystem_name = "${OHOS_PROFILER_SUBSYS_NAME}" 105 part_name = "${OHOS_PROFILER_PART_NAME}" 106} 107 108ohos_shared_library("absl_strings_internal") { 109 sources = [ 110 "internal/escaping.cc", 111 "internal/ostringstream.cc", 112 "internal/utf8.cc", 113 ] 114 include_dirs = [ "${ABSEIL_DIR}/" ] 115 116 configs = [ ":cflags_config" ] 117 118 deps = [ "${ABSEIL_DIR}/absl/base:absl_raw_logging_internal" ] 119 install_enable = true 120 subsystem_name = "${OHOS_PROFILER_SUBSYS_NAME}" 121 part_name = "${OHOS_PROFILER_PART_NAME}" 122} 123 124ohos_shared_library("absl_cord") { 125 sources = [ "cord.cc" ] 126 include_dirs = [ "${ABSEIL_DIR}/" ] 127 128 configs = [ ":cflags_config" ] 129 130 deps = [ 131 ":absl_strings", 132 "${ABSEIL_DIR}/absl/base:absl_raw_logging_internal", 133 ] 134 install_enable = true 135 subsystem_name = "${OHOS_PROFILER_SUBSYS_NAME}" 136 part_name = "${OHOS_PROFILER_PART_NAME}" 137} 138 139ohos_shared_library("absl_str_format_internal") { 140 sources = [ 141 "internal/str_format/arg.cc", 142 "internal/str_format/bind.cc", 143 "internal/str_format/extension.cc", 144 "internal/str_format/float_conversion.cc", 145 "internal/str_format/output.cc", 146 "internal/str_format/parser.cc", 147 ] 148 include_dirs = [ "${ABSEIL_DIR}/" ] 149 150 configs = [ ":cflags_config" ] 151 152 deps = [ 153 ":absl_strings", 154 "${ABSEIL_DIR}/absl/numeric:absl_int128", 155 ] 156 install_enable = true 157 subsystem_name = "${OHOS_PROFILER_SUBSYS_NAME}" 158 part_name = "${OHOS_PROFILER_PART_NAME}" 159} 160