1# Copyright (c) 2023-2023 Huawei Device Co., Ltd. All rights reserved. 2# 3# Redistribution and use in source and binary forms, with or without modification, 4# are permitted provided that the following conditions are met: 5# 6# 1. Redistributions of source code must retain the above copyright notice, this list of 7# conditions and the following disclaimer. 8# 9# 2. Redistributions in binary form must reproduce the above copyright notice, this list 10# of conditions and the following disclaimer in the documentation and/or other materials 11# provided with the distribution. 12# 13# 3. Neither the name of the copyright holder nor the names of its contributors may be used 14# to endorse or promote products derived from this software without specific prior written 15# permission. 16# 17# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 18# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, 19# THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 20# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR 21# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 22# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 23# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; 24# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 25# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR 26# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF 27# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28 29import("./config.gni") 30 31config("container_config") { 32 cflags = [] 33 if (defined(LOSCFG_USER_TEST_PID_CONTAINER)) { 34 cflags += [ "-DLOSCFG_USER_TEST_PID_CONTAINER" ] 35 } 36 if (defined(LOSCFG_USER_TEST_UTS_CONTAINER)) { 37 cflags += [ "-DLOSCFG_USER_TEST_UTS_CONTAINER" ] 38 } 39 if (defined(LOSCFG_USER_TEST_MNT_CONTAINER)) { 40 cflags += [ "-DLOSCFG_USER_TEST_MNT_CONTAINER" ] 41 } 42 if (defined(LOSCFG_USER_TEST_IPC_CONTAINER)) { 43 cflags += [ "-DLOSCFG_USER_TEST_IPC_CONTAINER" ] 44 } 45 if (defined(LOSCFG_USER_TEST_TIME_CONTAINER)) { 46 cflags += [ "-DLOSCFG_USER_TEST_TIME_CONTAINER" ] 47 } 48 if (defined(LOSCFG_USER_TEST_USER_CONTAINER)) { 49 cflags += [ "-DLOSCFG_USER_TEST_USER_CONTAINER" ] 50 } 51 if (defined(LOSCFG_USER_TEST_NET_CONTAINER)) { 52 cflags += [ "-DLOSCFG_USER_TEST_NET_CONTAINER" ] 53 } 54 cflags_cc = cflags 55} 56 57if (LOSCFG_USER_TEST_LEVEL >= TEST_LEVEL_LOW) { 58 unittest("liteos_a_container_unittest_door") { 59 output_extension = "bin" 60 output_dir = "$root_out_dir/test/unittest/kernel" 61 include_dirs = common_include_dirs 62 sources = sources_entry 63 sources += sources_smoke 64 sources_full = [] 65 sources += sources_full 66 configs = [ 67 "..:public_config_for_door", 68 ":container_config", 69 ] 70 deps = [ "$THIRDPARTY_BOUNDS_CHECKING_FUNCTION_DIR:libsec_shared" ] 71 } 72} 73 74if (LOSCFG_USER_TEST_LEVEL >= TEST_LEVEL_MIDDLE) { 75 unittest("liteos_a_container_unittest") { 76 output_extension = "bin" 77 output_dir = "$root_out_dir/test/unittest/kernel" 78 include_dirs = common_include_dirs 79 sources = sources_entry 80 sources += sources_smoke 81 sources += sources_full 82 configs = [ 83 "..:public_config_for_all", 84 ":container_config", 85 ] 86 deps = [ "$THIRDPARTY_BOUNDS_CHECKING_FUNCTION_DIR:libsec_shared" ] 87 } 88} 89