15f9996aaSopenharmony_ci# Copyright (c) 2021 Huawei Device Co., Ltd. 25f9996aaSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License"); 35f9996aaSopenharmony_ci# you may not use this file except in compliance with the License. 45f9996aaSopenharmony_ci# You may obtain a copy of the License at 55f9996aaSopenharmony_ci# 65f9996aaSopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0 75f9996aaSopenharmony_ci# 85f9996aaSopenharmony_ci# Unless required by applicable law or agreed to in writing, software 95f9996aaSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS, 105f9996aaSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 115f9996aaSopenharmony_ci# See the License for the specific language governing permissions and 125f9996aaSopenharmony_ci# limitations under the License. 135f9996aaSopenharmony_ci 145f9996aaSopenharmony_ciimport("//build/config/python.gni") 155f9996aaSopenharmony_ciimport("//build/ohos/sa_profile/sa_profile.gni") 165f9996aaSopenharmony_ci 175f9996aaSopenharmony_ciimport("//build/ohos.gni") 185f9996aaSopenharmony_ciimport("//build/ohos/build_var.gni") 195f9996aaSopenharmony_ciimport("//build/ohos_var.gni") 205f9996aaSopenharmony_ci 215f9996aaSopenharmony_ciimport("//build/ohos/hisysevent/hisysevent.gni") 225f9996aaSopenharmony_ci 235f9996aaSopenharmony_ci# import target_platform_list 245f9996aaSopenharmony_ciimport("${build_configs_path}/platforms_list.gni") 255f9996aaSopenharmony_ciyml_file = rebase_path(product_path) + "/fs.yml" 265f9996aaSopenharmony_ciis_exist_yml_file = exec_script(rebase_path("//build/ohos/file_exists.py"), 275f9996aaSopenharmony_ci [ 285f9996aaSopenharmony_ci "--filename", 295f9996aaSopenharmony_ci yml_file, 305f9996aaSopenharmony_ci "--type", 315f9996aaSopenharmony_ci "file", 325f9996aaSopenharmony_ci ], 335f9996aaSopenharmony_ci "string") 345f9996aaSopenharmony_ci 355f9996aaSopenharmony_cigroup("make_packages") { 365f9996aaSopenharmony_ci deps = [] 375f9996aaSopenharmony_ci foreach(_platform, target_platform_list) { 385f9996aaSopenharmony_ci if (is_standard_system && !skip_gen_module_info) { 395f9996aaSopenharmony_ci # Lite system uses different packaging scheme, which is called in hb. 405f9996aaSopenharmony_ci # So skip install_modules for lite system since it's the packaging 415f9996aaSopenharmony_ci # action of standard system. 425f9996aaSopenharmony_ci 435f9996aaSopenharmony_ci deps += [ ":${_platform}_install_modules" ] 445f9996aaSopenharmony_ci } 455f9996aaSopenharmony_ci if (!skip_gen_module_info) { 465f9996aaSopenharmony_ci deps += [ ":gen_required_modules_${_platform}" ] 475f9996aaSopenharmony_ci } 485f9996aaSopenharmony_ci deps += [ ":${_platform}_parts_list" ] 495f9996aaSopenharmony_ci if (!is_standard_system) { 505f9996aaSopenharmony_ci deps += [ ":merge_system_notice_file_${_platform}" ] 515f9996aaSopenharmony_ci } 525f9996aaSopenharmony_ci } 535f9996aaSopenharmony_ci if (make_osp) { 545f9996aaSopenharmony_ci deps += [ ":open_source_package" ] 555f9996aaSopenharmony_ci } 565f9996aaSopenharmony_ci} 575f9996aaSopenharmony_ci 585f9996aaSopenharmony_ciaction("packer") { 595f9996aaSopenharmony_ci script = rebase_path("//build/ohos/packages/fs_process.py") 605f9996aaSopenharmony_ci if (is_exist_yml_file == "True") { 615f9996aaSopenharmony_ci inputs = [ yml_file ] 625f9996aaSopenharmony_ci } 635f9996aaSopenharmony_ci outputs = [ "${root_build_dir}/result.txt" ] 645f9996aaSopenharmony_ci deps = [ ":make_packages" ] 655f9996aaSopenharmony_ci args = [ 665f9996aaSopenharmony_ci "--product", 675f9996aaSopenharmony_ci product_name, 685f9996aaSopenharmony_ci "--root-path", 695f9996aaSopenharmony_ci rebase_path("//"), 705f9996aaSopenharmony_ci "--out-path", 715f9996aaSopenharmony_ci rebase_path(root_build_dir), 725f9996aaSopenharmony_ci "--log-path", 735f9996aaSopenharmony_ci rebase_path("${root_build_dir}/build.log"), 745f9996aaSopenharmony_ci "--product-path", 755f9996aaSopenharmony_ci rebase_path(product_path), 765f9996aaSopenharmony_ci ] 775f9996aaSopenharmony_ci} 785f9996aaSopenharmony_ci 795f9996aaSopenharmony_ciall_parts_host_info_file = "${root_build_dir}/all_parts_host.json" 805f9996aaSopenharmony_ciall_host_symlink_file = "${root_build_dir}/all_host_symlink.json" 815f9996aaSopenharmony_ci 825f9996aaSopenharmony_ciaction("generate_host_symlink") { 835f9996aaSopenharmony_ci script = "//build/ohos/packages/generate_host_symlink.py" 845f9996aaSopenharmony_ci inputs = [ all_parts_host_info_file ] 855f9996aaSopenharmony_ci outputs = [ all_host_symlink_file ] 865f9996aaSopenharmony_ci deps = [ "//build/ohos/common:generate_host_info" ] 875f9996aaSopenharmony_ci args = [ 885f9996aaSopenharmony_ci "--all-parts-host-info-file", 895f9996aaSopenharmony_ci rebase_path(all_parts_host_info_file), 905f9996aaSopenharmony_ci "--output-file", 915f9996aaSopenharmony_ci rebase_path(all_host_symlink_file), 925f9996aaSopenharmony_ci "--root-build-dir", 935f9996aaSopenharmony_ci rebase_path(root_build_dir), 945f9996aaSopenharmony_ci ] 955f9996aaSopenharmony_ci} 965f9996aaSopenharmony_ci 975f9996aaSopenharmony_ciall_parts_info_file = "${root_build_dir}/all_parts_info.json" 985f9996aaSopenharmony_ciall_platforms_parts = 995f9996aaSopenharmony_ci "${root_build_dir}/build_configs/target_platforms_parts.json" 1005f9996aaSopenharmony_ci 1015f9996aaSopenharmony_ciforeach(_platform, target_platform_list) { 1025f9996aaSopenharmony_ci current_platform = _platform 1035f9996aaSopenharmony_ci current_platform_dir = "${product_output_dir}/$current_platform" 1045f9996aaSopenharmony_ci 1055f9996aaSopenharmony_ci _system_install_info_file = 1065f9996aaSopenharmony_ci "${current_platform_dir}/system_install_parts.json" 1075f9996aaSopenharmony_ci 1085f9996aaSopenharmony_ci action_with_pydeps("${current_platform}_parts_list") { 1095f9996aaSopenharmony_ci script = "//build/ohos/packages/parts_install_info.py" 1105f9996aaSopenharmony_ci deps = [ "//build/ohos/common:merge_all_parts" ] 1115f9996aaSopenharmony_ci inputs = [ all_parts_info_file ] 1125f9996aaSopenharmony_ci outputs = [ _system_install_info_file ] 1135f9996aaSopenharmony_ci depfile = "$target_gen_dir/$target_name.d" 1145f9996aaSopenharmony_ci args = [ 1155f9996aaSopenharmony_ci "--depfile", 1165f9996aaSopenharmony_ci rebase_path(depfile, root_build_dir), 1175f9996aaSopenharmony_ci "--all-parts-info-file", 1185f9996aaSopenharmony_ci rebase_path(all_parts_info_file, root_build_dir), 1195f9996aaSopenharmony_ci "--platforms-parts-file", 1205f9996aaSopenharmony_ci rebase_path(all_platforms_parts, root_build_dir), 1215f9996aaSopenharmony_ci "--system-install-info-file", 1225f9996aaSopenharmony_ci rebase_path(_system_install_info_file, root_build_dir), 1235f9996aaSopenharmony_ci "--current-platform", 1245f9996aaSopenharmony_ci current_platform, 1255f9996aaSopenharmony_ci "--root-code-dir", 1265f9996aaSopenharmony_ci rebase_path("//"), 1275f9996aaSopenharmony_ci "--root-build-dir", 1285f9996aaSopenharmony_ci root_build_dir, 1295f9996aaSopenharmony_ci ] 1305f9996aaSopenharmony_ci } 1315f9996aaSopenharmony_ci 1325f9996aaSopenharmony_ci post_process_modules_list = [] 1335f9996aaSopenharmony_ci 1345f9996aaSopenharmony_ci # sa profile install 1355f9996aaSopenharmony_ci sa_install_modules_info_file = 1365f9996aaSopenharmony_ci "${current_platform_dir}/sa_profile/sa_install_info.json" 1375f9996aaSopenharmony_ci _merged_sa_profile_zipfile = 1385f9996aaSopenharmony_ci "${current_platform_dir}/sa_profile/merged_sa_profile.zip" 1395f9996aaSopenharmony_ci _merged_sa_profile_dir = "${current_platform_dir}/sa_profile/merged_sa" 1405f9996aaSopenharmony_ci ohos_sa_install_info("${current_platform}_sa_profile_install_info") { 1415f9996aaSopenharmony_ci deps = [ ":${current_platform}_parts_list" ] 1425f9996aaSopenharmony_ci _outputs = get_target_outputs(":${current_platform}_parts_list") 1435f9996aaSopenharmony_ci system_install_info_file = _outputs[0] 1445f9996aaSopenharmony_ci sa_install_info_file = sa_install_modules_info_file 1455f9996aaSopenharmony_ci merged_sa_profile_zipfile = _merged_sa_profile_zipfile 1465f9996aaSopenharmony_ci merged_sa_profile_dir = _merged_sa_profile_dir 1475f9996aaSopenharmony_ci } 1485f9996aaSopenharmony_ci 1495f9996aaSopenharmony_ci # all post process moudles info 1505f9996aaSopenharmony_ci post_process_modules_list += [ sa_install_modules_info_file ] 1515f9996aaSopenharmony_ci 1525f9996aaSopenharmony_ci hisysevent_install_info_file = 1535f9996aaSopenharmony_ci "${current_platform_dir}/hisysevent/hisysevent_install_info.json" 1545f9996aaSopenharmony_ci ohos_hisysevent_install_info("${current_platform}_hisysevent_install_info") { 1555f9996aaSopenharmony_ci deps = [ ":${current_platform}_parts_list" ] 1565f9996aaSopenharmony_ci _outputs = get_target_outputs(":${current_platform}_parts_list") 1575f9996aaSopenharmony_ci system_install_info_file = _outputs[0] 1585f9996aaSopenharmony_ci } 1595f9996aaSopenharmony_ci post_process_modules_list += [ hisysevent_install_info_file ] 1605f9996aaSopenharmony_ci 1615f9996aaSopenharmony_ci _notice_root_dir = "${current_platform_dir}/NOTICE_FILES" 1625f9996aaSopenharmony_ci _collected_notice_zipfile = "${current_platform_dir}/system_notice_files.zip" 1635f9996aaSopenharmony_ci 1645f9996aaSopenharmony_ci action_with_pydeps("collect_notice_files__${_platform}") { 1655f9996aaSopenharmony_ci deps = [ ":${_platform}_parts_list" ] 1665f9996aaSopenharmony_ci script = "//build/ohos/notice/collect_system_notice_files.py" 1675f9996aaSopenharmony_ci depfile = "$target_gen_dir/$target_name.d" 1685f9996aaSopenharmony_ci sources = [ _system_install_info_file ] 1695f9996aaSopenharmony_ci outputs = [ _collected_notice_zipfile ] 1705f9996aaSopenharmony_ci args = [ 1715f9996aaSopenharmony_ci "--install-info-file", 1725f9996aaSopenharmony_ci rebase_path(_system_install_info_file, root_build_dir), 1735f9996aaSopenharmony_ci "--output-file", 1745f9996aaSopenharmony_ci rebase_path(_collected_notice_zipfile, root_build_dir), 1755f9996aaSopenharmony_ci "--depfile", 1765f9996aaSopenharmony_ci rebase_path(depfile, root_build_dir), 1775f9996aaSopenharmony_ci "--notice-root-dir", 1785f9996aaSopenharmony_ci rebase_path(_notice_root_dir, root_build_dir), 1795f9996aaSopenharmony_ci ] 1805f9996aaSopenharmony_ci } 1815f9996aaSopenharmony_ci 1825f9996aaSopenharmony_ci _merged_notice_txt = "${current_platform_dir}/NOTICE.txt" 1835f9996aaSopenharmony_ci _notice_module_info_file = "${current_platform_dir}/NOTICE_module_info.json" 1845f9996aaSopenharmony_ci action_with_pydeps("merge_system_notice_file_${current_platform}") { 1855f9996aaSopenharmony_ci deps = [ ":collect_notice_files__${current_platform}" ] 1865f9996aaSopenharmony_ci script = "//build/ohos/notice/merge_notice_files.py" 1875f9996aaSopenharmony_ci depfile = "$target_gen_dir/$target_name.d" 1885f9996aaSopenharmony_ci 1895f9996aaSopenharmony_ci _merged_notice_gz = "${current_platform_dir}/NOTICE.xml.gz" 1905f9996aaSopenharmony_ci inputs = [ _collected_notice_zipfile ] 1915f9996aaSopenharmony_ci outputs = [ 1925f9996aaSopenharmony_ci _merged_notice_txt, 1935f9996aaSopenharmony_ci _merged_notice_gz, 1945f9996aaSopenharmony_ci _notice_module_info_file, 1955f9996aaSopenharmony_ci ] 1965f9996aaSopenharmony_ci args = [ 1975f9996aaSopenharmony_ci "--image-name", 1985f9996aaSopenharmony_ci "system", 1995f9996aaSopenharmony_ci "--notice-root-dir", 2005f9996aaSopenharmony_ci rebase_path(_notice_root_dir, root_build_dir), 2015f9996aaSopenharmony_ci "--output-notice-txt", 2025f9996aaSopenharmony_ci rebase_path(_merged_notice_txt, root_out_dir), 2035f9996aaSopenharmony_ci "--output-notice-gz", 2045f9996aaSopenharmony_ci rebase_path(_merged_notice_gz, root_out_dir), 2055f9996aaSopenharmony_ci "--notice-title", 2065f9996aaSopenharmony_ci "Notices for files contained in the system filesystem image in this directory:", 2075f9996aaSopenharmony_ci "--static-library-notice-dir", 2085f9996aaSopenharmony_ci rebase_path(static_libraries_notice_dir, root_build_dir), 2095f9996aaSopenharmony_ci "--target-cpu", 2105f9996aaSopenharmony_ci target_cpu, 2115f9996aaSopenharmony_ci "--depfile", 2125f9996aaSopenharmony_ci rebase_path(depfile, root_build_dir), 2135f9996aaSopenharmony_ci "--collected-notice-zipfile", 2145f9996aaSopenharmony_ci rebase_path(_collected_notice_zipfile, root_build_dir), 2155f9996aaSopenharmony_ci "--notice-module-info", 2165f9996aaSopenharmony_ci rebase_path(_notice_module_info_file, root_build_dir), 2175f9996aaSopenharmony_ci "--notice-install-dir", 2185f9996aaSopenharmony_ci ] 2195f9996aaSopenharmony_ci if (is_system_component) { 2205f9996aaSopenharmony_ci args += [ "system/etc" ] 2215f9996aaSopenharmony_ci } else { 2225f9996aaSopenharmony_ci args += [ "vendor/etc" ] 2235f9996aaSopenharmony_ci } 2245f9996aaSopenharmony_ci if (!is_standard_system) { 2255f9996aaSopenharmony_ci args += [ 2265f9996aaSopenharmony_ci "--lite-product", 2275f9996aaSopenharmony_ci "true", 2285f9996aaSopenharmony_ci ] 2295f9996aaSopenharmony_ci } 2305f9996aaSopenharmony_ci } 2315f9996aaSopenharmony_ci post_process_modules_list += [ _notice_module_info_file ] 2325f9996aaSopenharmony_ci 2335f9996aaSopenharmony_ci action("verify_notice_file_${current_platform}") { 2345f9996aaSopenharmony_ci deps = [ ":merge_system_notice_file_${current_platform}" ] 2355f9996aaSopenharmony_ci script = "//build/lite/run_shell_cmd.py" 2365f9996aaSopenharmony_ci _verify_result = "${current_platform_dir}/notice_verify_result.out" 2375f9996aaSopenharmony_ci 2385f9996aaSopenharmony_ci inputs = [ _merged_notice_txt ] 2395f9996aaSopenharmony_ci outputs = [ _verify_result ] 2405f9996aaSopenharmony_ci 2415f9996aaSopenharmony_ci args = [ 2425f9996aaSopenharmony_ci "/bin/bash", 2435f9996aaSopenharmony_ci rebase_path("//build/core/build_scripts/verify_notice.sh", 2445f9996aaSopenharmony_ci root_build_dir), 2455f9996aaSopenharmony_ci rebase_path(_merged_notice_txt, root_build_dir), 2465f9996aaSopenharmony_ci rebase_path(_verify_result, root_build_dir), 2475f9996aaSopenharmony_ci rebase_path(current_platform_dir, root_build_dir), 2485f9996aaSopenharmony_ci ] 2495f9996aaSopenharmony_ci } 2505f9996aaSopenharmony_ci 2515f9996aaSopenharmony_ci system_install_modules = "${current_platform_dir}/system_install_modules.json" 2525f9996aaSopenharmony_ci system_module_info_list = "${current_platform_dir}/system_module_info.json" 2535f9996aaSopenharmony_ci system_modules_list = "${current_platform_dir}/system_modules_list.txt" 2545f9996aaSopenharmony_ci _system_image_zipfile = "${current_platform_dir}/system.zip" 2555f9996aaSopenharmony_ci _host_toolchain = "$host_toolchain" 2565f9996aaSopenharmony_ci 2575f9996aaSopenharmony_ci action_with_pydeps("${_platform}_install_modules") { 2585f9996aaSopenharmony_ci script = "//build/ohos/packages/modules_install.py" 2595f9996aaSopenharmony_ci public_deps = [ ":${current_platform}_parts_list" ] 2605f9996aaSopenharmony_ci depfile = "$target_gen_dir/$target_name.d" 2615f9996aaSopenharmony_ci deps = [ 2625f9996aaSopenharmony_ci ":${current_platform}_hisysevent_install_info", 2635f9996aaSopenharmony_ci ":${current_platform}_sa_profile_install_info", 2645f9996aaSopenharmony_ci ":generate_host_symlink", 2655f9996aaSopenharmony_ci ":merge_system_notice_file_${current_platform}", 2665f9996aaSopenharmony_ci ":verify_notice_file_${current_platform}", 2675f9996aaSopenharmony_ci ] 2685f9996aaSopenharmony_ci 2695f9996aaSopenharmony_ci sources = [ 2705f9996aaSopenharmony_ci _merged_sa_profile_zipfile, 2715f9996aaSopenharmony_ci _system_install_info_file, 2725f9996aaSopenharmony_ci ] 2735f9996aaSopenharmony_ci 2745f9996aaSopenharmony_ci outputs = [ 2755f9996aaSopenharmony_ci system_install_modules, 2765f9996aaSopenharmony_ci system_module_info_list, 2775f9996aaSopenharmony_ci system_modules_list, 2785f9996aaSopenharmony_ci _system_image_zipfile, 2795f9996aaSopenharmony_ci ] 2805f9996aaSopenharmony_ci 2815f9996aaSopenharmony_ci args = [ 2825f9996aaSopenharmony_ci "--system-install-info-file", 2835f9996aaSopenharmony_ci rebase_path(_system_install_info_file, root_build_dir), 2845f9996aaSopenharmony_ci "--install-modules-info-file", 2855f9996aaSopenharmony_ci rebase_path(system_install_modules, root_build_dir), 2865f9996aaSopenharmony_ci "--modules-info-file", 2875f9996aaSopenharmony_ci rebase_path(system_module_info_list, root_build_dir), 2885f9996aaSopenharmony_ci "--modules-list-file", 2895f9996aaSopenharmony_ci rebase_path(system_modules_list, root_build_dir), 2905f9996aaSopenharmony_ci "--platform-installed-path", 2915f9996aaSopenharmony_ci rebase_path(current_platform_dir, root_build_dir), 2925f9996aaSopenharmony_ci "--depfile", 2935f9996aaSopenharmony_ci rebase_path(depfile, root_build_dir), 2945f9996aaSopenharmony_ci "--sa-profile-extract-dir", 2955f9996aaSopenharmony_ci rebase_path(_merged_sa_profile_dir, root_build_dir), 2965f9996aaSopenharmony_ci "--merged-sa-profile", 2975f9996aaSopenharmony_ci rebase_path(_merged_sa_profile_zipfile, root_build_dir), 2985f9996aaSopenharmony_ci "--system-dir", 2995f9996aaSopenharmony_ci rebase_path("$current_platform_dir/system", root_build_dir), 3005f9996aaSopenharmony_ci "--system-image-zipfile", 3015f9996aaSopenharmony_ci rebase_path(_system_image_zipfile, root_build_dir), 3025f9996aaSopenharmony_ci "--host-toolchain", 3035f9996aaSopenharmony_ci _host_toolchain, 3045f9996aaSopenharmony_ci ] 3055f9996aaSopenharmony_ci 3065f9996aaSopenharmony_ci _additional_system_files = [] 3075f9996aaSopenharmony_ci foreach(tuple, _additional_system_files) { 3085f9996aaSopenharmony_ci args += [ 3095f9996aaSopenharmony_ci "--additional-system-files", 3105f9996aaSopenharmony_ci rebase_path(tuple[0], root_build_dir) + ":" + tuple[1], 3115f9996aaSopenharmony_ci ] 3125f9996aaSopenharmony_ci } 3135f9996aaSopenharmony_ci 3145f9996aaSopenharmony_ci if (post_process_modules_list != []) { 3155f9996aaSopenharmony_ci sources += post_process_modules_list 3165f9996aaSopenharmony_ci args += [ "--post-process-modules-info-files" ] 3175f9996aaSopenharmony_ci args += rebase_path(post_process_modules_list, root_build_dir) 3185f9996aaSopenharmony_ci } 3195f9996aaSopenharmony_ci 3205f9996aaSopenharmony_ci args += [ "--categorized-libraries" ] 3215f9996aaSopenharmony_ci args += 3225f9996aaSopenharmony_ci [ rebase_path("//build/ohos/packages/rules/categorized-libraries.json", 3235f9996aaSopenharmony_ci root_build_dir) ] 3245f9996aaSopenharmony_ci } 3255f9996aaSopenharmony_ci 3265f9996aaSopenharmony_ci action("check_seccomp_filter_name") { 3275f9996aaSopenharmony_ci script = "//build/ohos/packages/check_seccomp_library_name.py" 3285f9996aaSopenharmony_ci deps = [ ":${_platform}_install_modules" ] 3295f9996aaSopenharmony_ci 3305f9996aaSopenharmony_ci # result is not used in script 3315f9996aaSopenharmony_ci process_validate_result = 3325f9996aaSopenharmony_ci "${current_platform_dir}/check_seccomp_filter_name.txt" 3335f9996aaSopenharmony_ci _system_cfg_folder = "${current_platform_dir}/system/etc/init" 3345f9996aaSopenharmony_ci if (target_cpu == "arm" || target_cpu == "x86") { 3355f9996aaSopenharmony_ci libdir = "lib" 3365f9996aaSopenharmony_ci } else if (target_cpu == "arm64" || target_cpu == "x86_64") { 3375f9996aaSopenharmony_ci libdir = "lib64" 3385f9996aaSopenharmony_ci } else { 3395f9996aaSopenharmony_ci libdir = "lib" 3405f9996aaSopenharmony_ci } 3415f9996aaSopenharmony_ci _system_seccomp_folder = "${current_platform_dir}/system/${libdir}/seccomp" 3425f9996aaSopenharmony_ci 3435f9996aaSopenharmony_ci _vendor_cfg_folder = "${current_platform_dir}/vendor/etc/init" 3445f9996aaSopenharmony_ci _vendor_seccomp_folder = "${current_platform_dir}/vendor/${libdir}/seccomp" 3455f9996aaSopenharmony_ci 3465f9996aaSopenharmony_ci outputs = [ process_validate_result ] 3475f9996aaSopenharmony_ci 3485f9996aaSopenharmony_ci args = [ 3495f9996aaSopenharmony_ci "--vendor-cfg-path", 3505f9996aaSopenharmony_ci rebase_path(_vendor_cfg_folder, root_build_dir), 3515f9996aaSopenharmony_ci "--vendor-seccomp-lib-path", 3525f9996aaSopenharmony_ci rebase_path(_vendor_seccomp_folder, root_build_dir), 3535f9996aaSopenharmony_ci "--system-cfg-path", 3545f9996aaSopenharmony_ci rebase_path(_system_cfg_folder, root_build_dir), 3555f9996aaSopenharmony_ci "--system-seccomp-lib-path", 3565f9996aaSopenharmony_ci rebase_path(_system_seccomp_folder, root_build_dir), 3575f9996aaSopenharmony_ci ] 3585f9996aaSopenharmony_ci } 3595f9996aaSopenharmony_ci 3605f9996aaSopenharmony_ci action("process_field_validate") { 3615f9996aaSopenharmony_ci script = "//build/ohos/packages/process_field_validate.py" 3625f9996aaSopenharmony_ci 3635f9996aaSopenharmony_ci deps = [ ":${_platform}_install_modules" ] 3645f9996aaSopenharmony_ci 3655f9996aaSopenharmony_ci # result is not used in script 3665f9996aaSopenharmony_ci process_validate_result = "${current_platform_dir}/cfg_validate_result.txt" 3675f9996aaSopenharmony_ci 3685f9996aaSopenharmony_ci # ext_root_proc_conf_path defined in config.json in vendor warehouse 3695f9996aaSopenharmony_ci if (ext_root_proc_conf_path != "") { 3705f9996aaSopenharmony_ci _privilege_whitelist = ext_root_proc_conf_path 3715f9996aaSopenharmony_ci } else { 3725f9996aaSopenharmony_ci _privilege_whitelist = "//vendor/${product_company}/${product_name}/security_config/high_privilege_process_list.json" 3735f9996aaSopenharmony_ci } 3745f9996aaSopenharmony_ci 3755f9996aaSopenharmony_ci # ext_critical_proc_conf_path defined in config.json in vendor warehouse 3765f9996aaSopenharmony_ci if (ext_critical_proc_conf_path != "") { 3775f9996aaSopenharmony_ci _critical_whitelist = ext_critical_proc_conf_path 3785f9996aaSopenharmony_ci } else { 3795f9996aaSopenharmony_ci _critical_whitelist = "//vendor/${product_company}/${product_name}/security_config/critical_reboot_process_list.json" 3805f9996aaSopenharmony_ci } 3815f9996aaSopenharmony_ci _system_cfg_folder = "${current_platform_dir}/system/etc/init" 3825f9996aaSopenharmony_ci 3835f9996aaSopenharmony_ci _vendor_cfg_folder = "${current_platform_dir}/vendor/etc/init" 3845f9996aaSopenharmony_ci 3855f9996aaSopenharmony_ci outputs = [ process_validate_result ] 3865f9996aaSopenharmony_ci 3875f9996aaSopenharmony_ci args = [ 3885f9996aaSopenharmony_ci "--sys-cfg-folder", 3895f9996aaSopenharmony_ci rebase_path(_system_cfg_folder, root_build_dir), 3905f9996aaSopenharmony_ci "--vendor-cfg-folder", 3915f9996aaSopenharmony_ci rebase_path(_vendor_cfg_folder, root_build_dir), 3925f9996aaSopenharmony_ci "--high-privilege-process-list-path", 3935f9996aaSopenharmony_ci rebase_path(_privilege_whitelist, root_build_dir), 3945f9996aaSopenharmony_ci "--critical-reboot-process-list-path", 3955f9996aaSopenharmony_ci rebase_path(_critical_whitelist, root_build_dir), 3965f9996aaSopenharmony_ci ] 3975f9996aaSopenharmony_ci } 3985f9996aaSopenharmony_ci} 3995f9996aaSopenharmony_ci 4005f9996aaSopenharmony_ci# required_install_module_list.json 4015f9996aaSopenharmony_ciforeach(_platform, target_platform_list) { 4025f9996aaSopenharmony_ci current_platform_dir = "${product_output_dir}/$_platform" 4035f9996aaSopenharmony_ci _system_install_info_file = 4045f9996aaSopenharmony_ci "${current_platform_dir}/system_install_parts.json" 4055f9996aaSopenharmony_ci required_install_modules_file = 4065f9996aaSopenharmony_ci "${current_platform_dir}/required_install_module_list.json" 4075f9996aaSopenharmony_ci action_with_pydeps("gen_required_modules_${_platform}") { 4085f9996aaSopenharmony_ci deps = [ ":${_platform}_parts_list" ] 4095f9996aaSopenharmony_ci script = "//build/ohos/packages/gen_required_modules_list.py" 4105f9996aaSopenharmony_ci inputs = [ _system_install_info_file ] 4115f9996aaSopenharmony_ci outputs = [ required_install_modules_file ] 4125f9996aaSopenharmony_ci depfile = "$target_gen_dir/$target_name.d" 4135f9996aaSopenharmony_ci args = [ 4145f9996aaSopenharmony_ci "--system-installed-info-file", 4155f9996aaSopenharmony_ci rebase_path(_system_install_info_file, root_out_dir), 4165f9996aaSopenharmony_ci "--required-install-modules-file", 4175f9996aaSopenharmony_ci rebase_path(required_install_modules_file, root_out_dir), 4185f9996aaSopenharmony_ci "--depfile", 4195f9996aaSopenharmony_ci rebase_path(depfile, root_build_dir), 4205f9996aaSopenharmony_ci ] 4215f9996aaSopenharmony_ci } 4225f9996aaSopenharmony_ci} 4235f9996aaSopenharmony_ci 4245f9996aaSopenharmony_ciif (is_asan || is_tsan) { 4255f9996aaSopenharmony_ci foreach(_platform, target_platform_list) { 4265f9996aaSopenharmony_ci action("restore_first_stage_artifact_${_platform}") { 4275f9996aaSopenharmony_ci current_platform = _platform 4285f9996aaSopenharmony_ci current_platform_dir = "${product_output_dir}/$current_platform" 4295f9996aaSopenharmony_ci deps = [ ":${_platform}_install_modules" ] 4305f9996aaSopenharmony_ci print("restore_first_stage_artifact_${_platform}") 4315f9996aaSopenharmony_ci 4325f9996aaSopenharmony_ci if (current_cpu == "arm64" || current_cpu == "riscv64") { 4335f9996aaSopenharmony_ci module_type = "lib64" 4345f9996aaSopenharmony_ci } else if (current_cpu == "arm") { 4355f9996aaSopenharmony_ci module_type = "lib" 4365f9996aaSopenharmony_ci } 4375f9996aaSopenharmony_ci 4385f9996aaSopenharmony_ci sources_dir = [ 4395f9996aaSopenharmony_ci "${root_build_dir}/backup/packages/${_platform}/system/$module_type", 4405f9996aaSopenharmony_ci "${root_build_dir}/backup/packages/${_platform}/system/bin", 4415f9996aaSopenharmony_ci ] 4425f9996aaSopenharmony_ci 4435f9996aaSopenharmony_ci restore_dir = "${current_platform_dir}/${system_base_dir}/restore" 4445f9996aaSopenharmony_ci 4455f9996aaSopenharmony_ci outputs = [ restore_dir ] 4465f9996aaSopenharmony_ci 4475f9996aaSopenharmony_ci script = "//build/ohos/packages/backup_restore_artifact.py" 4485f9996aaSopenharmony_ci args = [ "--source-dir" ] 4495f9996aaSopenharmony_ci foreach(source_dir, sources_dir) { 4505f9996aaSopenharmony_ci args += [ rebase_path(source_dir, root_out_dir) ] 4515f9996aaSopenharmony_ci } 4525f9996aaSopenharmony_ci 4535f9996aaSopenharmony_ci args += [ 4545f9996aaSopenharmony_ci "--output-dir", 4555f9996aaSopenharmony_ci rebase_path(restore_dir, root_out_dir), 4565f9996aaSopenharmony_ci ] 4575f9996aaSopenharmony_ci } 4585f9996aaSopenharmony_ci 4595f9996aaSopenharmony_ci action("restore_first_stage_symbols_${_platform}") { 4605f9996aaSopenharmony_ci current_platform = _platform 4615f9996aaSopenharmony_ci current_platform_dir = "${product_output_dir}/$current_platform" 4625f9996aaSopenharmony_ci deps = [ ":package_libs_symbols_${_platform}" ] 4635f9996aaSopenharmony_ci print("restore_first_stage_symbols_${_platform}") 4645f9996aaSopenharmony_ci 4655f9996aaSopenharmony_ci sources_dir = [ 4665f9996aaSopenharmony_ci "${root_build_dir}/backup/packages/${_platform}/exe.unstripped", 4675f9996aaSopenharmony_ci "${root_build_dir}/backup/packages/${_platform}/lib.unstripped", 4685f9996aaSopenharmony_ci ] 4695f9996aaSopenharmony_ci 4705f9996aaSopenharmony_ci restore_dir = "${current_platform_dir}/restore_symbols" 4715f9996aaSopenharmony_ci 4725f9996aaSopenharmony_ci outputs = [ restore_dir ] 4735f9996aaSopenharmony_ci 4745f9996aaSopenharmony_ci script = "//build/ohos/packages/backup_restore_artifact.py" 4755f9996aaSopenharmony_ci args = [ "--source-dir" ] 4765f9996aaSopenharmony_ci foreach(source_dir, sources_dir) { 4775f9996aaSopenharmony_ci args += [ rebase_path(source_dir, root_out_dir) ] 4785f9996aaSopenharmony_ci } 4795f9996aaSopenharmony_ci 4805f9996aaSopenharmony_ci args += [ 4815f9996aaSopenharmony_ci "--output-dir", 4825f9996aaSopenharmony_ci rebase_path(restore_dir, root_out_dir), 4835f9996aaSopenharmony_ci ] 4845f9996aaSopenharmony_ci } 4855f9996aaSopenharmony_ci } 4865f9996aaSopenharmony_ci} 4875f9996aaSopenharmony_ci 4885f9996aaSopenharmony_ciforeach(_platform, target_platform_list) { 4895f9996aaSopenharmony_ci current_platform_dir = "$product_output_dir/$_platform" 4905f9996aaSopenharmony_ci _system_install_info_file = 4915f9996aaSopenharmony_ci "${current_platform_dir}/system_install_parts.json" 4925f9996aaSopenharmony_ci 4935f9996aaSopenharmony_ci action_with_pydeps("package_libs_symbols_${_platform}") { 4945f9996aaSopenharmony_ci deps = [ ":${_platform}_parts_list" ] 4955f9996aaSopenharmony_ci script = "//build/ohos/packages/resources_collect.py" 4965f9996aaSopenharmony_ci inputs = [ _system_install_info_file ] 4975f9996aaSopenharmony_ci output_file = "$target_out_dir/$target_name.out" 4985f9996aaSopenharmony_ci outputs = [ output_file ] 4995f9996aaSopenharmony_ci 5005f9996aaSopenharmony_ci args = [ 5015f9996aaSopenharmony_ci "--collect-type", 5025f9996aaSopenharmony_ci "libs_symbols", 5035f9996aaSopenharmony_ci "--system-install-info-file", 5045f9996aaSopenharmony_ci rebase_path(_system_install_info_file, root_build_dir), 5055f9996aaSopenharmony_ci "--resources-dir-list", 5065f9996aaSopenharmony_ci "lib.unstripped", 5075f9996aaSopenharmony_ci "exe.unstripped", 5085f9996aaSopenharmony_ci "--package-output-base-dir", 5095f9996aaSopenharmony_ci rebase_path("$current_platform_dir", root_build_dir), 5105f9996aaSopenharmony_ci "--output-file", 5115f9996aaSopenharmony_ci rebase_path(output_file, root_build_dir), 5125f9996aaSopenharmony_ci ] 5135f9996aaSopenharmony_ci } 5145f9996aaSopenharmony_ci} 5155f9996aaSopenharmony_ci 5165f9996aaSopenharmony_cigroup("package_libs_symbols") { 5175f9996aaSopenharmony_ci deps = [] 5185f9996aaSopenharmony_ci foreach(_platform, target_platform_list) { 5195f9996aaSopenharmony_ci deps += [ ":package_libs_symbols_${_platform}" ] 5205f9996aaSopenharmony_ci if (is_asan || is_tsan) { 5215f9996aaSopenharmony_ci deps += [ ":restore_first_stage_symbols_${_platform}" ] 5225f9996aaSopenharmony_ci } 5235f9996aaSopenharmony_ci } 5245f9996aaSopenharmony_ci} 5255f9996aaSopenharmony_ci 5265f9996aaSopenharmony_ciforeach(_platform, target_platform_list) { 5275f9996aaSopenharmony_ci current_platform_dir = "${product_output_dir}/$_platform" 5285f9996aaSopenharmony_ci _system_install_info_file = 5295f9996aaSopenharmony_ci "${current_platform_dir}/system_install_parts.json" 5305f9996aaSopenharmony_ci 5315f9996aaSopenharmony_ci action_with_pydeps("package_testcase_mlf_${_platform}") { 5325f9996aaSopenharmony_ci testonly = true 5335f9996aaSopenharmony_ci deps = [ 5345f9996aaSopenharmony_ci ":${_platform}_parts_list", 5355f9996aaSopenharmony_ci ":build_all_test_pkg", 5365f9996aaSopenharmony_ci ] 5375f9996aaSopenharmony_ci script = "//build/ohos/packages/resources_collect.py" 5385f9996aaSopenharmony_ci inputs = [ _system_install_info_file ] 5395f9996aaSopenharmony_ci output_file = "$target_out_dir/$target_name.out" 5405f9996aaSopenharmony_ci outputs = [ output_file ] 5415f9996aaSopenharmony_ci args = [ 5425f9996aaSopenharmony_ci "--collect-type", 5435f9996aaSopenharmony_ci "module_list_files", 5445f9996aaSopenharmony_ci "--system-install-info-file", 5455f9996aaSopenharmony_ci rebase_path(_system_install_info_file, root_build_dir), 5465f9996aaSopenharmony_ci "--resources-dir-list", 5475f9996aaSopenharmony_ci "module_list_files", 5485f9996aaSopenharmony_ci "--package-output-base-dir", 5495f9996aaSopenharmony_ci rebase_path("$current_platform_dir", root_build_dir), 5505f9996aaSopenharmony_ci "--output-file", 5515f9996aaSopenharmony_ci rebase_path(output_file, root_build_dir), 5525f9996aaSopenharmony_ci ] 5535f9996aaSopenharmony_ci } 5545f9996aaSopenharmony_ci} 5555f9996aaSopenharmony_ci 5565f9996aaSopenharmony_cigroup("package_testcase_mlf") { 5575f9996aaSopenharmony_ci testonly = true 5585f9996aaSopenharmony_ci deps = [] 5595f9996aaSopenharmony_ci foreach(_platform, target_platform_list) { 5605f9996aaSopenharmony_ci deps += [ ":package_testcase_mlf_${_platform}" ] 5615f9996aaSopenharmony_ci } 5625f9996aaSopenharmony_ci} 5635f9996aaSopenharmony_ci 5645f9996aaSopenharmony_ciforeach(_platform, target_platform_list) { 5655f9996aaSopenharmony_ci current_platform_dir = "${product_output_dir}/$_platform" 5665f9996aaSopenharmony_ci 5675f9996aaSopenharmony_ci _system_install_info_file = 5685f9996aaSopenharmony_ci "${current_platform_dir}/system_install_parts.json" 5695f9996aaSopenharmony_ci 5705f9996aaSopenharmony_ci action_with_pydeps("package_testcase_${_platform}") { 5715f9996aaSopenharmony_ci testonly = true 5725f9996aaSopenharmony_ci deps = [ 5735f9996aaSopenharmony_ci ":${_platform}_parts_list", 5745f9996aaSopenharmony_ci ":build_all_test_pkg", 5755f9996aaSopenharmony_ci ] 5765f9996aaSopenharmony_ci script = "//build/ohos/packages/resources_collect.py" 5775f9996aaSopenharmony_ci inputs = [ _system_install_info_file ] 5785f9996aaSopenharmony_ci output_file = "$target_out_dir/$target_name.out" 5795f9996aaSopenharmony_ci outputs = [ output_file ] 5805f9996aaSopenharmony_ci 5815f9996aaSopenharmony_ci test_type_list = [ 5825f9996aaSopenharmony_ci "unittest", 5835f9996aaSopenharmony_ci "moduletest", 5845f9996aaSopenharmony_ci "systemtest", 5855f9996aaSopenharmony_ci "performance", 5865f9996aaSopenharmony_ci "security", 5875f9996aaSopenharmony_ci "reliability", 5885f9996aaSopenharmony_ci "distributedtest", 5895f9996aaSopenharmony_ci "fuzztest", 5905f9996aaSopenharmony_ci ] 5915f9996aaSopenharmony_ci 5925f9996aaSopenharmony_ci resources_dir_list = [] 5935f9996aaSopenharmony_ci foreach(test_type, test_type_list) { 5945f9996aaSopenharmony_ci resources_dir_list += [ "tests/" + test_type ] 5955f9996aaSopenharmony_ci } 5965f9996aaSopenharmony_ci 5975f9996aaSopenharmony_ci args = [ 5985f9996aaSopenharmony_ci "--collect-type", 5995f9996aaSopenharmony_ci "testcase", 6005f9996aaSopenharmony_ci "--system-install-info-file", 6015f9996aaSopenharmony_ci rebase_path(_system_install_info_file, root_build_dir), 6025f9996aaSopenharmony_ci "--package-output-base-dir", 6035f9996aaSopenharmony_ci rebase_path("$current_platform_dir/tests", root_build_dir), 6045f9996aaSopenharmony_ci "--output-file", 6055f9996aaSopenharmony_ci rebase_path(output_file, root_build_dir), 6065f9996aaSopenharmony_ci "--resources-dir-list", 6075f9996aaSopenharmony_ci ] 6085f9996aaSopenharmony_ci args += resources_dir_list 6095f9996aaSopenharmony_ci } 6105f9996aaSopenharmony_ci} 6115f9996aaSopenharmony_ci 6125f9996aaSopenharmony_ciforeach(_platform, target_platform_list) { 6135f9996aaSopenharmony_ci current_platform_dir = "${product_output_dir}/$_platform" 6145f9996aaSopenharmony_ci required_files = [] 6155f9996aaSopenharmony_ci required_files += [ 6165f9996aaSopenharmony_ci "${build_configs_path}/target_platforms_parts.json", 6175f9996aaSopenharmony_ci "${build_configs_path}/parts_info/parts_info.json", 6185f9996aaSopenharmony_ci "${build_configs_path}/infos_for_testfwk.json", 6195f9996aaSopenharmony_ci ] 6205f9996aaSopenharmony_ci action_with_pydeps("copy_testfwk_required_files_${_platform}") { 6215f9996aaSopenharmony_ci testonly = true 6225f9996aaSopenharmony_ci deps = [ ":package_testcase_${_platform}" ] 6235f9996aaSopenharmony_ci script = "//build/ohos/copy_files.py" 6245f9996aaSopenharmony_ci depfile = "$target_gen_dir/$target_name.d" 6255f9996aaSopenharmony_ci output_file = "$target_out_dir/$target_name.out" 6265f9996aaSopenharmony_ci outputs = [ output_file ] 6275f9996aaSopenharmony_ci args = [ 6285f9996aaSopenharmony_ci "--depfile", 6295f9996aaSopenharmony_ci rebase_path(depfile, root_build_dir), 6305f9996aaSopenharmony_ci "--copy-output-dir", 6315f9996aaSopenharmony_ci rebase_path("$current_platform_dir/tests", root_build_dir), 6325f9996aaSopenharmony_ci "--outfile", 6335f9996aaSopenharmony_ci rebase_path(output_file, root_build_dir), 6345f9996aaSopenharmony_ci "--source-files", 6355f9996aaSopenharmony_ci ] 6365f9996aaSopenharmony_ci args += rebase_path(required_files, root_build_dir) 6375f9996aaSopenharmony_ci } 6385f9996aaSopenharmony_ci} 6395f9996aaSopenharmony_ci 6405f9996aaSopenharmony_ciaction_with_pydeps("open_source_package") { 6415f9996aaSopenharmony_ci script = "//build/scripts/code_release.py" 6425f9996aaSopenharmony_ci depfile = "$target_gen_dir/$target_name.d" 6435f9996aaSopenharmony_ci if (osp_only_collect_file) { 6445f9996aaSopenharmony_ci _output = "${root_build_dir}/packages/code_opensource/release_opensource/CodeOpensource.stamp" 6455f9996aaSopenharmony_ci } else { 6465f9996aaSopenharmony_ci _output = "${root_build_dir}/packages/code_opensource/CodeOpensource.tar.gz" 6475f9996aaSopenharmony_ci } 6485f9996aaSopenharmony_ci outputs = [ _output ] 6495f9996aaSopenharmony_ci args = [ 6505f9996aaSopenharmony_ci "--depfile", 6515f9996aaSopenharmony_ci rebase_path(depfile, root_build_dir), 6525f9996aaSopenharmony_ci "--output", 6535f9996aaSopenharmony_ci rebase_path(_output, root_build_dir), 6545f9996aaSopenharmony_ci "--root-dir", 6555f9996aaSopenharmony_ci rebase_path("//", root_build_dir), 6565f9996aaSopenharmony_ci "--scan-dirs", 6575f9996aaSopenharmony_ci osp_scan_dirs, 6585f9996aaSopenharmony_ci "--scan-licenses", 6595f9996aaSopenharmony_ci osp_scan_licenses, 6605f9996aaSopenharmony_ci ] 6615f9996aaSopenharmony_ci 6625f9996aaSopenharmony_ci # extend args 6635f9996aaSopenharmony_ci if (osp_only_collect_file) { 6645f9996aaSopenharmony_ci args += [ "--only-collect-file" ] 6655f9996aaSopenharmony_ci } 6665f9996aaSopenharmony_ci} 6675f9996aaSopenharmony_ci 6685f9996aaSopenharmony_cigroup("package_testcase") { 6695f9996aaSopenharmony_ci testonly = true 6705f9996aaSopenharmony_ci deps = [] 6715f9996aaSopenharmony_ci foreach(_platform, target_platform_list) { 6725f9996aaSopenharmony_ci deps += [ 6735f9996aaSopenharmony_ci ":copy_testfwk_required_files_${_platform}", 6745f9996aaSopenharmony_ci ":package_testcase_${_platform}", 6755f9996aaSopenharmony_ci ] 6765f9996aaSopenharmony_ci } 6775f9996aaSopenharmony_ci} 6785f9996aaSopenharmony_ci 6795f9996aaSopenharmony_cigroup("test_example_template") { 6805f9996aaSopenharmony_ci testonly = true 6815f9996aaSopenharmony_ci if (device_name == "rk3568") { 6825f9996aaSopenharmony_ci deps = [ 6835f9996aaSopenharmony_ci "//build/test/test_example_template/test_ohos_executable:test_ohos_executable", 6845f9996aaSopenharmony_ci "//build/test/test_example_template/test_ohos_sa_profile:test_ohos_sa_profile", 6855f9996aaSopenharmony_ci "//build/test/test_example_template/test_ohos_shared_library:test_ohos_shared_library", 6865f9996aaSopenharmony_ci "//build/test/test_example_template/test_ohos_shared_library_module_install_dir:test_ohos_shared_library_module_install_dir", 6875f9996aaSopenharmony_ci "//build/test/test_example_template/test_ohos_shared_library_output_name:test_ohos_shared_library_output_name", 6885f9996aaSopenharmony_ci "//build/test/test_example_template/test_ohos_shared_library_relative_install_dir:test_ohos_shared_library_relative_install_dir", 6895f9996aaSopenharmony_ci "//build/test/test_example_template/test_ohos_shared_library_testonly:test_ohos_shared_library_testonly", 6905f9996aaSopenharmony_ci "//build/test/test_example_template/test_ohos_source_set:test_ohos_source_set", 6915f9996aaSopenharmony_ci "//build/test/test_example_template/test_ohos_static_library:test_ohos_static_library", 6925f9996aaSopenharmony_ci ] 6935f9996aaSopenharmony_ci } 6945f9996aaSopenharmony_ci} 6955f9996aaSopenharmony_ci 6965f9996aaSopenharmony_cigroup("test_rust_template") { 6975f9996aaSopenharmony_ci testonly = true 6985f9996aaSopenharmony_ci if (device_name == "rk3568") { 6995f9996aaSopenharmony_ci deps = [ 7005f9996aaSopenharmony_ci "//build/rust/tests/test_bin_cargo_crate:test_bin_cargo_crate", 7015f9996aaSopenharmony_ci "//build/rust/tests/test_bin_crate:test_bin_crate", 7025f9996aaSopenharmony_ci "//build/rust/tests/test_bindgen_test/test_for_extern_c:test_extern_c", 7035f9996aaSopenharmony_ci "//build/rust/tests/test_bindgen_test/test_for_h:bindgen_test_for_h", 7045f9996aaSopenharmony_ci "//build/rust/tests/test_bindgen_test/test_for_hello_world:bindgen_test", 7055f9996aaSopenharmony_ci "//build/rust/tests/test_bindgen_test/test_for_hpp:bindgen_test_hpp", 7065f9996aaSopenharmony_ci "//build/rust/tests/test_cdylib_crate:test_cdylib_crate", 7075f9996aaSopenharmony_ci "//build/rust/tests/test_cxx:test_cxx_exe", 7085f9996aaSopenharmony_ci "//build/rust/tests/test_cxx_rust:test_cxx_rust", 7095f9996aaSopenharmony_ci "//build/rust/tests/test_dylib_crate:test_dylib_crate", 7105f9996aaSopenharmony_ci "//build/rust/tests/test_idl:test_idl", 7115f9996aaSopenharmony_ci "//build/rust/tests/test_proc_macro_cargo_crate:test_proc_macro_cargo_crate", 7125f9996aaSopenharmony_ci "//build/rust/tests/test_proc_macro_crate/test_attribute_macro:test_attribute_macro", 7135f9996aaSopenharmony_ci "//build/rust/tests/test_proc_macro_crate/test_derive_helper_macro:test_derive_helper_macro", 7145f9996aaSopenharmony_ci "//build/rust/tests/test_proc_macro_crate/test_function_macro:test_function_macro", 7155f9996aaSopenharmony_ci "//build/rust/tests/test_rlib_cargo_crate:test_rlib_crate_associated_bin", 7165f9996aaSopenharmony_ci "//build/rust/tests/test_rlib_crate:test_rlib_crate", 7175f9996aaSopenharmony_ci "//build/rust/tests/test_rust_st:test_rust_st", 7185f9996aaSopenharmony_ci "//build/rust/tests/test_rust_ut:test_rust_ut", 7195f9996aaSopenharmony_ci "//build/rust/tests/test_static_link:test_static_link", 7205f9996aaSopenharmony_ci "//build/rust/tests/test_staticlib_crate:test_staticlib_crate", 7215f9996aaSopenharmony_ci ] 7225f9996aaSopenharmony_ci } 7235f9996aaSopenharmony_ci} 7245f9996aaSopenharmony_ci 7255f9996aaSopenharmony_cigroup("build_all_test_pkg") { 7265f9996aaSopenharmony_ci testonly = true 7275f9996aaSopenharmony_ci if (!is_llvm_build) { 7285f9996aaSopenharmony_ci deps = [ 7295f9996aaSopenharmony_ci ":test_example_template", 7305f9996aaSopenharmony_ci ":test_rust_template", 7315f9996aaSopenharmony_ci "$root_build_dir/build_configs:parts_test", 7325f9996aaSopenharmony_ci "//test/testfwk/developer_test:make_temp_test", 7335f9996aaSopenharmony_ci ] 7345f9996aaSopenharmony_ci } 7355f9996aaSopenharmony_ci} 736