加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
BUILD.gn 3.85 KB
一键复制 编辑 原始数据 按行查看 历史
kangchongtao 提交于 2024-06-08 03:12 . 部件独立编译整改
# Copyright (c) 2021-2024 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("//foundation/arkui/ace_engine/ace_config.gni")
# Common config for Ability Cross-platform Environment(ACE) source
config("ace_config") {
include_dirs = [
"$ace_root",
"$ace_root/frameworks",
"$root_out_dir/arkui/framework",
]
if (use_hilog) {
include_dirs += [ "$hilog_root/interfaces/native/innerkits/include" ]
}
if (is_ohos_standard_system && !use_mingw_win && !use_mac && !use_linux) {
include_dirs += [ "$ace_root/adapter/ohos/services/uiservice/include" ]
}
defines = ace_common_defines
if (is_wearable_product) {
defines += ace_wearable_defines
}
if (is_ivi_product) {
defines += ace_ivi_defines
}
cflags = [
"-fvisibility=hidden",
"-fdata-sections",
"-ffunction-sections",
"-Wno-non-c-typedef-for-linkage",
"-Os",
"-Werror=return-stack-address",
]
if (is_ohos && is_clang && (target_cpu == "arm" || target_cpu == "arm64") &&
enhanced_opt) {
if (ace_engine_feature_enable_pgo) {
cflags += [
"-fprofile-use=" + rebase_path(
"${ace_engine_feature_pgo_path}/libace_compatible.profdata",
root_build_dir),
"-Wno-error=backend-plugin",
"-Wno-profile-instr-out-of-date",
"-Wno-profile-instr-unprofiled",
]
}
if (ace_engine_feature_enable_atomic) {
cflags += [ "-moutline-atomics" ]
}
}
cflags_cc = [
"-fvisibility-inlines-hidden",
"-Wno-non-c-typedef-for-linkage",
"-Os",
]
if (use_mingw_win) {
cflags_cc += [ "-std=c++17" ]
defines += [ "_USE_MATH_DEFINES" ]
}
if (use_linux) {
cflags_cc += [ "-std=c++17" ]
defines += [ "_USE_MATH_DEFINES" ]
}
ldflags = []
if (ace_engine_feature_enable_coverage) {
cflags += [ "--coverage" ]
ldflags += [ "--coverage" ]
}
}
config("ace_test_config") {
visibility = [ ":*" ]
visibility += [
"//foundation/arkui/ace_engine/build/*",
"//foundation/arkui/ace_engine/frameworks/bridge/test/unittest/*",
"//foundation/arkui/ace_engine/frameworks/core/*",
"//foundation/arkui/ace_engine/test/fuzztest/*",
"//foundation/arkui/ace_engine/test/unittest/*",
]
include_dirs = [
"$ace_root",
"$ace_root/frameworks",
"$root_out_dir/arkui/framework",
]
cflags_cc = []
defines = ace_common_defines
if (is_ohos_standard_system && !use_mingw_win && !use_mac && !use_linux) {
include_dirs += [ "$ace_root/adapter/ohos/services/uiservice/include" ]
cflags_cc += [
"-Wno-thread-safety-attributes",
"-Wno-thread-safety-analysis",
"-Wno-non-c-typedef-for-linkage",
]
defines += [ "OHOS_STANDARD_SYSTEM" ]
}
if (!is_ohos_standard_system) {
defines += [ "ENABLE_NATIVE_VIEW" ]
}
defines += [ "OHOS_PLATFORM" ]
if (is_wearable_product) {
defines += ace_wearable_defines
}
cflags = [
"-fvisibility=hidden",
"-fdata-sections",
"-ffunction-sections",
]
cflags_cc += [ "-fvisibility-inlines-hidden" ]
ldflags = [ "-Wl,-gc-sections" ]
if (ace_engine_feature_enable_coverage) {
cflags += [ "--coverage" ]
ldflags += [ "--coverage" ]
}
}
config("ace_coverage_config") {
cflags = []
ldflags = []
if (ace_engine_feature_enable_coverage) {
cflags += [ "--coverage" ]
ldflags += [ "--coverage" ]
}
}
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化