dotfiles/.zsh/zsh-fzf-tab/lib/-ftb-build-module

31 lines
947 B
Plaintext
Raw Normal View History

2024-09-22 19:14:22 +03:00
#!/hint/zsh
emulate -LR zsh -o extended_glob -o err_return
local zsh_version=${1:-${FZF_TAB_ZSH_SRC_VERSION:-$ZSH_VERSION}}
# macos check
local ret bundle nproc
[[ $OSTYPE == darwin* ]] && {
[[ -n ${module_path[1]}/**/*.bundle(#qN) ]] && bundle=true
nproc=$(sysctl -n hw.logicalcpu)
} || {
nproc=$(nproc)
}
# clone zsh source code if not exists
[[ -d ./zsh/$zsh_version ]] || {
git clone --depth=1 --branch zsh-$zsh_version https://github.com/zsh-users/zsh ./zsh/$zsh_version
}
ln -sf $PWD/Src/fzftab.c ./zsh/$zsh_version/Src/Modules/
ln -sf $PWD/Src/fzftab.mdd ./zsh/$zsh_version/Src/Modules/
# build zsh
cd -q ./zsh/$zsh_version
[[ -f ./configure ]] || ./Util/preconfig
[[ -f ./Makefile ]] || ./configure --disable-gdbm --disable-pcre --without-tcsetpgrp --prefix=/tmp/zsh-fzf-tab-module ${bundle:+DL_EXT=bundle}
make -j$nproc
# we only need aloxaf/fzftab.so
mv ./Src/Modules/fzftab.(so|bundle) $FZF_TAB_HOME/modules/Src/aloxaf/