mirror of
https://github.com/msojocs/wechat-web-devtools-linux.git
synced 2025-07-07 00:02:14 +08:00
fix: 优化构建脚本
This commit is contained in:
parent
a37cb16a41
commit
7db1b17e35
@ -3,6 +3,11 @@
|
||||
# 1 ---- NW版本
|
||||
|
||||
set -e
|
||||
|
||||
notice() {
|
||||
echo -e "\033[36m $1 \033[0m "
|
||||
}
|
||||
|
||||
root_dir=$(cd `dirname $0`/.. && pwd -P)
|
||||
package_dir="$root_dir/package.nw"
|
||||
export PATH="$root_dir/node/bin:$PATH"
|
||||
@ -26,17 +31,6 @@ hash nw-gyp 2>/dev/null || {
|
||||
exit 1
|
||||
}
|
||||
|
||||
# 代理处理
|
||||
# echo "尝试取消所有代理"
|
||||
# unset http_proxy
|
||||
# unset HTTP_PROXY
|
||||
# unset https_proxy
|
||||
# unset HTTPS_PROXY
|
||||
# unset socket_proxy
|
||||
# unset SOCKET_PROXY
|
||||
# unset all_proxy
|
||||
# unset ALL_PROXY
|
||||
|
||||
echo -e "\033[42;37m ######## 版本信息 $(date '+%Y-%m-%d %H:%M:%S') ########\033[0m"
|
||||
echo "NW VERSION: $NW_VERSION"
|
||||
echo "nw-gyp version: $( nw-gyp --version )"
|
||||
@ -45,30 +39,28 @@ echo "npm version: $(npm --version )"
|
||||
python --version
|
||||
python3 --version
|
||||
|
||||
rm -fr "${package_dir}/node_modules/vscode-windows-ca-certs" # the module is only available in windows
|
||||
rm -fr "${package_dir}/node_modules/vscode-windows-registry" # the module is only available in windows
|
||||
rm -fr "${package_dir}/node_modules/vscode-windows-registry-node" # the module is only available in windows
|
||||
rm -fr "${package_dir}/node_modules/windows-process-tree" # the module is only available in windows
|
||||
# these modules are only available in windows
|
||||
cd "${package_dir}/node_modules" && \
|
||||
rm -fr "vscode-windows-ca-certs" "vscode-windows-registry" "vscode-windows-registry-node" "windows-process-tree"
|
||||
|
||||
rm -fr "${package_dir}/node_modules/vscode-ripgrep/bin" # redownload bin on linux
|
||||
rm -fr "${package_dir}/node_modules/vscode-ripgrep/bin/"* # redownload bin on linux
|
||||
# https://github.com/microsoft/ripgrep-prebuilt
|
||||
cd "${package_dir}/node_modules/vscode-ripgrep" && \
|
||||
mkdir -p tmp && cd tmp && \
|
||||
wget https://gh2.yanqishui.work/https://github.com/microsoft/ripgrep-prebuilt/releases/download/v12.1.1-1/ripgrep-v12.1.1-1-x86_64-unknown-linux-musl.tar.gz -O ripgrep-v12.1.1-1-x86_64-unknown-linux-musl.tar.gz && \
|
||||
tar xvf ripgrep-v12.1.1-1-x86_64-unknown-linux-musl.tar.gz -C ../bin && \
|
||||
cd .. && rm -rf tmp
|
||||
|
||||
rm -fr "${package_dir}/node_modules/node-pty" "${package_dir}/node_modules/node-pty-node" # the native module is not available in windows
|
||||
|
||||
(cd "${package_dir}/node_modules" && find -name *.pdb | xargs -I{} rm -r {}) # remove pdb debugging file
|
||||
(cd "${package_dir}/node_modules" && \
|
||||
find -name *.pdb | xargs -I{} rm -rf {} && \
|
||||
find -name *.lib | xargs -I{} rm -rf {} && \
|
||||
find -name *.exe | xargs -I{} rm -rf {} && \
|
||||
find -name *.dll | xargs -I{} rm -rf {}) # remove pdb debugging file
|
||||
|
||||
rm -fr "${package_dir}/node_modules_tmp" # remove previous hacking tmp
|
||||
mkdir -p "${package_dir}/node_modules_tmp"
|
||||
cp -fr "${package_dir}/node_modules" "${package_dir}/node_modules_tmp/node_modules"
|
||||
|
||||
rm -fr "${package_dir}/node_modules_tmp/node_modules/node-pty"
|
||||
rm -fr "${package_dir}/node_modules_tmp/node_modules/node-pty-node"
|
||||
rm -fr "${package_dir}/node_modules_tmp/node_modules/native-watchdog"
|
||||
rm -fr "${package_dir}/node_modules_tmp/node_modules/oniguruma-node"
|
||||
rm -fr "${package_dir}/node_modules_tmp/node_modules/nodegit"
|
||||
rm -fr "${package_dir}/node_modules_tmp/node_modules/vscode-ripgrep"
|
||||
rm -fr "${package_dir}/node_modules_tmp/node_modules/spdlog"
|
||||
rm -fr "${package_dir}/node_modules_tmp/node_modules/spdlog-node"
|
||||
mkdir -p "${package_dir}/node_modules_tmp/node_modules"
|
||||
|
||||
notice "install modules"
|
||||
max_thread=$(cat /proc/cpuinfo| grep "processor"| wc -l)
|
||||
export JOBS=$max_thread
|
||||
(cd "${package_dir}/node_modules_tmp" && npm install \
|
||||
@ -85,32 +77,38 @@ export JOBS=$max_thread
|
||||
--nodegit_binary_host_mirror=https://npmmirror.com/mirrors/nodegit/v0.27.0/ ) # reinstall modules
|
||||
|
||||
# rebuild
|
||||
cd "$package_dir/node_modules_tmp/node_modules/node-pty" && nw-gyp rebuild --arch=x64 "--target=$NW_VERSION" --dist-url=https://registry.npmmirror.com/-/binary/nwjs
|
||||
(cp -fr "${package_dir}/node_modules_tmp/node_modules/node-pty" "${package_dir}/node_modules_tmp/node_modules/node-pty-node")
|
||||
rm -rf "${package_dir}/node_modules/node-pty" "${package_dir}/node_modules/node-pty-node"
|
||||
cp -fr "${package_dir}/node_modules_tmp/node_modules/node-pty" "${package_dir}/node_modules"
|
||||
(cp -fr "${package_dir}/node_modules/node-pty" "${package_dir}/node_modules/node-pty-node")
|
||||
notice "rebuild node-pty"
|
||||
cd "$package_dir/node_modules_tmp/node_modules" && \
|
||||
cp -fr "node-pty" "node-pty-node" && \
|
||||
cd "node-pty" && nw-gyp rebuild --arch=x64 "--target=$NW_VERSION" --dist-url=https://registry.npmmirror.com/-/binary/nwjs
|
||||
|
||||
cd "$package_dir/node_modules_tmp/node_modules/native-watchdog" && nw-gyp rebuild --arch=x64 "--target=$NW_VERSION" --dist-url=https://registry.npmmirror.com/-/binary/nwjs
|
||||
rm -rf "${package_dir}/node_modules/native-watchdog" && cp -fr "${package_dir}/node_modules_tmp/node_modules/native-watchdog" "${package_dir}/node_modules"
|
||||
notice "rebuild native-watchdog"
|
||||
cd "$package_dir/node_modules_tmp/node_modules/native-watchdog" && \
|
||||
nw-gyp rebuild --arch=x64 "--target=$NW_VERSION" --dist-url=https://registry.npmmirror.com/-/binary/nwjs
|
||||
|
||||
cd "${package_dir}/node_modules_tmp/node_modules/nodegit" && rm -rf .github include src lifecycleScripts vendor utils build/vendor build/Release/.deps
|
||||
cp -fr "${package_dir}/node_modules_tmp/node_modules/nodegit" "${package_dir}/node_modules"
|
||||
|
||||
(cp -fr "${package_dir}/node_modules_tmp/node_modules/oniguruma" "${package_dir}/node_modules_tmp/node_modules/oniguruma-node")
|
||||
(cp -fr "${package_dir}/node_modules_tmp/node_modules/spdlog" "${package_dir}/node_modules_tmp/node_modules/spdlog-node")
|
||||
cd "$package_dir/node_modules_tmp/node_modules/spdlog" && nw-gyp rebuild --arch=x64 "--target=$NW_VERSION" --dist-url=https://registry.npmmirror.com/-/binary/nwjs
|
||||
|
||||
(cd "${package_dir}/node_modules_tmp/node_modules" && find -name ".deps" | xargs -I{} rm -rf {} && find -name "obj.target" | xargs -I{} rm -rf {} && find -name "*.a" -delete && find -name "*.lib" -delete && find -name "*.mk" -delete)
|
||||
(cd "${package_dir}/node_modules_tmp/node_modules" && find -name "*.node" | xargs -I{} \cp -rf {} ${package_dir}/node_modules/{})
|
||||
|
||||
# https://github.com/microsoft/ripgrep-prebuilt
|
||||
notice "rebuild oniguruma"
|
||||
cd "${package_dir}/node_modules_tmp/node_modules" && \
|
||||
mkdir -p vscode-ripgrep/bin && cd vscode-ripgrep && \
|
||||
wget https://gh2.yanqishui.work/https://github.com/microsoft/ripgrep-prebuilt/releases/download/v12.1.1-1/ripgrep-v12.1.1-1-x86_64-unknown-linux-musl.tar.gz -O ripgrep-v12.1.1-1-x86_64-unknown-linux-musl.tar.gz && \
|
||||
tar xvf ripgrep-v12.1.1-1-x86_64-unknown-linux-musl.tar.gz -C ./bin
|
||||
mkdir -p ${package_dir}/node_modules/vscode-ripgrep/bin &&\
|
||||
\cp -fr "${package_dir}/node_modules_tmp/node_modules/vscode-ripgrep/bin/rg" "${package_dir}/node_modules/vscode-ripgrep/bin/rg"
|
||||
cp -fr "oniguruma" "oniguruma-node" && \
|
||||
cd "oniguruma" && nw-gyp rebuild --arch=x64 "--target=$NW_VERSION" --dist-url=https://registry.npmmirror.com/-/binary/nwjs
|
||||
|
||||
notice "rebuild spdlog"
|
||||
cd "${package_dir}/node_modules_tmp/node_modules" && \
|
||||
cp -fr "spdlog" "spdlog-node" && \
|
||||
cd "spdlog" && nw-gyp rebuild --arch=x64 "--target=$NW_VERSION" --dist-url=https://registry.npmmirror.com/-/binary/nwjs
|
||||
|
||||
notice "remove unused files"
|
||||
(cd "${package_dir}/node_modules_tmp/node_modules" && \
|
||||
find -name ".deps" | xargs -I{} rm -rf {} && \
|
||||
find -name "obj.target" | xargs -I{} rm -rf {} && \
|
||||
find -name "*.a" -delete && \
|
||||
find -name "*.lib" -delete && \
|
||||
find -name "*.mk" -delete)
|
||||
|
||||
notice "copy node files"
|
||||
(cd "${package_dir}/node_modules_tmp/node_modules" && \
|
||||
find -name "*.node" | xargs -I{} \cp -rf {} ${package_dir}/node_modules/{})
|
||||
|
||||
(cd "${package_dir}/node_modules" && find -name ".deps" | xargs -I{} rm -rf {} && find -name "obj.target" | xargs -I{} rm -rf {} && find -name "*.a" -delete && find -name "*.lib" -delete && find -name "*.mk" -delete && find -name "*Makefile" -delete && find -name "*gyp*" -delete)
|
||||
rm -rf "${package_dir}/node_modules_tmp"
|
||||
|
Loading…
x
Reference in New Issue
Block a user