# Created by: David O'Brien # $FreeBSD$ PORTNAME= vim PORTVERSION= 8.0.1365 DISTVERSIONPREFIX= v CATEGORIES= editors MAINTAINER= adamw@FreeBSD.org COMMENT?= Improved version of the vi editor 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 CONFLICTS_INSTALL?= vim-lite-[0-9]* USES= cpe iconv ncurses pkgconfig shebangfix USE_GITHUB= yes CONFIGURE_ARGS= --enable-gui=${GUI} \ --enable-multibyte \ --with-tlib=ncurses MAKE_ARGS= STRIP="${STRIP_CMD}" \ VIMRCLOC=${ETCDIR} \ VIMRUNTIMEDIR=${PREFIX}/share/vim/${VIM_VER} CPE_VERSION= ${PORTVERSION:R} GNU_CONFIGURE= yes MAKE_JOBS_UNSAFE= yes PLIST_SUB= VIM_VER=${VIM_VER} PORTDATA= ${VIM_VER} PORTSCOUT= ignore:1 REINPLACE_ARGS= -i '' SHEBANG_FILES= runtime/tools/demoserver.py runtime/tools/efm_perl.pl VIM_VER= ${PORTNAME}${PORTVERSION:R:S|.||g} # OPTIONS OPTIONS_DEFAULT= CSCOPE DEFAULT_VIMRC EXUBERANT_CTAGS GTK2 PERL PYTHON2 RUBY 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 PYTHON2 PYTHON3 RUBY SCHEME TCL OPTIONS_SUB= yes .if defined(LITE) OPTIONS_DEFAULT= DEFAULT_VIMRC OPTIONS_SLAVE= CONSOLE # Exclude everything except the two options above OPTIONS_EXCLUDE:= ${OPTIONS_DEFINE:NDEFAULT_VIMRC} \ ${OPTIONS_SINGLE_UI:NCONSOLE} \ ${OPTIONS_GROUP_LANGBIND} .endif 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 LANGBIND_DESC= Optional language bindings SCHEME_DESC= MzScheme (Racket) bindings # BROKEN: ruby.h: error: wrong number of arguments specified for 'deprecated' attribute OPTIONS_EXCLUDE_powerpc64= RUBY # GENERAL OPTIONS CSCOPE_CONFIGURE_ENABLE=cscope CSCOPE_RUN_DEPENDS= cscope:devel/cscope EXUBERANT_CTAGS_RUN_DEPENDS= exctags:devel/ctags NLS_CONFIGURE_ENABLE= nls NLS_USES= gettext # UI ATHENA_PLIST_SUB= GUI="" DESKTOP="@comment " ATHENA_USE= XORG=ice,sm,x11,xaw,xmu,xpm,xt ATHENA_VARS= GUI=athena CONSOLE_CONFIGURE_OFF= --enable-xim --enable-fontset CONSOLE_PLIST_SUB= GUI="@comment " DESKTOP="@comment " CONSOLE_VARS= GUI=no GNOME_PLIST_SUB= GUI="" DESKTOP="" GNOME_IMPLIES= NLS GNOME_USE= GNOME=gdkpixbuf2,libgnomeui XORG=ice,sm,glproto,x11,xpm,xt GNOME_USES= desktop-file-utils GNOME_VARS= GUI=gnome2 INSTALLS_ICONS=yes GTK2_PLIST_SUB= GUI="" DESKTOP="" GTK2_USE= GNOME=gdkpixbuf2,gtk20 XORG=ice,sm,x11,xpm,xt GTK2_USES= desktop-file-utils GTK2_VARS= GUI=gtk2 INSTALLS_ICONS=yes GTK3_PLIST_SUB= GUI="" DESKTOP="" GTK3_USE= GNOME=cairo,gdkpixbuf2,gtk30 XORG=ice,sm,x11,xpm,xt GTK3_USES= desktop-file-utils GTK3_VARS= GUI=gtk3 INSTALLS_ICONS=yes MOTIF_CONFIGURE_ENV= MOTIFHOME=${LOCALBASE} MOTIF_CONFIGURE_WITH= motif-lib="${MOTIFLIB}" MOTIF_PLIST_SUB= GUI="" DESKTOP="@comment " MOTIF_USE= XORG=ice,sm,x11,xmu,xt MOTIF_USES= motif MOTIF_VARS= GUI=motif X11_CONFIGURE_WITH= x X11_PLIST_SUB= GUI="@comment " DESKTOP="@comment " X11_USE= XORG=ice,sm,x11,xt X11_VARS= GUI=no # LANGUAGE BINDINGS LUA_CONFIGURE_ENABLE= luainterp LUA_CONFIGURE_WITH= lua-prefix=${LOCALBASE} LUA_USES= lua PERL_CONFIGURE_ENABLE= perlinterp PERL_USES= perl5 PYTHON2_CONFIGURE_ENABLE= pythoninterp PYTHON2_BUILD_DEPENDS= python${PYTHON2_DEFAULT}:lang/python${PYTHON2_DEFAULT:S/.//} PYTHON2_RUN_DEPENDS= ${PYTHON2_BUILD_DEPENDS} PYTHON3_CONFIGURE_ENABLE= python3interp PYTHON3_USES= python:3.4+ RUBY_CONFIGURE_ENABLE= rubyinterp RUBY_USE= RUBY=yes SCHEME_CONFIGURE_ENABLE=mzschemeinterp SCHEME_BUILD_DEPENDS= mzscheme:lang/racket SCHEME_RUN_DEPENDS= ${SCHEME_BUILD_DEPENDS} TCL_CONFIGURE_ENABLE= tclinterp TCL_CONFIGURE_WITH= tclsh=tclsh${TCL_VER} TCL_USES= tcl:85+ post-extract: ${INSTALL_DATA} ${FILESDIR}/vietnamese_viscii.vim ${WRKSRC}/runtime/keymap post-patch: @${ECHO_CMD} '#define SYS_VIMRC_FILE "'${ETCDIR}'/vimrc"' >> ${WRKSRC}/src/feature.h @${ECHO_CMD} '#define SYS_GVIMRC_FILE "'${ETCDIR}'/gvimrc"' >> ${WRKSRC}/src/feature.h @${REINPLACE_CMD} -e 's|-liconv|${ICONV_LIB}|g; s|/usr/local|${LOCALBASE}|g' \ ${WRKSRC}/src/auto/configure # Work around qa-check shebang error @${REINPLACE_CMD} -e 1d ${WRKSRC}/runtime/tools/demoserver.py post-configure: # Needed when devel/libsysinfo is installed: @${REINPLACE_CMD} -e '/#define HAVE_SYSINFO 1/ d' ${WRKSRC}/src/auto/config.h post-install: @${RM} ${STAGEDIR}${PREFIX}/bin/ex @${RM} ${STAGEDIR}${PREFIX}/bin/view .for F in eview evim gview gvim gvimdiff rgview rgvim rview rvim vimdiff ${LN} -sf vim ${STAGEDIR}${PREFIX}/bin/$F .endfor # OPTIONS post-patch-EXUBERANT_CTAGS-off: @${FIND} ${WRKSRC}/runtime/ -name 'menu*.vim' -print0 | ${XARGS} -0 ${REINPLACE_CMD} -Ee 's!ctags -R ?\.!${FIND} . -type f \\| ${XARGS} ctags!g' post-patch-EXUBERANT_CTAGS-on: @${FIND} ${WRKSRC}/runtime/ -name 'menu*.vim' -print0 | ${XARGS} -0 ${REINPLACE_CMD} -e 's|ctags -R|exctags -R|g' post-patch-LUA-on: @${REINPLACE_CMD} -e 's|set dummy lua;|set dummy ${LUA_CMD};|g' ${WRKSRC}/src/auto/configure @${REINPLACE_CMD} -e '/$$LUA_LIBS/ s|^|LUA_LIBS="-L${LUA_LIBDIR} -llua-${LUA_VER}";|' ${WRKSRC}/src/auto/configure @${REINPLACE_CMD} -e '/LUA_CFLAGS=/s|".*"|"-I${LUA_INCDIR}"|' ${WRKSRC}/src/auto/configure post-patch-XTERM_SAVE-on: @${REINPLACE_CMD} -e '/FEAT_XTERM_SAVE/ s|.*|#define FEAT_XTERM_SAVE|' ${WRKSRC}/src/feature.h post-install-DEFAULT_VIMRC-on: @${MKDIR} ${STAGEDIR}${ETCDIR} ${SED} -e '/set nocompatible/d' ${FILESDIR}/vimrc > ${STAGEDIR}${ETCDIR}/gvimrc.sample ${INSTALL_DATA} ${FILESDIR}/vimrc ${STAGEDIR}${ETCDIR}/vimrc.sample post-install-NLS-off: @${MKDIR} ${STAGEDIR}${DATADIR}/${VIM_VER}/lang @${MKDIR} ${STAGEDIR}${DATADIR}/${VIM_VER}/keymap ${INSTALL_DATA} ${WRKSRC}/runtime/keymap/* ${STAGEDIR}${DATADIR}/${VIM_VER}/keymap .include