1fb726d48Sopenharmony_ci#!/bin/bash
2fb726d48Sopenharmony_ci# Copyright (c) Huawei Technologies Co., Ltd. 2023. All rights reserved.
3fb726d48Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
4fb726d48Sopenharmony_ci# you may not use this file except in compliance with the License.
5fb726d48Sopenharmony_ci# You may obtain a copy of the License at
6fb726d48Sopenharmony_ci#
7fb726d48Sopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
8fb726d48Sopenharmony_ci#
9fb726d48Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software
10fb726d48Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
11fb726d48Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12fb726d48Sopenharmony_ci# See the License for the specific language governing permissions and
13fb726d48Sopenharmony_ci# limitations under the License.
14fb726d48Sopenharmony_ciset -e
15fb726d48Sopenharmony_ci. build/build_base.sh
16fb726d48Sopenharmony_ci
17fb726d48Sopenharmony_cifunction check_plugin_true() {
18fb726d48Sopenharmony_ci    if [ "$1" == "false" ];then
19fb726d48Sopenharmony_ci        echo "Current plugins haven't '$2'!Please check!"
20fb726d48Sopenharmony_ci        exit
21fb726d48Sopenharmony_ci    fi
22fb726d48Sopenharmony_ci}
23fb726d48Sopenharmony_ci
24fb726d48Sopenharmony_cifunction enable_plugin() {
25fb726d48Sopenharmony_ci    check_params $1
26fb726d48Sopenharmony_ci    set_enable_plugin_array "false"
27fb726d48Sopenharmony_ci    read -ra plugins <<< "$1"
28fb726d48Sopenharmony_ci    local flag='false'
29fb726d48Sopenharmony_ci    for plugin in "${plugins[@]}"; do
30fb726d48Sopenharmony_ci        for enable_plugin in "${enable_plugin_array[@]}"; do
31fb726d48Sopenharmony_ci            if [[ "$enable_plugin" == *"$plugin"* ]]; then
32fb726d48Sopenharmony_ci                eval "$enable_plugin=\"true\""
33fb726d48Sopenharmony_ci                echo "$enable_plugin=${!enable_plugin}"
34fb726d48Sopenharmony_ci                flag="true"
35fb726d48Sopenharmony_ci            fi
36fb726d48Sopenharmony_ci        done
37fb726d48Sopenharmony_ci        check_plugin_true $flag $plugin
38fb726d48Sopenharmony_ci        flag="false"
39fb726d48Sopenharmony_ci    done
40fb726d48Sopenharmony_ci}
41fb726d48Sopenharmony_ci
42fb726d48Sopenharmony_cifunction enable_extend_plugin() {
43fb726d48Sopenharmony_ci    check_params "$1"
44fb726d48Sopenharmony_ci    set_enable_extend_plugin_array "false"
45fb726d48Sopenharmony_ci    read -ra plugins <<< "$1"
46fb726d48Sopenharmony_ci    local flag_extend='false'
47fb726d48Sopenharmony_ci    for plugin in "${plugins[@]}"; do
48fb726d48Sopenharmony_ci        for enable_extend_plugin in "${enable_extend_plugin_array[@]}"; do
49fb726d48Sopenharmony_ci            if [[ "$enable_extend_plugin" == *"$plugin"* ]]; then
50fb726d48Sopenharmony_ci                eval "$enable_extend_plugin=\"true\""
51fb726d48Sopenharmony_ci                echo "$enable_extend_plugin=${!enable_extend_plugin}"
52fb726d48Sopenharmony_ci                flag_extend="true"
53fb726d48Sopenharmony_ci            fi
54fb726d48Sopenharmony_ci        done
55fb726d48Sopenharmony_ci        check_plugin_true $flag_extend $plugin
56fb726d48Sopenharmony_ci        flag_extend="false"
57fb726d48Sopenharmony_ci    done
58fb726d48Sopenharmony_ci}
59fb726d48Sopenharmony_ci
60