wechat-web-devtools-linux/tools/build-release.sh
2022-02-23 22:09:39 +08:00

76 lines
1.9 KiB
Bash
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/bin/bash
# 脚本执行前提已完成支持wine的基本构建
set -e
root_dir=$(cd `dirname $0`/.. && pwd -P)
tmp_dir="$root_dir/tmp"
build_dir="$tmp_dir/build"
version=$1
ARCH=$2
success() {
echo -e "\033[42;37m 成功 \033[0m $1"
}
notice() {
echo -e "\033[36m $1 \033[0m "
}
fail() {
echo -e "\033[41;37m 失败 \033[0m $1"
}
if [[ $version == '' ]];then
fail "请指定版本"
exit 1
elif [[ $ARCH == '' ]];then
fail "请指定架构"
exit 1
fi
export ARCH=$ARCH
rm -rf "$build_dir"
mkdir -p "$build_dir"
notice "下载AppImage构建工具"
if [ $ACTION_MODE!='true' ]; then
appimagetool_host="github.com"
else
appimagetool_host="download.fastgit.org"
fi
wget "https://$appimagetool_host/AppImage/AppImageKit/releases/download/continuous/appimagetool-x86_64.AppImage" \
-O "$tmp_dir/appimagetool-x86_64.AppImage"
chmod a+x "$tmp_dir/appimagetool-x86_64.AppImage"
for type in wine no_wine; do
notice "当前构建类型: $type";
FULL_NAME="WeChat_Dev_Tools_${version}_${ARCH}_$type"
if [[ $type == 'no_wine' ]];then
notice "no wine handle"
export NO_WINE=true
bash "$root_dir/tools/fix-core"
bash "$root_dir/tools/fix-other"
fi
mkdir -p "$build_dir/$FULL_NAME"
# 构建压缩包
notice "COPY bin"
\cp -rf "$root_dir/bin" "$build_dir/$FULL_NAME/bin"
notice "COPY nwjs"
\cp -drf "$root_dir/nwjs" "$build_dir/$FULL_NAME/nwjs"
notice "COPY node"
rm -rf "$build_dir/$FULL_NAME/nwjs/node"
\cp -rf "$root_dir/node/bin/node" "$build_dir/$FULL_NAME/nwjs/node"
notice "COPY package.nw"
\cp -rf "$root_dir/package.nw" "$build_dir/$FULL_NAME/package.nw"
notice "MAKE tar.gz"
cd "$build_dir" && tar -zcf "$FULL_NAME.tar.gz" "$FULL_NAME"
# 构建AppImage
notice "BUILD AppImage"
bash "$root_dir/tools/appimage.sh"
"$tmp_dir/appimagetool-x86_64.AppImage" "$root_dir/tmp/AppDir" "$build_dir/$FULL_NAME.AppImage"
# 删除构建资源
notice "DELETE Build Source"
rm -rf "$build_dir/$FULL_NAME"
done