core/vim/PKGBUILD
2017-12-19 06:13:16 +00:00

144 lines
4.8 KiB
Bash

pkgbase=vim
pkgname=(vim vim-runtime)
pkgver=8.0.1406
_versiondir=80
pkgrel=1
arch=('x86_64')
license=('custom:vim')
url='http://www.vim.org'
makedepends=(gpm python2 python3 ruby libxt lua gawk tcl)
source=(vim-$pkgver.tar.gz::http://github.com/vim/vim/archive/v$pkgver.tar.gz
'chakra.vim'
'default.vim'
'vimrc'
'https://raw.github.com/tomasr/molokai/master/colors/molokai.vim')
sha512sums=('114944c47bb17e5fb7a8ea71c7938f6e6af29d23a5dcaf05c259f0352bbc59fad7fbb4ec8b21e0be91e5575aca64b265606c5c43432065c0b47889bf756da38b'
'493b95e83bd6fb6ce2ebec17994af0bf8e6b209383979d9a1cda58c9af947acda04f8917d39e4e4a4a5db414043c7b44a5347f9bbbb0fb1fb7ca2674387b638a'
'd698b5a800929bb7b37cf82955c162429684754f377239c0364ff3c31cd46e0c506276d36d253a07ec15ae728ba5fc3226f66f593614e656ee8176b6929bcb5d'
'd8a088ac2f486e47d4f5f91e21ec79486503b2bbd4ce10b923d6aead0c73d260c88b6159704ed47c54885c67c9484f12f032f15dbb4060c88b2e851306138a17'
'a8bffc4461363ffc6edf9c13223e23a334817b1a0bd82b32f55b4014fbe63c4b59490b2f1744e93e21f5dd80fe4131c41f2e7cc716878fc9563017ef59dbf297')
prepare() {
cd vim-$pkgver/src
# define the place for the global (g)vimrc file (set to /etc/vimrc)
sed -i 's|^.*\(#define SYS_.*VIMRC_FILE.*"\) .*$|\1|' feature.h
sed -i 's|^.*\(#define VIMRC_FILE.*"\) .*$|\1|' feature.h
autoconf
}
build() {
cd vim-$pkgver
./configure \
--prefix=/usr \
--localstatedir=/var/lib/vim \
--with-features=huge \
--with-compiledby='Chakra' \
--enable-gpm \
--enable-acl \
--with-x=yes \
--disable-gui \
--enable-multibyte \
--enable-cscope \
--disable-netbeans \
--enable-perlinterp=dynamic \
--enable-pythoninterp=dynamic \
--enable-python3interp=dynamic \
--enable-rubyinterp=dynamic \
--enable-luainterp=dynamic \
--enable-tclinterp=dynamic
make
}
# Tests fail when built `with-x` and run outside a X session
# check() {
# cd vim-$pkgver
# TERM=xterm make -j1 test
# }
package_vim-runtime() {
pkgdesc='Runtime for vim and gvim'
backup=('etc/vimrc')
cd "${srcdir}"/vim-$pkgver
make -j1 VIMRCLOC=/etc DESTDIR="${pkgdir}" install
# man and bin files belong to 'vim'
rm -r "${pkgdir}"/usr/share/man/ "${pkgdir}"/usr/bin/
# Don't forget logtalk.dict
install -Dm644 runtime/ftplugin/logtalk.dict \
"${pkgdir}"/usr/share/vim/vim${_versiondir}/ftplugin/logtalk.dict
# fix FS#17216
sed -i 's|messages,/var|messages,/var/log/messages.log,/var|' \
"${pkgdir}"/usr/share/vim/vim${_versiondir}/filetype.vim
# patch filetype.vim for better handling of pacman related files
sed -i "s/rpmsave/pacsave/;s/rpmnew/pacnew/;s/,\*\.ebuild/\0,PKGBUILD*,*.install/" \
"${pkgdir}"/usr/share/vim/vim${_versiondir}/filetype.vim
sed -i "/find the end/,+3{s/changelog_date_entry_search/changelog_date_end_entry_search/}" \
"${pkgdir}"/usr/share/vim/vim${_versiondir}/ftplugin/changelog.vim
# rc files
install -Dm644 "${srcdir}"/vimrc "${pkgdir}"/etc/vimrc
install -Dm644 "${srcdir}"/default.vim \
"${pkgdir}"/usr/share/vim/vimfiles/default.vim
install -Dm644 "${srcdir}"/chakra.vim \
"${pkgdir}"/usr/share/vim/vimfiles/chakra.vim
# rgb.txt file
install -Dm644 runtime/rgb.txt \
"${pkgdir}"/usr/share/vim/vim${_versiondir}/rgb.txt
# Colourscheme
install -Dm644 "$srcdir"/molokai.vim \
"${pkgdir}"/usr/share/vim/vim${_versiondir}/colors/molokai.vim
# license
install -dm755 "${pkgdir}"/usr/share/licenses/vim-runtime
ln -s /usr/share/vim/vim${_versiondir}/doc/uganda.txt \
"${pkgdir}"/usr/share/licenses/vim-runtime/license.txt
}
package_vim() {
pkgdesc='Vi Improved, a highly configurable, improved version of the vi text editor'
depends=("vim-runtime=${pkgver}-${pkgrel}" 'gpm' 'acl' 'libxt')
optdepends=('python2: Python 2 language support'
'python3: Python 3 language support'
'ruby: Ruby language support'
'lua: Lua language support'
'perl: Perl language support'
'tcl: Tcl language support')
conflicts=('gvim' 'vim-tiny' 'vim-python3')
provides=('xxd' 'vim-tiny' 'vim-python3')
replaces=('vim-python3' 'vim-tiny')
cd "${srcdir}"/vim-$pkgver
make -j1 VIMRCLOC=/etc DESTDIR="${pkgdir}" install
# provided by (n)vi in core
rm "${pkgdir}"/usr/bin/{ex,view}
# delete some manpages
find "${pkgdir}"/usr/share/man -type d -name 'man1' 2>/dev/null | \
while read _mandir; do
cd ${_mandir}
rm -f ex.1 view.1 # provided by (n)vi
rm -f evim.1 # this does not make sense if we have no GUI
done
# Runtime provided by runtime package
rm -r "${pkgdir}"/usr/share/vim
# no desktop files and icons
rm -r "${pkgdir}"/usr/share/{applications,icons}
# license
install -Dm644 runtime/doc/uganda.txt \
"${pkgdir}"/usr/share/licenses/${pkgname}/license.txt
}