Fix vim ~gui behavior (#3432)

This commit is contained in:
Adam J. Stewart 2017-03-14 09:45:17 -05:00 committed by Todd Gamblin
parent 5430d45db1
commit 64bd7adefa

View File

@ -25,7 +25,7 @@
from spack import * from spack import *
class Vim(Package): class Vim(AutotoolsPackage):
"""Vim is a highly configurable text editor built to enable efficient text """Vim is a highly configurable text editor built to enable efficient text
editing. It is an improved version of the vi editor distributed with most editing. It is an improved version of the vi editor distributed with most
UNIX systems. Vim is often called a "programmer's editor," and so useful UNIX systems. Vim is often called a "programmer's editor," and so useful
@ -37,6 +37,7 @@ class Vim(Package):
homepage = "http://www.vim.org" homepage = "http://www.vim.org"
url = "https://github.com/vim/vim/archive/v8.0.0134.tar.gz" url = "https://github.com/vim/vim/archive/v8.0.0134.tar.gz"
version('8.0.0454', '4030bf677bdfbd14efb588e4d9a24128')
version('8.0.0134', 'c74668d25c2acc85d655430dd60886cd') version('8.0.0134', 'c74668d25c2acc85d655430dd60886cd')
version('7.4.2367', 'a0a7bc394f7ab1d95571fe6ab05da3ea') version('7.4.2367', 'a0a7bc394f7ab1d95571fe6ab05da3ea')
@ -59,12 +60,15 @@ class Vim(Package):
variant('cscope', default=False, description="build with cscope support") variant('cscope', default=False, description="build with cscope support")
depends_on('cscope', when='+cscope', type='run') depends_on('cscope', when='+cscope', type='run')
# TODO: Once better support for multi-valued variants is added, add
# support for auto/no/gtk2/gnome2/gtk3/motif/athena/neXtaw/photon/carbon
variant('gui', default=False, description="build with gui (gvim)") variant('gui', default=False, description="build with gui (gvim)")
# virtual dependency? variant('x', default=False, description="use the X Window System")
depends_on('ncurses', when="@7.4:") depends_on('ncurses', when="@7.4:")
def install(self, spec, prefix): def configure_args(self):
spec = self.spec
feature_set = None feature_set = None
for fs in self.feature_sets: for fs in self.feature_sets:
if "+" + fs in spec: if "+" + fs in spec:
@ -110,11 +114,15 @@ def install(self, spec, prefix):
if '+gui' in spec: if '+gui' in spec:
configure_args.append("--enable-gui=auto") configure_args.append("--enable-gui=auto")
else:
configure_args.append("--enable-gui=no")
if '+x' in spec:
configure_args.append("--with-x")
else:
configure_args.append("--without-x")
if '+cscope' in spec: if '+cscope' in spec:
configure_args.append("--enable-cscope") configure_args.append("--enable-cscope")
configure("--prefix=%s" % prefix, *configure_args) return configure_args
make()
make("install")