1d6aed566Sopenharmony_ci# Copyright (c) 2022-2022 Huawei Device Co., Ltd.
2d6aed566Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
3d6aed566Sopenharmony_ci# you may not use this file except in compliance with the License.
4d6aed566Sopenharmony_ci# You may obtain a copy of the License at
5d6aed566Sopenharmony_ci#
6d6aed566Sopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
7d6aed566Sopenharmony_ci#
8d6aed566Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software
9d6aed566Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
10d6aed566Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11d6aed566Sopenharmony_ci# See the License for the specific language governing permissions and
12d6aed566Sopenharmony_ci# limitations under the License.
13d6aed566Sopenharmony_ci
14d6aed566Sopenharmony_ci# Kernel type, e.g. "linux", "liteos_a", "liteos_m".
15d6aed566Sopenharmony_cikernel_type = "liteos_m"
16d6aed566Sopenharmony_ci
17d6aed566Sopenharmony_ci# Kernel version.
18d6aed566Sopenharmony_cikernel_version = "3.0.0"
19d6aed566Sopenharmony_ci
20d6aed566Sopenharmony_ci# Board CPU type, e.g. "cortex-a7", "riscv32".
21d6aed566Sopenharmony_ciboard_cpu = "cortex-m55"
22d6aed566Sopenharmony_ci
23d6aed566Sopenharmony_ci# Board arch, e.g.  "armv7-a", "rv32imac".
24d6aed566Sopenharmony_ciboard_arch = ""
25d6aed566Sopenharmony_ci
26d6aed566Sopenharmony_ci# Toolchain name used for system compiling.
27d6aed566Sopenharmony_ci# E.g. gcc-arm-none-eabi, arm-linux-harmonyeabi-gcc, ohos-clang,  riscv32-unknown-elf.
28d6aed566Sopenharmony_ci# Note: The default toolchain is "ohos-clang". It's not mandatory if you use the default toolchain.
29d6aed566Sopenharmony_ciboard_toolchain = "arm-none-eabi-gcc"
30d6aed566Sopenharmony_ci
31d6aed566Sopenharmony_ciuse_board_toolchain = true
32d6aed566Sopenharmony_ci
33d6aed566Sopenharmony_ci# The toolchain path installed, it's not mandatory if you have added toolchain path to your ~/.bashrc.
34d6aed566Sopenharmony_ciboard_toolchain_path = ""
35d6aed566Sopenharmony_ci
36d6aed566Sopenharmony_ci# Compiler prefix.
37d6aed566Sopenharmony_ciboard_toolchain_prefix = "arm-none-eabi-"
38d6aed566Sopenharmony_ci
39d6aed566Sopenharmony_ci# Compiler type, "gcc" or "clang".
40d6aed566Sopenharmony_ciboard_toolchain_type = "gcc"
41d6aed566Sopenharmony_ci
42d6aed566Sopenharmony_ci#Debug compiler optimization level options
43d6aed566Sopenharmony_ciboard_opt_flags = []
44d6aed566Sopenharmony_ci
45d6aed566Sopenharmony_ci# Board related common compile flags.
46d6aed566Sopenharmony_ciboard_cflags = [
47d6aed566Sopenharmony_ci  "-Wall",
48d6aed566Sopenharmony_ci  "-mcpu=cortex-m55",
49d6aed566Sopenharmony_ci  "-mfloat-abi=hard",
50d6aed566Sopenharmony_ci  "-flax-vector-conversions",
51d6aed566Sopenharmony_ci  "-fdata-sections",
52d6aed566Sopenharmony_ci  "-ffunction-sections",
53d6aed566Sopenharmony_ci  "-fno-builtin",
54d6aed566Sopenharmony_ci  "-fno-strict-aliasing",
55d6aed566Sopenharmony_ci  "-mno-unaligned-access",
56d6aed566Sopenharmony_ci  "-fsigned-char",
57d6aed566Sopenharmony_ci  "-std=c99",
58d6aed566Sopenharmony_ci  "-Os",
59d6aed566Sopenharmony_ci  "-DUSE_HAL_DRIVER",
60d6aed566Sopenharmony_ci  "-D__LITEOS_M__",
61d6aed566Sopenharmony_ci]
62d6aed566Sopenharmony_ciboard_cflags += board_opt_flags
63d6aed566Sopenharmony_ci
64d6aed566Sopenharmony_ciboard_asmflags = [
65d6aed566Sopenharmony_ci  "-mcpu=cortex-m55",
66d6aed566Sopenharmony_ci  "-Os",
67d6aed566Sopenharmony_ci]
68d6aed566Sopenharmony_ciboard_asmflags += board_opt_flags
69d6aed566Sopenharmony_ci
70d6aed566Sopenharmony_ciboard_cxx_flags = board_cflags
71d6aed566Sopenharmony_ci
72d6aed566Sopenharmony_ciboard_ld_flags = []
73d6aed566Sopenharmony_ci
74d6aed566Sopenharmony_ci# Newlib adapt.
75d6aed566Sopenharmony_ciboard_ld_flags += [
76d6aed566Sopenharmony_ci  "-Wl,--wrap=_free_r",
77d6aed566Sopenharmony_ci  "-Wl,--wrap,_malloc_usable_size_r",
78d6aed566Sopenharmony_ci  "-Wl,--wrap,_malloc_r",
79d6aed566Sopenharmony_ci  "-Wl,--wrap,_memalign_r",
80d6aed566Sopenharmony_ci  "-Wl,--wrap,_realloc_r",
81d6aed566Sopenharmony_ci]
82d6aed566Sopenharmony_ci
83d6aed566Sopenharmony_ci# Board related headfiles search path.
84d6aed566Sopenharmony_ciboard_include_dirs = [ "//commonlibrary/utils_lite/include" ]
85d6aed566Sopenharmony_ci
86d6aed566Sopenharmony_ci# Board adapter dir for OHOS components.
87d6aed566Sopenharmony_ciboard_adapter_dir = "//device/qemu/arm_mps3_an547/driver"
88d6aed566Sopenharmony_ci
89d6aed566Sopenharmony_ci# Sysroot path.
90d6aed566Sopenharmony_ciboard_configed_sysroot = ""
91d6aed566Sopenharmony_ci
92d6aed566Sopenharmony_ci# Board storage type, it used for file system generation.
93d6aed566Sopenharmony_cistorage_type = "spinor"
94