2022-04-12 23:08:52 +08:00

71 lines
2.3 KiB
Bash
Executable File

#!/bin/bash
set -e
notice() {
echo -e "\033[36m $1 \033[0m "
}
fail() {
echo -e "\033[41;37m 失败 \033[0m $1"
}
root_dir=$(cd `dirname $0`/.. && pwd -P)
tmp_dir="$root_dir/tmp"
build_dir="$root_dir/tmp/AUR"
mkdir -p "$tmp_dir"
# 获取开发工具版本号与MD5
VERSION_DATA=$( cat "$root_dir/conf/devtools_v" )
VERSION_DATA=(${VERSION_DATA//,/ })
TARGET_VERSION=${VERSION_DATA[0]}
TARGET_VERSION_MD5=${VERSION_DATA[1]}
echo "BUILD_VERSION: $BUILD_VERSION"
if [ -n "$1" ];then
export BUILD_VERSION=$1
fi
if [ -z "$BUILD_VERSION" ];then
export BUILD_VERSION='continuous'
fi
# 及时构建修订版本号为0
if [ "$BUILD_VERSION" == "continuous" ];then
pkgrel='0'
else
# 提取BUILD_VERSION中的修订版本号
pkgrel=$( echo $BUILD_VERSION | sed -r 's/v[0-9]+\.[0-9]+\.[0-9]+-(.*)/\1/' )
fi
# 非及时构建
if [ "$BUILD_VERSION" != "continuous" ];then
notice "检查版本号 -> $BUILD_VERSION"
VERSION_DATA=$( cat "$root_dir/conf/devtools_v" )
VERSION_DATA=(${VERSION_DATA//,/ })
DEVTOOLS_VERSION=${VERSION_DATA[0]}
INPUT_VERSION=$( echo $BUILD_VERSION | sed 's/v//' | sed 's/-.*//' )
if [[ "$INPUT_VERSION" != "$DEVTOOLS_VERSION" ]];then
fail "传入版本号与实际版本号不一致!"
exit 1
fi
fi
# 处理编译器
rm -rf "$root_dir/compiler/test" # 删除测试文件夹
cd "$root_dir"
tar -zcf tmp/compiler.tar.gz compiler # 打包
COMPILER_MD5=$( md5sum tmp/compiler.tar.gz | cut -d ' ' -f1 )
rm -rf $build_dir
mkdir -p $build_dir
cp "$root_dir/bin/wechat-devtools" "$build_dir"
cp "$root_dir/bin/wechat-devtools-cli" "$build_dir"
cp "$root_dir/tools"/*.sh "$build_dir"
cp "$root_dir/tools"/*.js "$build_dir"
cp "$root_dir/res/aur"/* "$build_dir"
cp "$tmp_dir/compiler.tar.gz" "$build_dir" # 复制编译器
# sed -i 's/download.fastgit.org/github.com/' "$build_dir/PKGBUILD" # 修改下载服务器
sed -i "s/pkgrel=[0-9]\+/pkgrel=${pkgrel}/" "$build_dir/PKGBUILD" # 修改版本号
sed -i "s/[0-9a-z]\+ # compiler/${COMPILER_MD5} # compiler/" "$build_dir/PKGBUILD" # 修改编译器MD5
sed -i "s/_wechat_devtools_ver=\"[0-9]\+\.[0-9]\+\.[0-9]\+\"/_wechat_devtools_ver=\"${TARGET_VERSION}\"/" "$build_dir/PKGBUILD"
sed -i "s/_wechat_devtools_md5=\".*\+\"/_wechat_devtools_md5=\"${TARGET_VERSION_MD5}\"/" "$build_dir/PKGBUILD"
cd $build_dir
# makepkg