# Contributor: Daniel Sabogal <dsabogalcc@gmail.com>
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
#
# secfixes:
#   0.1.6-r1:
#     - CVE-2016-1248
#   0.2.0-r0:
#     - CVE-2017-5953
#     - CVE-2017-6349
#     - CVE-2017-6350

# TODO: Try to trim the base package to include only common syntax files etc.
setvar pkgname = 'neovim'
setvar pkgver = '0.2.0'
setvar pkgrel = '0'
setvar pkgdesc = ""Vim-fork focused on extensibility and agility""
setvar url = ""https://neovim.io""
setvar arch = ""all !s390x"" # needs luajit
setvar license = ""ASL-2.0 custom""
setvar depends = """"
setvar makedepends = ""cmake gettext-dev gperf libtermkey-dev libuv-dev libvterm-dev
	lua5.1-lpeg lua5.1-mpack luajit-dev msgpack-c-dev unibilium-dev""
setvar subpackages = ""$pkgname-lang $pkgname-doc""
setvar source = ""$pkgname-$pkgver.tar.gz::https://github.com/neovim/$pkgname/archive/v$pkgver.tar.gz
	nodoc.txt""
setvar builddir = ""$srcdir/$pkgname-$pkgver""

proc build {
	mkdir -p "$builddir"/build
	cd "$builddir"/build

	cmake .. \
		-DCMAKE_BUILD_TYPE=MinSizeRel \
		-DCMAKE_INSTALL_PREFIX=/usr \
		-DCMAKE_INSTALL_LIBDIR=lib \
		-DENABLE_JEMALLOC=FALSE \
		-DCMAKE_VERBOSE_MAKEFILE=TRUE \
		|| return 1
	make || return 1
}

proc package {
	cd "$builddir"/build
	make DESTDIR="$pkgdir" install
}

proc doc {
	default_doc || return 1

	setvar pkgdesc = ""$pkgdesc (documentation and help pages)""
	setvar replaces = "$pkgname"
	local docdir="usr/share/nvim/runtime/doc"

	mkdir -p "$subpkgdir"/$docdir
	mv "$pkgdir"/$docdir/*.txt "$subpkgdir"/$docdir/ || return 1

	# When user execute ":help <pattern>", neovim will open nodoc.txt
	# with information why docs are not available and how to install them.
	install -D "$srcdir"/nodoc.txt \
		"$pkgdir"/$docdir/nodoc.txt || return 1
	local f; for f in "$subpkgdir"/$docdir/*.txt {
		ln -s nodoc.txt "$pkgdir"/$docdir/$(basename $f) || return 1
	}
}

setvar sha512sums = ""fc4be03c5bee1c9928376938679f9a900f3ee2e58df817d1cb9b5af51350dccca63a7638114b0326ec4565a047faaa4b50fecfc932c1d59ee92efa54625e22cd  neovim-0.2.0.tar.gz
72ab288f53acddc088c567aafe8c5afa6835325fab7879e782d1d62f87a662f3a6bac123c450debbae1b32336cc60b2830b429838ee3dfcc7524773b5069f4f0  nodoc.txt""