1# Copyright (c) 2023 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("../../../test_template.gni") 16 17ohos_executable("unittest_ldso_ns_config") { 18 subsystem_name = "musl" 19 part_name = "libc-test" 20 21 sources = [ "unit_test_ldso_ns_config.c" ] 22 23 include_dirs = [ 24 "${musl_src_base}/ldso", 25 "//${test_dir}/src/common", 26 "//${test_dir}/src/functionalext/common", 27 "${musl_src_base}/src/include", 28 "${musl_src_base}/include", 29 "${musl_src_base}/src/internal", 30 ] 31 32 configs = [ "//third_party/musl/libc-test/src/common:config_unittest" ] 33 34 deps = [ "//third_party/musl:create_porting_src" ] 35 36 if (!musl_unit_test_flag) { 37 libs = [ "${musl_lib_dir}/libc.a" ] 38 libs += [ "${musl_lib_dir}/libc_ldso.a" ] 39 } else { 40 defines = [ "UNIT_TEST_STATIC" ] 41 } 42} 43 44ohos_executable("unittest_ldso_namesapce") { 45 subsystem_name = "musl" 46 part_name = "libc-test" 47 48 sources = [ 49 "${musl_src_base}/ldso/namespace.c", 50 "unit_test_ldso_namespace.c", 51 "unit_test_mock_molloc.c", 52 "unit_test_mock_strops.c", 53 ] 54 55 include_dirs = [ 56 "${musl_src_base}/ldso", 57 "//${test_dir}/src/common", 58 "//${test_dir}/src/functionalext/common", 59 "${musl_src_base}/src/include", 60 "${musl_src_base}/include", 61 "${musl_src_base}/src/internal", 62 ] 63 64 configs = [ "//third_party/musl/libc-test/src/common:config_unittest" ] 65 66 deps = [ "//third_party/musl:create_porting_src" ] 67 68 if (musl_unit_test_flag) { 69 defines = [ "UNIT_TEST_STATIC" ] 70 } 71} 72 73ohos_executable("unittest_ldso_ld_log") { 74 subsystem_name = "thirdparty" 75 part_name = "musl" 76 sources = [ 77 "${musl_src_base}/ldso/ld_log.c", 78 "unit_test_ldso_ld_log.c", 79 "unit_test_mock_hilog_adapter.c", 80 ] 81 82 include_dirs = [ 83 "${musl_src_base}/ldso", 84 "//${test_dir}/src/common", 85 "//${test_dir}/src/functionalext/common", 86 "${musl_src_base}/src/include", 87 "${musl_src_base}/include", 88 "${musl_src_base}/src/internal", 89 "//${test_dir}/src/functionalext/unittest", 90 ] 91 92 configs = [ "//third_party/musl/libc-test/src/common:config_unittest" ] 93 94 deps = [ "//third_party/musl:create_porting_src" ] 95 external_deps = [ "init:parameterbase" ] 96 defines = [ "OHOS_ENABLE_PARAMETER" ] 97 ohos_test = true 98 test_output_dir = "${root_out_dir}/musl/libc-test" 99} 100 101ohos_executable("unittest_ldso_dynlink") { 102 subsystem_name = "thirdparty" 103 part_name = "musl" 104 sources = [ 105 "unit_test_ldso_dynlink.c", 106 "unit_test_mock_dynlink.c", 107 ] 108 109 include_dirs = [ 110 "${musl_src_base}/ldso", 111 "//${test_dir}/src/common", 112 "//${test_dir}/src/functionalext/common", 113 "${musl_src_base}/src/include", 114 "${musl_src_base}/include", 115 "${musl_src_base}/src/internal", 116 "${musl_src_base}/arch/${musl_arch}", 117 ] 118 119 configs = [ "//third_party/musl/libc-test/src/common:config_unittest" ] 120 121 deps = [ "//third_party/musl:create_porting_src" ] 122 external_deps = [ "init:parameterbase" ] 123 124 if (!musl_unit_test_flag) { 125 libs = [ "${musl_lib_dir}/libc.a" ] 126 libs += [ "${musl_lib_dir}/libc_ldso.a" ] 127 } else { 128 defines = [ 129 "UNIT_TEST_STATIC", 130 "OHOS_ENABLE_PARAMETER", 131 ] 132 } 133 ohos_test = true 134 test_output_dir = "${root_out_dir}/musl/libc-test" 135} 136 137ohos_executable("unittest_hilog_adapter") { 138 subsystem_name = "thirdparty" 139 part_name = "musl" 140 141 sources = [ "unit_test_hilog_adapter.c" ] 142 143 include_dirs = [ 144 "//${test_dir}/src/functionalext/common", 145 "//${test_dir}/src/common", 146 "${musl_src_base}/src/internal", 147 ] 148 149 configs = [ "//third_party/musl/libc-test/src/common:config_unittest" ] 150 151 deps = [ "//third_party/musl:create_porting_src" ] 152 153 external_deps = [ "bounds_checking_function:libsec_shared" ] 154 155 cflags = [ 156 "-Wno-int-to-void-pointer-cast", 157 "-Wno-void-pointer-to-int-cast", 158 ] 159 160 libs = [ "${musl_lib_dir}/libc.a" ] 161 162 ohos_test = true 163 test_output_dir = "${root_out_dir}/musl/libc-test" 164} 165 166ohos_executable("unittest_ldso_strops") { 167 subsystem_name = "musl" 168 part_name = "libc-test" 169 170 sources = [ 171 "${musl_src_base}/ldso/strops.c", 172 "unit_test_ldso_strops.c", 173 "unit_test_mock_molloc.c", 174 ] 175 176 include_dirs = [ 177 "${musl_src_base}/ldso", 178 "//${test_dir}/src/common", 179 "//${test_dir}/src/functionalext/common", 180 "${musl_src_base}/src/include", 181 "${musl_src_base}/include", 182 "${musl_src_base}/src/internal", 183 ] 184 185 configs = [ "//third_party/musl/libc-test/src/common:config_unittest" ] 186 187 deps = [ "//third_party/musl:create_porting_src" ] 188} 189 190ohos_executable("unittest_hilog_vsnprint") { 191 subsystem_name = "musl" 192 part_name = "libc-test" 193 194 sources = [ "unit_test_hilog_vsnprint_f_p.c" ] 195 196 include_dirs = [ 197 "//${test_dir}/src/functionalext/common", 198 "//${test_dir}/src/common", 199 "${musl_src_base}/src/hilog", 200 ] 201 202 configs = [ "//third_party/musl/libc-test/src/common:config_unittest" ] 203 204 deps = [ "//third_party/musl:create_porting_src" ] 205 206 libs = [ "${musl_lib_dir}/libc.a" ] 207} 208 209ohos_executable("unittest_fatal_message") { 210 subsystem_name = "musl" 211 part_name = "libc-test" 212 213 sources = [ 214 "${musl_src_base}/src/info/fatal_message.c", 215 "unit_test_fatal_message.c", 216 "unit_test_mock_fatal_message.c", 217 ] 218 219 include_dirs = [ 220 "${musl_src_base}/src/info", 221 "//${test_dir}/src/common", 222 "//${test_dir}/src/functionalext/common", 223 "${musl_src_base}/src/include", 224 "${musl_src_base}/include", 225 "${musl_src_base}/src/internal", 226 ] 227 228 configs = [ "//third_party/musl/libc-test/src/common:config_unittest" ] 229 230 deps = [ "//third_party/musl:create_porting_src" ] 231} 232 233group("functionalext_unittest_test") { 234 testonly = true 235 deps = [ 236 ":unittest_fatal_message", 237 ":unittest_fatal_message_assert_fail", 238 ":unittest_fatal_message_assert_fail_dialog", 239 ":unittest_hilog_adapter", 240 ":unittest_hilog_vsnprint", 241 ":unittest_ldso_dynlink", 242 ":unittest_ldso_ld_log", 243 ":unittest_ldso_namesapce", 244 ":unittest_ldso_ns_config", 245 ":unittest_ldso_strops", 246 ] 247} 248 249ohos_executable("unittest_fatal_message_assert_fail") { 250 subsystem_name = "musl" 251 part_name = "libc-test" 252 sources = [ 253 "${musl_src_base}/src/info/fatal_message.c", 254 "unit_test_assert_fail.c", 255 ] 256 include_dirs = [ "${musl_src_base}/include" ] 257 configs = [ "//third_party/musl/libc-test/src/common:config_unittest" ] 258 259 deps = [ "//third_party/musl:create_porting_src" ] 260} 261 262ohos_executable("unittest_fatal_message_assert_fail_dialog") { 263 subsystem_name = "musl" 264 part_name = "libc-test" 265 defines = [ "PC_MUSL_ASSERT" ] 266 sources = [ 267 "${musl_src_base}/src/info/fatal_message.c", 268 "unit_test_assert_fail_dialog.c", 269 ] 270 include_dirs = [ "${musl_src_base}/include" ] 271 configs = [ "//third_party/musl/libc-test/src/common:config_unittest" ] 272 273 deps = [ "//third_party/musl:create_porting_src" ] 274} 275