!32 merge cherry-pick-mr-30-1785908995293-auto into OpenHarmony-7.0-Release

增加cmake for ide的sdk拷贝,以支持使用DevEco stduio开发TA

Created-by: jiezixumihp
Commit-by: jiezixumihp
Merged-by: openharmony_ci
Description: ### 一、内容说明(相关的Issue)



### 二、建议测试周期和提测地址  
  建议测试完成时间:xxxx.xx.xx  
  投产上线时间:xxxx.xx.xx  
  提测地址:CI环境/压测环境  
  测试账号:  

### 三、变更内容
  * 3.1 关联PR列表

  * 3.2 数据库和部署说明  
    1. 常规更新 
    2. 重启unicorn
    3. 重启sidekiq
    4. 迁移任务:是否有迁移任务,没有写 "无"
    5. rake脚本:`bundle exec xxx RAILS_ENV = production`;没有写 "无"

  * 3.4 其他技术优化内容(做了什么,变更了什么)
    - 重构了 xxxx 代码
    - xxxx 算法优化


  * 3.5 废弃通知(什么字段、方法弃用?)



  * 3.6  后向不兼容变更(是否有无法向后兼容的变更?)


  
### 四、研发自测点(自测哪些?冒烟用例全部自测?)
  自测测试结论:


### 五、测试关注点(需要提醒QA重点关注的、可能会忽略的地方)
  检查点:

| 需求名称 | 是否影响xx公共模块 | 是否需要xx功能 | 需求升级是否依赖其他子产品 |
|------|------------|----------|---------------|
| xxx  | 否          | 需要       | 不需要           |
|      |            |          |               |

  接口测试:

  性能测试:

  并发测试:

  其他:



See merge request: openharmony/tee_tee_dev_kit!32
This commit is contained in:
openharmony_ci
2026-08-05 15:15:11 +08:00
3 changed files with 123 additions and 0 deletions
+9
View File
@@ -31,6 +31,14 @@ copy("tee_ndk_cmake") {
outputs = [ "$ndk_os_irrelevant_out_dir/build/teekit/cmake/{{source_file_part}}" ]
}
copy("tee_ndk_cmake_ide") {
sources = [
"./cmake_ide/common.cmake",
"./cmake_ide/common_flags.cmake",
]
outputs = [ "$ndk_os_irrelevant_out_dir/build/teekit/cmake_ide/{{source_file_part}}" ]
}
copy("tee_ndk_config") {
sources = [
"config/config_ta_public.ini",
@@ -95,6 +103,7 @@ group("tee_ndk_ta_linux_compile") {
deps = [
":tee_ndk_make",
":tee_ndk_cmake",
":tee_ndk_cmake_ide",
":tee_ndk_config",
":tee_ndk_script",
":tee_ndk_ld",
+34
View File
@@ -0,0 +1,34 @@
# Copyright (C) 2026 Huawei Technologies Co., Ltd.
# Licensed under the Mulan PSL v2.
# You can use this software according to the terms and conditions of the Mulan
# PSL v2.
# You may obtain a copy of Mulan PSL v2 at:
# http://license.coscl.org.cn/MulanPSL2
# THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY
# KIND, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
# NON-INFRINGEMENT, MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
set(TEE_OH_PATH $ENV{TEE_OH_PATH})
set(TEE_OH_BUILD_PATH $ENV{TEE_OH_BUILD_PATH})
include (${TEE_OH_BUILD_PATH}/cmake_ide/common_flags.cmake)
set(COMMON_INCLUDES_FLAGS
${COMMON_INCLUDES_FLAGS}
"-I${TEE_OH_PATH}/sysroot/usr/include/TEEKit/tee"
)
if (NOT "${TARGET_IS_ARM64}" STREQUAL "y")
message(FATAL_ERROR "32-bit TA compilation is not supported")
else()
list(APPEND COMMON_INCLUDES_FLAGS
"-I${TEE_OH_PATH}/sysroot/usr/include/"
"-I${TEE_OH_PATH}/sysroot/usr/include/aarch64-linux-ohos/"
)
list(APPEND COMMON_LDFLAGS
"-T${TEE_OH_BUILD_PATH}/ld/ta_link_64.ld"
)
endif()
+80
View File
@@ -0,0 +1,80 @@
# Copyright (C) 2026 Huawei Technologies Co., Ltd.
# Licensed under the Mulan PSL v2.
# You can use this software according to the terms and conditions of the Mulan
# PSL v2.
# You may obtain a copy of Mulan PSL v2 at:
# http://license.coscl.org.cn/MulanPSL2
# THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY
# KIND, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
# NON-INFRINGEMENT, MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
list(APPEND COMMON_LDFLAGS
"-s"
"-z" "text"
"-z" "now"
"-z" "relro"
"-z" "noexecstack"
"-shared"
)
if ("${CONFIG_GCC}" STREQUAL "n")
list(APPEND COMMON_LDFLAGS
"-z" "max-page-size=4096"
"--execute-only"
)
endif()
set(COMMON_LDFLAGS ${COMMON_LDFLAGS} CACHE INTERNAL "")
list(APPEND COMMON_CFLAGS
-Wall
-Werror
-Wdate-time
-Wfloat-equal
-Wshadow
-fno-short-enums
-fno-omit-frame-pointer
-Wstack-protector
--param ssp-buffer-size=4
-Wextra
-nostdinc
-march=armv8-a
-fPIC
-fno-common
-fsigned-char
-DCONFIG_AUTH_TERMINAL
-pipe
)
if ("${CONFIG_GCC}" STREQUAL "y")
list(APPEND COMMON_CFLAGS
-W
-fstack-protector
-Os
-fno-peephole
-fno-peephole2
)
else()
list(APPEND COMMON_CFLAGS
-fstack-protector-strong
-funwind-tables
-Oz
-munaligned-access
-fmax-type-align=1
-flto
-fvisibility=default
-fsanitize=cfi
-fno-exceptions
-ftrivial-auto-var-init=zero
-enable-trivial-auto-var-init-zero-knowing-it-will-be-removed-from-clang
)
if ("${TARGET_IS_ARM64}" STREQUAL "n")
list(APPEND COMMON_CFLAGS
--target=arm-linux-gnu
-mfloat-abi=soft
)
else()
list(APPEND COMMON_CFLAGS
--target=aarch64-linux-gnu
)
endif()
endif()
set(COMMON_CFLAGS ${COMMON_CFLAGS} CACHE INTERNAL "")