diff --git a/editors/vim/Makefile b/editors/vim/Makefile --- a/editors/vim/Makefile +++ b/editors/vim/Makefile @@ -1,8 +1,7 @@ # Created by: David O'Brien PORTNAME= vim -PORTVERSION= 8.2.3273 -PORTREVISION= 1 +PORTVERSION= 8.2.3281 DISTVERSIONPREFIX= v CATEGORIES= editors @@ -17,8 +16,6 @@ USES= cpe iconv ncurses pkgconfig shebangfix USE_GITHUB= yes -CONFLICTS_INSTALL?= vim-console vim-tiny - # Vim will try to link against libcanberra if it's installed CONFIGURE_ARGS= --disable-canberra \ --enable-gui=${GUI} \ @@ -38,24 +35,37 @@ # OPTIONS for normal (non-tiny) vim # ### Make sure any new options are excluded below in CONSOLE/TINY -OPTIONS_DEFAULT= CSCOPE DEFAULT_VIMRC CTAGS_EXUBERANT GTK3 PERL PYTHON RUBY +OPTIONS_DEFAULT= CTAGS_BASE DEFAULT_VIMRC PYTHON OPTIONS_DEFINE= CSCOPE DEFAULT_VIMRC MAKE_JOBS NLS XTERM_SAVE -OPTIONS_SINGLE= CTAGS UI +OPTIONS_SINGLE= CTAGS OPTIONS_SINGLE_CTAGS= CTAGS_BASE CTAGS_EXUBERANT CTAGS_UNIVERSAL -OPTIONS_SINGLE_UI= ATHENA CONSOLE GTK2 GTK3 MOTIF X11 OPTIONS_GROUP= LANGBIND OPTIONS_GROUP_LANGBIND= LUA PERL PYTHON RUBY SCHEME TCL OPTIONS_SUB= yes # vim-tiny excludes everything except CONSOLE, DEFAULT_VIMRC, MAKE_JOBS -.if defined(CONSOLE) || defined(TINY) -OPTIONS_SLAVE= CONSOLE +.if ${FLAVOR:U} == tiny OPTIONS_EXCLUDE:= ${OPTIONS_DEFINE:NDEFAULT_VIMRC:NMAKE_JOBS} \ ${OPTIONS_SINGLE_UI:NCONSOLE} \ ${OPTIONS_GROUP_LANGBIND} \ ${OPTIONS_SINGLE_CTAGS} .endif +FLAVORS= console athena gtk2 gtk3 motif x11 tiny +console_CONFLICTS_INSTALL= vim-athena vim-gtk2 vim-gtk3 vim-motif vim-tiny vim-x11 +tiny_CONFLICTS_INSTALL= vim-athena vim-console vim-gtk2 vim-gtk3 vim-motif vim-x11 +tiny_PKGNAMESUFFIX= -tiny +athena_CONFLICTS_INSTALL= vim-console vim-gtk2 vim-gtk3 vim-motif vim-tiny vim-x11 +athena_PKGNAMESUFFIX= -athena +gtk2_CONFLICTS_INSTALL= vim-athena vim-console vim-gtk3 vim-motif vim-tiny vim-x11 +gtk2_PKGNAMESUFFIX= -gtk2 +gtk3_CONFLICTS_INSTALL= vim-athena vim-console vim-gtk2 vim-motif vim-tiny vim-x11 +gtk3_PKGNAMESUFFIX= -gtk3 +motif_CONFLICTS_INSTALL= vim-athena vim-console vim-gtk2 vim-gtk3 vim-tiny vim-x11 +motif_PKGNAMESUFFIX= -motif +x11_CONFLICTS_INSTALL= vim-athena vim-console vim-gtk2 vim-gtk3 vim-motif vim-tiny +x11_PKGNAMESUFFIX= -x11 + DEFAULT_VIMRC_DESC= Install bundled vimrc as default setting MAKE_JOBS_DESC= Enable parallel build XTERM_SAVE_DESC= Restore xterm screen after exit @@ -64,11 +74,6 @@ CTAGS_EXUBERANT_DESC= Use exctags instead of ctags CTAGS_UNIVERSAL_DESC= Use uctags instead of ctags -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 @@ -76,7 +81,59 @@ OPTIONS_EXCLUDE_powerpc64= RUBY OPTIONS_EXCLUDE_powerpc64le= RUBY +# GUI flavors +.if ${FLAVOR:U} == console +GUI= no +PLIST_SUB+= GUI="@comment " DESKTOP="@comment " + +.elif ${FLAVOR:U} == tiny +GUI= no +PLIST= ${.CURDIR}/pkg-plist-tiny +PORTDATA= # not for -tiny + +.elif ${FLAVOR:U} == athena +GUI= athena +CONFIGURE_ARGS+=--enable-xim --enable-fontset +PLIST_SUB+= GUI="" DESKTOP="@comment " +USES+= xorg +USE_XORG+= ice sm x11 xaw xmu xpm xt + +.elif ${FLAVOR:U} == gtk2 +GUI= gtk2 +INSTALLS_ICONS= yes +CONFIGURE_ARGS+=--enable-xim --enable-fontset +PLIST_SUB+= GUI="" DESKTOP="" +USES+= desktop-file-utils gnome xorg +USE_GNOME= gdkpixbuf2 gtk20 +USE_XORG= ice sm x11 xpm xt + +.elif ${FLAVOR:U} == gtk3 +GUI= gtk3 +INSTALLS_ICONS= yes +CONFIGURE_ARGS+=--enable-xim --enable-fontset +PLIST_SUB+= GUI="" DESKTOP="" +USES+= desktop-file-utils gnome xorg +USE_GNOME= cairo gdkpixbuf2 gtk30 +USE_XORG= ice sm x11 xpm xt + +.elif ${FLAVOR:U} == motif +GUI= motif +CONFIGURE_ARGS+=--enable-xim --enable-fontset --with-motif=lib="${MOTIFLIB}" +CONFIGURE_ENV+= MOTIFHOME=${LOCALBASE} +PLIST_SUB+= GUI="" DESKTOP="@comment " +USES+= motif xorg +USE_XORG= ice sm x11 xmu xt + +.elif ${FLAVOR:U} == x11 +GUI= no +CONFIGURE_ARGS+=--enable-xim --enable-fontset --with-x +PLIST_SUB+= GUI="@comment " DESKTOP="@comment " +USES+= xorg +USE_XORG= ice sm x11 xt +.endif + # GENERAL OPTIONS +CSCOPE_DESC= cscope support CSCOPE_CONFIGURE_ENABLE=cscope CSCOPE_RUN_DEPENDS= cscope:devel/cscope @@ -88,39 +145,6 @@ NLS_CONFIGURE_ENABLE= nls NLS_USES= gettext -# UI -ATHENA_PLIST_SUB= GUI="" DESKTOP="@comment " -ATHENA_USES= xorg -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 - -GTK2_PLIST_SUB= GUI="" DESKTOP="" -GTK2_USE= GNOME=gdkpixbuf2,gtk20 XORG=ice,sm,x11,xpm,xt -GTK2_USES= desktop-file-utils gnome xorg -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 gnome xorg -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 xorg -MOTIF_VARS= GUI=motif - -X11_CONFIGURE_WITH= x -X11_PLIST_SUB= GUI="@comment " DESKTOP="@comment " -X11_USE= XORG=ice,sm,x11,xt -X11_USES= xorg -X11_VARS= GUI=no - # LANGUAGE BINDINGS LUA_CONFIGURE_ENABLE= luainterp LUA_CONFIGURE_WITH= lua-prefix=${LOCALBASE} @@ -129,8 +153,9 @@ PERL_CONFIGURE_ENABLE= perlinterp PERL_USES= perl5 -PYTHON_USES= python +PYTHON_USES= python:3.6+ PYTHON_USES_OFF= python:env +PYTHON_CONFIGURE_ARGS= --enable-python3interp --with-python3-command=${PYTHON_CMD} RUBY_CONFIGURE_ENABLE= rubyinterp RUBY_USE= RUBY=yes @@ -145,15 +170,8 @@ .include -.if ${PORT_OPTIONS:MPYTHON} -. if !empty(WITH_DEBUG) +.if ${PORT_OPTIONS:MPYTHON} && !empty(WITH_DEBUG) CFLAGS+= -DPy_DEBUG -DPy_DEBUG_NO_PYMALLOC -. endif -. if ${PYTHON_MAJOR_VER} == 3 -CONFIGURE_ARGS+= --enable-python3interp --with-python3-command=${PYTHON_CMD} -. else -CONFIGURE_ARGS+= --enable-pythoninterp --with-python-command=${PYTHON_CMD} -. endif .endif post-extract: @@ -173,13 +191,18 @@ ${MKDIR} ${STAGEDIR}${ETCDIR} ${INSTALL_DATA} ${FILESDIR}/vimrc ${STAGEDIR}${ETCDIR}/vimrc.sample -.if !defined(TINY) +.if ${FLAVOR:U} == tiny +do-install: + ${INSTALL_PROGRAM} ${WRKSRC}/src/vim ${STAGEDIR}${PREFIX}/bin + ${INSTALL_MAN} ${WRKSRC}/runtime/doc/vim.1 ${STAGEDIR}${MAN1PREFIX}/man/man1 + +.else # flavor != tiny 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 +. for F in eview evim gview gvim gvimdiff rgview rgvim rview rvim vimdiff ${LN} -sf vim ${STAGEDIR}${PREFIX}/bin/$F -.endfor +. endfor # OPTIONS post-patch-CTAGS_BASE-on: diff --git a/editors/vim/distinfo b/editors/vim/distinfo --- a/editors/vim/distinfo +++ b/editors/vim/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1627902718 -SHA256 (vim-vim-v8.2.3273_GH0.tar.gz) = 03c5f8962aa68107e4310895b0679c463f6aef2452759ccac50cd052eda49b76 -SIZE (vim-vim-v8.2.3273_GH0.tar.gz) = 15665556 +TIMESTAMP = 1628023727 +SHA256 (vim-vim-v8.2.3281_GH0.tar.gz) = 9aa89b500cedc9d788f1645c7f955b622e3322eea2007f4f6f34b2e4b9c92960 +SIZE (vim-vim-v8.2.3281_GH0.tar.gz) = 15665971