### this file is sourced not run
PKGVER=9.0.2092
PKGBUILD=1
PKGARCH=x86_64

TARBALL=vim-$PKGVER.tar.gz
MD5SUM=a4416db3877b1dd732ada095c6bbe679
BUNDLE=
SRC_URL=https://github.com/vim/vim/archive/v$PKGVER.tar.gz

SLACKCON='vim_cli gvim'
SLACKREQ='libncurses gtk3' # build: lua python3 ruby tcl
SLACKDESC="vim_gtk3: vim $PKGVER (Console and GUI text editor)
vim_gtk3:
vim_gtk3: The Vim package contains a powerful text editor.
vim_gtk3: Compiled with 'huge' feature set and support for common scripting languages.
vim_gtk3:
vim_gtk3:
vim_gtk3:
vim_gtk3:
vim_gtk3:
vim_gtk3:
vim_gtk3:
"

### prepare
pkg_prepare() {
	pkg_prepare_default &&

	cd tmp/vim-* &&

	echo >> src/feature.h '
#define SYS_VIMRC_FILE "/etc/vimrc"
#define SYS_GVIMRC_FILE "/etc/gvimrc"'
}

### default pkg_package
### build
pkg_build() {
	#
	# We clobber /usr/bin/vim (devx) and gvim (package 'gvim').
	# [1] Compile with 'huge' feature set, https://vimhelp.org/various.txt.html#%3Aversion`
	# [2] FIXME can't include dynamically-loaded perl with other interpreters,
	#   see "dynamic loading broken with perl 5.36" https://github.com/vim/vim/issues/10512
	# [3] fd800 vim could load python 2 and 3 simultaneously; for fd900 vim it's either/or
	#   see vim :help E386 and https://vi.stackexchange.com/questions/779.

	cd /tmp/vim-* &&

	CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" \
	./configure --prefix=/usr \
		--enable-gui=gtk3 \
		--with-features=huge `# [1]` \
		--with-tlib=ncursesw \
		--disable-desktop-database-update \
		--disable-icon-cache-update \
		`#--enable-perlinterp=dynamic` `# [2]` \
		`#--enable-pythoninterp=dynamic` `# [3]` \
		--enable-python3interp=dynamic \
		--enable-rubyinterp=dynamic \
		--enable-luainterp=dynamic \
		--enable-tclinterp=dynamic \
		--with-tclsh=tclsh \
		--enable-fail-if-missing \
		&&

	make $MAKEFLAGS &&
	(cd /usr/bin && rm -vf eview evim gview gvim gvimdiff rgview rgvim rview rvim vi view vimdiff) &&
	make install &&
	pkg_build_slackdesc &&
	cp -v ../pkg/install/* /install/ &&

	#for p in eview evim gview gvim gvimdiff rgview rgvim rview rvim vi view vimdiff; do
	for p in ex vi; do
		rm -f /usr/bin/$p
		ln -sfv vim /usr/bin/$p || return 1
	done &&
	for p in /usr/share/man/{,*/}man1/vim.1; do
		ln -sfv vim.1 $(dirname $p)/vi.1 || return 1
	done &&

	p="${PKGVER//.}" && p="${p%????}" && # <major><minor>
	ln -sfv ../vim/vim$p/doc /usr/share/doc/vim-${PKGVER%.*} && # -> <major>.<minor>

	cp -vr ../pkg/dist/etc/* /etc/ &&
	cp -vr ../pkg/dist/usr/* /usr/ &&

	echo SUCCESS vim_gtk3
}

# vim:ft=sh:

