#!/bin/bash
set -euo pipefail
REPOSITORY_NAME="amct"
if [ "${GIT_TARGET_BRANCH}" == "master" ]; then
sudo update-alternatives --set gcc /usr/bin/gcc-15
else
sudo update-alternatives --set gcc /usr/bin/gcc-14
fi
if gcc --version | head -n1 | grep -q "15\."; then
rm -rf /home/jenkins/opensource/lib_cache
if [ -d /home/jenkins/opensource/gcc15 ]; then
rm -rf /home/jenkins/opensource/gcc15/lib_cache/abseil-cpp
rm -rf /home/jenkins/opensource/gcc15/lib_cache/device/abseil-cpp
ln -s /home/jenkins/opensource/gcc15/lib_cache/ /home/jenkins/opensource/lib_cache
elif [ -d /home/jenkins/opensource/gcc15x86 ]; then
rm -rf /home/jenkins/opensource/gcc15x86/lib_cache/abseil-cpp
rm -rf /home/jenkins/opensource/gcc15x86/lib_cache/device/abseil-cpp
ln -s /home/jenkins/opensource/gcc15x86/lib_cache/ /home/jenkins/opensource/lib_cache
fi
elif gcc --version | head -n1 | grep -q "14\."; then
gcc --version
else
gcc --version
rm -rf /home/jenkins/opensource/lib_cache
ln -s /home/jenkins/opensource/ubuntu20/lib_cache /home/jenkins/opensource/lib_cache
fi
export PATH=/opt/buildtools/python-3.10.2/bin:$PATH
gcc --version
if [ -z "${ASCEND_3RD_LIB_PATH:-}" ]; then
export ASCEND_3RD_LIB_PATH=/home/jenkins/opensource
fi
if [ -f /home/jenkins/Ascend/cann/bin/setenv.bash ]; then
source /home/jenkins/Ascend/cann/bin/setenv.bash
fi
LOG_HEAD()
{
echo "========================================"
echo " $1"
echo "========================================"
}
LOG_DO()
{
echo "[LOG_DO] $*"
"$@"
}
DP_ASSERT_EQUAL()
{
local actual="$1"
local expected="$2"
local msg="$3"
if [ "${actual}" != "${expected}" ]; then
echo "::error::ASSERT FAILED: ${msg} (expected=${expected}, actual=${actual})"
exit 1
fi
}
LOG_HEAD "Start run c++ testcase"
cd ${WORKSPACE}/ || exit 1
ut_status=0
if [ "${GIT_TARGET_BRANCH:-}" = "feature/community-tasks" ];then
LOG_HEAD "not need build"
mkdir -p build_out
touch ${WORKSPACE}/build_out/cann-amct.tar.gz
exit 0
else
LOG_DO bash build.sh -u --cann_3rd_lib_path=${ASCEND_3RD_LIB_PATH} || ut_status=$?
fi
DP_ASSERT_EQUAL "${ut_status}" "0" "Run UT TESTCASE"
echo "ut_process=ut_cov" >> "${ATOMGIT_OUTPUT}"