#!/bin/bash
set -e
BASE_HOME=$(dirname $(dirname $(dirname $(dirname $(cd $(dirname $0); pwd)))))
PRODUCT=""
XTS=""
WIFIIOT_OUTFILE=OHOS_Image.bin
DIST_DIR=$BASE_HOME/dist
WIFIIOT_ACTS_MODULES="${WIFIIOT_ACTS_MODULES},//test/xts/acts/communication_lite/lwip_hal:ActsLwipTest"
WIFIIOT_ACTS_MODULES="${WIFIIOT_ACTS_MODULES},//test/xts/acts/commonlibrary_lite/file_hal:ActsUtilsFileTest"
WIFIIOT_ACTS_MODULES="${WIFIIOT_ACTS_MODULES},//test/xts/acts/startup_lite/syspara_hal:ActsParameterTest"
WIFIIOT_ACTS_MODULES="${WIFIIOT_ACTS_MODULES},//test/xts/acts/iothardware_lite/peripheral_hal:ActsWifiIotTest"
WIFIIOT_ACTS_MODULES="${WIFIIOT_ACTS_MODULES},//test/xts/acts/security_lite/huks/liteos_m_adapter:ActsHuksHalFunctionTest"
WIFIIOT_ACTS_MODULES="${WIFIIOT_ACTS_MODULES},//test/xts/acts/hiviewdfx_lite/hilog_hal:ActsDfxFuncTest"
WIFIIOT_ACTS_MODULES="${WIFIIOT_ACTS_MODULES},//test/xts/acts/hiviewdfx_lite/hievent_hal:ActsHieventLiteTest"
WIFIIOT_ACTS_MODULES="${WIFIIOT_ACTS_MODULES},//test/xts/acts/distributed_schedule_lite/system_ability_manager_hal:ActsSamgrTest"
WIFIIOT_ACTS_MODULES="${WIFIIOT_ACTS_MODULES},//test/xts/acts/update_lite/dupdate_hal:ActsUpdaterFuncTest"
WIFIIOT_ACTS_MODULES="${WIFIIOT_ACTS_MODULES},//test/xts/acts/startup_lite/bootstrap_hal:ActsBootstrapTest"
WIFIIOT_ACTS_MODULES="${WIFIIOT_ACTS_MODULES},//test/xts/acts/xts_lite/device_attest_lite/device_attestStart_hal:ActsDeviceAttestTest"
source $BASE_HOME/test/xts/tools/lite/buildFun.sh
error_report() {
echo "Error on line $1"
}
trap 'error_report $LINENO' ERR
parse_cmdline()
{
PLATFORM=""
TARGET=""
TARGET_PARAM=""
while [ -n "$1" ]
do
var="$1"
OPTIONS=$(echo ${var%%=*})
PARAM=$(echo ${var#*=})
case "$OPTIONS" in
product) PRODUCT="$PARAM"
;;
platform) PLATFORM="$PARAM"
;;
target) TARGET="$PARAM"
;;
xts) XTS="$PARAM"
;;
*) usage
break;;
esac
shift
done
if [ "$PRODUCT" = "" ] || [ "$XTS" = "" ];then
usage
fi
if [ "$PRODUCT" = "wifiiot" ];then
if [ "$TARGET" = "" ];then
if [ "$XTS" = "acts" ];then
TARGET=$WIFIIOT_ACTS_MODULES
elif [ "$XTS" = "hits" ];then
TARGET=$WIFIIOT_HITS_MODULES
fi
fi
elif [ "$PLATFORM" = "" ];then
echo "platform is required, for product $PRODUCT"
usage
fi
if [ "$TARGET" != "" ];then
TARGET_PARAM=" --target $TARGET"
fi
}
build()
{
out_dir="${BASE_HOME}/out/hispark_pegasus/wifiiot_hispark_pegasus"
suite_root_dir="${out_dir}/suites"
cd $BASE_HOME
if [[ "$PRODUCT" == "wifiiot" && "$PLATFORM" == "" ]]; then
if [ "$XTS" = "all" ];then
build_wifiiot "acts" $WIFIIOT_ACTS_MODULES
build_wifiiot "hits" $WIFIIOT_HITS_MODULES
cp -rf ${DIST_DIR}/acts ${suite_root_dir}
cd $suite_root_dir
zip -rv acts.zip acts
if [ -n "${DIST_DIR}" ]; then
rm -rf $DIST_DIR
fi
else
build_wifiiot $XTS $TARGET
if [ -n "${DIST_DIR}" ]; then
rm -rf $DIST_DIR
fi
fi
else
build_common
fi
}
echo $BASE_HOME
check_python
parse_cmdline $@
build