mirror of
https://gitdl.cn/https://github.com/chakralinux/core.git
synced 2025-02-03 23:57:13 +08:00
223 lines
6.5 KiB
Bash
223 lines
6.5 KiB
Bash
# Software packages for Chakra, part of www.chakra-project.org
|
|
#
|
|
# Maintainer: H W Tovetjärn (totte) <totte@tott.es>
|
|
# Contributors: Daniele Cocca <jmc@chakra-project.org>
|
|
# Thomas Dziedzic <gostrc@gmail.com>
|
|
# Jan "heftig" Steffens <jan.steffens@gmail.com>
|
|
# Tobias <tobias@archlinux.org>
|
|
# Daniel J Griffiths <ghost1227@archlinux.us>
|
|
|
|
pkgbase=vim
|
|
pkgname=('vim' 'vim-tiny' 'vim-runtime')
|
|
_topver=7-4
|
|
_patchlevel=417
|
|
_versiondir="vim${_topver//-/}"
|
|
pkgver=${_topver//-/.}.${_patchlevel}
|
|
pkgrel=1
|
|
arch=('x86_64')
|
|
license=('custom:vim')
|
|
url="http://www.vim.org"
|
|
makedepends=('desktop-file-utils'
|
|
'gettext'
|
|
'gpm'
|
|
'libxext'
|
|
'libxmu'
|
|
'libxpm'
|
|
'libxt'
|
|
'lua'
|
|
'mercurial'
|
|
'pkgconfig'
|
|
'python2'
|
|
'python3'
|
|
'rsync'
|
|
'sed')
|
|
source=("hg+https://code.google.com/p/vim#tag=v$_topver-$_patchlevel"
|
|
'chakra.vim'
|
|
'default.vim'
|
|
'vimrc'
|
|
'https://raw.github.com/tomasr/molokai/master/colors/molokai.vim')
|
|
sha512sums=('SKIP'
|
|
'493b95e83bd6fb6ce2ebec17994af0bf8e6b209383979d9a1cda58c9af947acda04f8917d39e4e4a4a5db414043c7b44a5347f9bbbb0fb1fb7ca2674387b638a'
|
|
'd698b5a800929bb7b37cf82955c162429684754f377239c0364ff3c31cd46e0c506276d36d253a07ec15ae728ba5fc3226f66f593614e656ee8176b6929bcb5d'
|
|
'd8a088ac2f486e47d4f5f91e21ec79486503b2bbd4ce10b923d6aead0c73d260c88b6159704ed47c54885c67c9484f12f032f15dbb4060c88b2e851306138a17'
|
|
'a8bffc4461363ffc6edf9c13223e23a334817b1a0bd82b32f55b4014fbe63c4b59490b2f1744e93e21f5dd80fe4131c41f2e7cc716878fc9563017ef59dbf297')
|
|
|
|
prepare() {
|
|
# Define the place for the global (g)vimrc file to /etc/vimrc
|
|
sed -i 's|^.*\(#define SYS_.*VIMRC_FILE.*"\) .*$|\1|' $srcdir/$pkgbase/src/feature.h
|
|
sed -i 's|^.*\(#define VIMRC_FILE.*"\) .*$|\1|' $srcdir/$pkgbase/src/feature.h
|
|
cp -a $pkgbase{,-tiny}
|
|
}
|
|
|
|
|
|
build() {
|
|
# Build tiny version
|
|
cd "$srcdir/$pkgbase-tiny/src"
|
|
autoconf
|
|
export CFLAGS="-g -O0"
|
|
export CXXFLAGS="-g -O0"
|
|
./configure \
|
|
--disable-gui \
|
|
--disable-netbeans \
|
|
--disable-pythoninterp \
|
|
--disable-rubyinterp \
|
|
--disable-acl \
|
|
--disable-cscope \
|
|
--disable-gpm \
|
|
--disable-luainterp \
|
|
--disable-multibyte \
|
|
--disable-perlinterp \
|
|
--disable-python3interp \
|
|
--localstatedir=/var/lib/vim \
|
|
--mandir=/usr/share/man \
|
|
--prefix=/usr \
|
|
--with-compiledby='Chakra' \
|
|
--with-features=tiny \
|
|
--with-tlib=ncurses \
|
|
--with-x=no
|
|
make
|
|
|
|
# Build huge version
|
|
cd "$srcdir/$pkgbase/src"
|
|
autoconf
|
|
export CFLAGS="-g -O0"
|
|
export CXXFLAGS="-g -O0"
|
|
./configure \
|
|
--disable-gui \
|
|
--disable-netbeans \
|
|
--disable-rubyinterp \
|
|
--enable-acl \
|
|
--enable-cscope \
|
|
--enable-gpm \
|
|
--enable-luainterp \
|
|
--enable-multibyte \
|
|
--enable-perlinterp \
|
|
--enable-pythoninterp \
|
|
--enable-python3interp \
|
|
--localstatedir=/var/lib/vim \
|
|
--mandir=/usr/share/man \
|
|
--prefix=/usr \
|
|
--with-compiledby='Chakra' \
|
|
--with-features=huge \
|
|
--with-tlib=ncurses \
|
|
--with-x=yes
|
|
make
|
|
}
|
|
|
|
#check() {
|
|
# cd "$srcdir/$pkgbase-$pkgver"
|
|
# make test
|
|
#}
|
|
|
|
package_vim() {
|
|
pkgdesc='Vi Improved, a highly configurable, improved version of the vi text editor'
|
|
depends=("vim-runtime=$pkgver-$pkgrel"
|
|
'gpm'
|
|
'libxt'
|
|
'lua'
|
|
'perl'
|
|
'python2'
|
|
'python3')
|
|
conflicts=('gvim' 'vim-tiny')
|
|
provides=("vim=$pkgver-$pkgrel")
|
|
|
|
cd "$srcdir/$pkgbase"
|
|
|
|
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 doesn't make sense if we have no GUI
|
|
done
|
|
|
|
# Move the runtime for later packaging
|
|
msg2 "MOVING THE RUNTIME! $pkgdir"
|
|
mv -v "$pkgdir"/usr/share/vim "$srcdir"/runtime-install
|
|
|
|
# License
|
|
install -Dm644 "$srcdir/$pkgbase"/runtime/doc/uganda.txt \
|
|
"$pkgdir"/usr/share/licenses/$pkgbase/license.txt
|
|
}
|
|
|
|
package_vim-tiny() {
|
|
pkgdesc='Vi Improved, a highly configurable, improved version of the vi text editor (tiny version)'
|
|
depends=("vim-runtime=$pkgver-$pkgrel"
|
|
'gpm'
|
|
'libxt')
|
|
conflicts=('gvim' 'vim-tiny')
|
|
provides=("vim=$pkgver-$pkgrel")
|
|
|
|
cd "$srcdir/$pkgbase-tiny"
|
|
|
|
make -j1 VIMRCLOC=/etc DESTDIR="$pkgdir" install
|
|
|
|
# Provided by (n)vi in core
|
|
rm "$pkgdir"/usr/bin/{ex,view}
|
|
|
|
# Remove the runtime
|
|
msg2 "REMOVING THE RUNTIME! $pkgdir"
|
|
rm -rv "$pkgdir"/usr/share/vim
|
|
|
|
# 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 doesn't make sense if we have no GUI
|
|
done
|
|
}
|
|
|
|
package_vim-runtime() {
|
|
pkgdesc='Runtime for Vim'
|
|
arch=('any')
|
|
depends=('perl'
|
|
'gawk')
|
|
backup=('etc/vimrc')
|
|
|
|
# Install the runtime split from Vim
|
|
install -dm755 "$pkgdir"/usr/share
|
|
mv "$srcdir"/runtime-install "$pkgdir"/usr/share/vim
|
|
|
|
# Don't forget logtalk.dict
|
|
install -Dm644 "$srcdir/$pkgbase"/runtime/ftplugin/logtalk.dict \
|
|
"$pkgdir"/usr/share/vim/$_versiondir/ftplugin/logtalk.dict
|
|
|
|
# Fix FS#17216
|
|
sed -i 's|messages,/var|messages,/var/log/messages.log,/var|' \
|
|
"$pkgdir"/usr/share/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/$_versiondir/filetype.vim
|
|
sed -i "/find the end/,+3{s/changelog_date_entry_search/changelog_date_end_entry_search/}" \
|
|
"$pkgdir"/usr/share/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 "$srcdir/$pkgbase"/runtime/rgb.txt \
|
|
"$pkgdir"/usr/share/vim/$_versiondir/rgb.txt
|
|
|
|
# Colourscheme
|
|
install -Dm644 "$srcdir"/molokai.vim \
|
|
"$pkgdir"/usr/share/vim/$_versiondir/colors/molokai.vim
|
|
|
|
# License
|
|
install -dm755 "$pkgdir"/usr/share/licenses/vim-runtime
|
|
ln -s /usr/share/vim/$_versiondir/doc/uganda.txt \
|
|
"$pkgdir"/usr/share/licenses/vim-runtime/license.txt
|
|
}
|
|
|
|
# vim:set sw=2 sts=2 et:
|