mirror of
https://git.FreeBSD.org/ports.git
synced 2025-01-05 06:27:37 +00:00
Update vim to 8.0.0019, add GTK3 support, and take maintainership.
Many, many thanks to Sunpoet for all the time he has spent working on and improving this port! Many smaller changes in this update as well: - Languange support was moved into its own OPTIONS group for clarity (a visual change only; it does not affect the knobs themselves) - Add LICENSE - Reorganize and format the Makefile for clarity - Remove a few pieces of cruft - Add many missing dependencies for most of the GUI options - Use better (more robust) build constructs where possible PR: 212771 Approved by: maintainer timeout
This commit is contained in:
parent
7b4cb871d6
commit
e013a28f26
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=423033
@ -1,7 +1,7 @@
|
||||
# Created by: David O'Brien (obrien@NUXI.com)
|
||||
# $FreeBSD$
|
||||
|
||||
MAINTAINER= sunpoet@FreeBSD.org
|
||||
MAINTAINER= adamw@FreeBSD.org
|
||||
COMMENT= Improved version of the vi editor (lite package)
|
||||
|
||||
LITE= yes
|
||||
|
@ -2,53 +2,61 @@
|
||||
# $FreeBSD$
|
||||
|
||||
PORTNAME= vim
|
||||
PORTVERSION= 7.4.2367
|
||||
PORTVERSION= 8.0.0019
|
||||
DISTVERSIONPREFIX= v
|
||||
CATEGORIES?= editors
|
||||
|
||||
MAINTAINER?= sunpoet@FreeBSD.org
|
||||
MAINTAINER?= adamw@FreeBSD.org
|
||||
COMMENT?= Improved version of the vi editor
|
||||
|
||||
OPTIONS_DEFINE= CSCOPE DEFAULT_VIMRC EXUBERANT_CTAGS LUA NLS PERL PYTHON RUBY TCL XTERM_SAVE
|
||||
OPTIONS_SINGLE= UI
|
||||
OPTIONS_SINGLE_UI= ATHENA CONSOLE GNOME GTK2 MOTIF X11
|
||||
OPTIONS_SUB= yes
|
||||
LICENSE= VIM
|
||||
LICENSE_NAME= VIM License
|
||||
LICENSE_FILE= ${WRKSRC}/runtime/doc/uganda.txt
|
||||
LICENSE_PERMS= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept
|
||||
|
||||
OPTIONS_DEFINE= CSCOPE DEFAULT_VIMRC EXUBERANT_CTAGS NLS XTERM_SAVE
|
||||
OPTIONS_SINGLE= UI
|
||||
OPTIONS_SINGLE_UI= ATHENA CONSOLE GNOME GTK2 GTK3 MOTIF X11
|
||||
OPTIONS_GROUP= LANGBIND
|
||||
OPTIONS_GROUP_LANGBIND= LUA PERL PYTHON RUBY TCL
|
||||
OPTIONS_SUB= yes
|
||||
|
||||
DEFAULT_VIMRC_DESC= Install bundled vimrc as default setting
|
||||
EXUBERANT_CTAGS_DESC= Use exctags instead of ctags
|
||||
XTERM_SAVE_DESC= Restore xterm screen after exit
|
||||
|
||||
UI_DESC= User interface
|
||||
ATHENA_DESC= Athena GUI toolkit
|
||||
CSCOPE_DESC= cscope support
|
||||
CONSOLE_DESC= Console/terminal mode
|
||||
DEFAULT_VIMRC_DESC= Install bundled vimrc as default setting
|
||||
EXUBERANT_CTAGS_DESC= Use exctags instead of ctags
|
||||
UI_DESC= User interface
|
||||
XTERM_SAVE_DESC= Restore xterm screen after exit
|
||||
|
||||
PORTSCOUT= site:https://github.com/vim/vim/releases
|
||||
LANGBIND_DESC= Optional language bindings
|
||||
|
||||
ALL_TARGET= # empty
|
||||
MAKE_ARGS+= CC="${CC}" CONF_ARGS="--prefix=${PREFIX} ${CSCOPE_ARG}" STRIP="${STRIP_CMD}" CONF_OPT_MULTIBYTE=--enable-multibyte CONF_TERM_LIB=--with-tlib=termlib
|
||||
MAKE_ARGS+= CC="${CC}" CONF_ARGS="--prefix=${PREFIX} ${CSCOPE_ARG}" STRIP="${STRIP_CMD}"
|
||||
MAKE_ARGS+= VIMRUNTIMEDIR=${PREFIX}/share/vim/${VIM_VER} VIMRCLOC=${ETCDIR}
|
||||
MAKE_ARGS+= CONF_OPT_MULTIBYTE=--enable-multibyte CONF_TERM_LIB=--with-tlib=termlib
|
||||
REINPLACE_ARGS= -i ''
|
||||
USES= cpe iconv ncurses pkgconfig shebangfix
|
||||
WANT_GNOME= yes
|
||||
|
||||
PLIST_SUB= VIM_VER=${VIM_VER}
|
||||
PORTDATA= ${VIM_VER}
|
||||
|
||||
VIM_VER= ${PORTNAME}${PORTVERSION:R:S|.||g}
|
||||
|
||||
USE_GITHUB= yes
|
||||
|
||||
CPE_VERSION= ${PORTVERSION:R}
|
||||
|
||||
SLAVEDIRS= editors/vim-lite
|
||||
|
||||
USE_GITHUB= yes
|
||||
SHEBANG_FILES= runtime/tools/efm_perl.pl
|
||||
CPE_VERSION= ${PORTVERSION:R}
|
||||
PORTSCOUT= site:https://github.com/vim/vim/releases
|
||||
|
||||
.if defined(LITE)
|
||||
PKGNAMESUFFIX+= -lite
|
||||
CONFLICTS_INSTALL= vim-[0-9]*
|
||||
OPTIONS_DEFAULT=DEFAULT_VIMRC
|
||||
OPTIONS_EXCLUDE=ATHENA CSCOPE EXUBERANT_CTAGS GNOME GTK2 LUA MOTIF NLS PERL PYTHON RUBY TCL X11 XTERM_SAVE
|
||||
OPTIONS_SLAVE= CONSOLE
|
||||
OPTIONS_EXCLUDE:= ${OPTIONS_DEFINE:NDEFAULT_VIMRC} \
|
||||
${OPTIONS_SINGLE_UI:NCONSOLE} \
|
||||
${OPTIONS_GROUP_LANGBIND}
|
||||
MAKE_ARGS+= CONF_OPT_GUI="--enable-gui=no --without-x" \
|
||||
CONF_OPT_LUA=--disable-luainterp \
|
||||
CONF_OPT_PERL=--disable-perlinterp \
|
||||
@ -65,39 +73,61 @@ MAKE_ARGS+= CONF_OPT_FEAT=--with-features=huge \
|
||||
PLIST_SUB+= NON_LITE=""
|
||||
.endif
|
||||
|
||||
ATHENA_MAKE_ARGS= CONF_OPT_GUI=--enable-gui=athena
|
||||
ATHENA_PLIST_SUB= GUI=""
|
||||
ATHENA_USE= XORG=xaw
|
||||
CONSOLE_MAKE_ARGS= CONF_OPT_GUI="--enable-gui=no --without-x"
|
||||
CONSOLE_PLIST_SUB= GUI="@comment "
|
||||
# GENERAL OPTIONS
|
||||
CSCOPE_MAKE_ARGS= CONF_OPT_CSCOPE=--enable-cscope
|
||||
CSCOPE_RUN_DEPENDS= cscope:devel/cscope
|
||||
|
||||
EXUBERANT_CTAGS_RUN_DEPENDS= exctags:devel/ctags
|
||||
GNOME_MAKE_ARGS= CONF_OPT_GUI=--enable-gui=gnome2 X_LIBS="$$(X_LIBS) -lX11 -lXpm -lXt"
|
||||
GNOME_PLIST_SUB= GUI=""
|
||||
GNOME_USE= GNOME=libgnomeui XORG=glproto,xpm,xt
|
||||
GTK2_MAKE_ARGS= CONF_OPT_GUI=--enable-gui=gtk2 X_LIBS="$$(X_LIBS) -lX11 -lXpm -lXt"
|
||||
GTK2_PLIST_SUB= GUI=""
|
||||
GTK2_USE= GNOME=gtk20 XORG=xpm,xt
|
||||
LUA_MAKE_ARGS= CONF_OPT_LUA=--enable-luainterp=dynamic CONF_OPT_LUA_PREFIX=--with-lua-prefix=${LOCALBASE}
|
||||
LUA_USES= lua
|
||||
MOTIF_MAKE_ARGS= CONF_OPT_GUI='--enable-gui=motif --with-motif-lib="${MOTIFLIB}"' MOTIFHOME=${LOCALBASE}
|
||||
MOTIF_PLIST_SUB= GUI=""
|
||||
MOTIF_USES= motif
|
||||
|
||||
NLS_MAKE_ARGS= CONF_OPT_NLS=--enable-nls
|
||||
NLS_MAKE_ARGS_OFF= CONF_OPT_NLS=--disable-nls
|
||||
NLS_USES= gettext
|
||||
PERL_MAKE_ARGS= CONF_OPT_PERL=--enable-perlinterp
|
||||
PERL_USES= perl5
|
||||
PYTHON_USES= python
|
||||
RUBY_MAKE_ARGS= CONF_OPT_RUBY=--enable-rubyinterp
|
||||
RUBY_USE= RUBY=yes
|
||||
TCL_MAKE_ARGS= CONF_OPT_TCL="--enable-tclinterp --with-tclsh=tclsh${TCL_VER}"
|
||||
TCL_USES= tcl:85+
|
||||
|
||||
# UI
|
||||
ATHENA_MAKE_ARGS= CONF_OPT_GUI=--enable-gui=athena
|
||||
ATHENA_PLIST_SUB= GUI=""
|
||||
ATHENA_USE= XORG=ice,sm,x11,xaw,xmu,xpm,xt
|
||||
|
||||
CONSOLE_MAKE_ARGS= CONF_OPT_GUI="--enable-gui=no --without-x"
|
||||
CONSOLE_PLIST_SUB= GUI="@comment "
|
||||
|
||||
GNOME_MAKE_ARGS= CONF_OPT_GUI=--enable-gui=gnome2 X_LIBS="$$(X_LIBS) -lX11 -lXpm -lXt"
|
||||
GNOME_PLIST_SUB= GUI=""
|
||||
GNOME_IMPLIES= NLS
|
||||
GNOME_USE= GNOME=gdkpixbuf2,libgnomeui XORG=ice,sm,glproto,x11,xpm,xt
|
||||
|
||||
GTK2_MAKE_ARGS= CONF_OPT_GUI=--enable-gui=gtk2 X_LIBS="$$(X_LIBS) -lX11 -lXpm -lXt"
|
||||
GTK2_PLIST_SUB= GUI=""
|
||||
GTK2_USE= GNOME=gdkpixbuf2,gtk20 XORG=ice,sm,x11,xpm,xt
|
||||
|
||||
GTK3_MAKE_ARGS= CONF_OPT_GUI=--enable-gui=gtk3 X_LIBS="$$(X_LIBS) -lX11 -lXpm -lXt"
|
||||
GTK3_PLIST_SUB= GUI=""
|
||||
GTK3_USE= GNOME=cairo,gdkpixbuf2,gtk30 XORG=ice,sm,x11,xpm,xt
|
||||
|
||||
MOTIF_MAKE_ARGS= CONF_OPT_GUI='--enable-gui=motif --with-motif-lib="${MOTIFLIB}"' MOTIFHOME=${LOCALBASE}
|
||||
MOTIF_PLIST_SUB= GUI=""
|
||||
MOTIF_USES= motif
|
||||
MOTIF_USE= XORG=ice,sm,x11,xmu,xt
|
||||
|
||||
X11_MAKE_ARGS= CONF_OPT_GUI="--enable-gui=no --with-x" X_LIBS="$$(X_LIBS) -lX11 -lXt"
|
||||
X11_PLIST_SUB= GUI="@comment "
|
||||
X11_USE= XORG=x11,xt
|
||||
|
||||
# LANGUAGE BINDINGS
|
||||
LUA_MAKE_ARGS= CONF_OPT_LUA=--enable-luainterp=dynamic CONF_OPT_LUA_PREFIX=--with-lua-prefix=${LOCALBASE}
|
||||
LUA_USES= lua
|
||||
|
||||
PERL_MAKE_ARGS= CONF_OPT_PERL=--enable-perlinterp
|
||||
PERL_USES= perl5
|
||||
|
||||
PYTHON_USES= python
|
||||
|
||||
RUBY_MAKE_ARGS= CONF_OPT_RUBY=--enable-rubyinterp
|
||||
RUBY_USE= RUBY=yes
|
||||
|
||||
TCL_MAKE_ARGS= CONF_OPT_TCL="--enable-tclinterp --with-tclsh=tclsh${TCL_VER}"
|
||||
TCL_USES= tcl:85+
|
||||
|
||||
.include <bsd.port.pre.mk>
|
||||
|
||||
.if ${PORT_OPTIONS:MPYTHON}
|
||||
@ -123,7 +153,7 @@ post-patch-EXUBERANT_CTAGS-on:
|
||||
|
||||
pre-configure:
|
||||
@${CP} ${WRKSRC}/src/config.mk.dist ${WRKSRC}/src/auto/config.mk
|
||||
@(cd ${WRKSRC}/src/ && ${MAKE_CMD} distclean)
|
||||
@${DO_MAKE_BUILD} -C ${WRKSRC}/src distclean
|
||||
@${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|g' \
|
||||
-e 's|\$$gtk_config_prefix/bin/gtk-config|\$${GTK_CONFIG}|g' \
|
||||
-e 's|\$$gtk_config_exec_prefix/bin/gtk-config|\$${GTK_CONFIG}|g' \
|
||||
@ -133,31 +163,31 @@ pre-configure-XTERM_SAVE-on:
|
||||
@${REINPLACE_CMD} -e '/FEAT_XTERM_SAVE/ s|.*|#define FEAT_XTERM_SAVE|' ${WRKSRC}/src/feature.h
|
||||
|
||||
post-configure:
|
||||
@(cd ${WRKSRC}/src/ && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} scratch config)
|
||||
@${DO_MAKE_BUILD} -C ${WRKSRC}/src scratch config
|
||||
@${REINPLACE_CMD} -e 's|#define HAVE_SYSINFO 1|/* #undef HAVE_SYSINFO */|' ${WRKSRC}/src/auto/config.h
|
||||
|
||||
post-install:
|
||||
${MKDIR} ${STAGEDIR}${DATADIR}/${VIM_VER}/lang/
|
||||
.for file in evim rview rvim vimdiff
|
||||
${TEST} -e ${STAGEDIR}${PREFIX}/bin/${file} || ${LN} -fs vim ${STAGEDIR}${PREFIX}/bin/${file}
|
||||
${LN} -fs vim ${STAGEDIR}${PREFIX}/bin/${file}
|
||||
.endfor
|
||||
.if !${PORT_OPTIONS:MCONSOLE} && !${PORT_OPTIONS:MX11}
|
||||
.if empty(PORT_OPTIONS:MCONSOLE) && empty(PORT_OPTIONS:MX11)
|
||||
.for file in eview gview gvim gvimdiff rgview rgvim
|
||||
${TEST} -e ${STAGEDIR}${PREFIX}/bin/${file} || ${LN} -fs vim ${STAGEDIR}${PREFIX}/bin/${file}
|
||||
${LN} -fs vim ${STAGEDIR}${PREFIX}/bin/${file}
|
||||
.endfor
|
||||
.endif
|
||||
|
||||
post-install-DEFAULT_VIMRC-on:
|
||||
${MKDIR} ${STAGEDIR}${ETCDIR}
|
||||
@${MKDIR} ${STAGEDIR}${ETCDIR}
|
||||
${INSTALL_DATA} ${FILESDIR}/vimrc ${STAGEDIR}${ETCDIR}/gvimrc.sample
|
||||
${INSTALL_DATA} ${FILESDIR}/vimrc ${STAGEDIR}${ETCDIR}/vimrc.sample
|
||||
|
||||
post-install-NLS-off:
|
||||
${MKDIR} ${STAGEDIR}${DATADIR}/${VIM_VER}/keymap/
|
||||
${INSTALL_DATA} ${WRKSRC}/runtime/keymap/* ${STAGEDIR}${DATADIR}/${VIM_VER}/keymap/
|
||||
${INSTALL_DATA} ${FILESDIR}/vietnamese_viscii.vim ${STAGEDIR}${DATADIR}/${VIM_VER}/keymap/
|
||||
@${MKDIR} ${STAGEDIR}${DATADIR}/${VIM_VER}/keymap
|
||||
${INSTALL_DATA} ${WRKSRC}/runtime/keymap/* ${STAGEDIR}${DATADIR}/${VIM_VER}/keymap
|
||||
${INSTALL_DATA} ${FILESDIR}/vietnamese_viscii.vim ${STAGEDIR}${DATADIR}/${VIM_VER}/keymap
|
||||
|
||||
post-install-NLS-on:
|
||||
${INSTALL_DATA} ${FILESDIR}/vietnamese_viscii.vim ${STAGEDIR}${DATADIR}/${VIM_VER}/keymap/
|
||||
${INSTALL_DATA} ${FILESDIR}/vietnamese_viscii.vim ${STAGEDIR}${DATADIR}/${VIM_VER}/keymap
|
||||
|
||||
.include <bsd.port.post.mk>
|
||||
|
@ -1,3 +1,3 @@
|
||||
TIMESTAMP = 1474128105
|
||||
SHA256 (vim-vim-v7.4.2367_GH0.tar.gz) = a9ae4031ccd73cc60e771e8bf9b3c8b7f10f63a67efce7f61cd694cd8d7cda5c
|
||||
SIZE (vim-vim-v7.4.2367_GH0.tar.gz) = 12916710
|
||||
TIMESTAMP = 1475291592
|
||||
SHA256 (vim-vim-v8.0.0019_GH0.tar.gz) = f13a76504b2f976228edd7169d592870a6af45614d82ae2a9c312fc17ab3d4ad
|
||||
SIZE (vim-vim-v8.0.0019_GH0.tar.gz) = 12919003
|
||||
|
Loading…
Reference in New Issue
Block a user