2000-07-31 21:28:41 +02:00
|
|
|
# ex:ts=8
|
|
|
|
# Ports collection makefile for: vim
|
|
|
|
# Date created: Sat June 29, 1996
|
|
|
|
# Whom: David O'Brien (obrien@cs.ucdavis.edu)
|
|
|
|
#
|
|
|
|
# $FreeBSD$
|
|
|
|
#
|
|
|
|
|
|
|
|
PORTNAME?= vim
|
2007-09-11 21:22:31 +02:00
|
|
|
PATCHLEVEL= 100
|
2007-06-26 22:57:10 +02:00
|
|
|
PORTVERSION= 7.1.${PATCHLEVEL}
|
2006-12-14 00:41:59 +01:00
|
|
|
RELEASE= vim-${PORTVERSION:C/\.[0-9a-z]*$//}
|
2007-06-21 19:06:55 +02:00
|
|
|
PORTREVISION?= 0
|
2000-09-26 16:48:33 +02:00
|
|
|
CATEGORIES?= editors
|
2003-02-07 04:49:24 +01:00
|
|
|
MASTER_SITES= ${MASTER_SITE_VIM}
|
2006-12-14 00:41:59 +01:00
|
|
|
DISTFILES= ${RELEASE}${EXTRACT_SUFX}
|
2000-07-31 21:28:41 +02:00
|
|
|
|
2004-08-03 21:15:39 +02:00
|
|
|
PATCH_SITES= ${MASTER_SITES:S|unix|patches/${PORTVERSION:C/\.[0-9a-z]*$//}|}
|
2005-12-28 23:45:21 +01:00
|
|
|
PATCHFILES!= /usr/bin/jot -s " " -w ${PORTVERSION:C/\.[0-9]*$//}.%03d \
|
|
|
|
${PATCHLEVEL} 1 ${PATCHLEVEL}
|
2002-01-24 12:47:53 +01:00
|
|
|
# bits to remove
|
2007-09-11 21:22:31 +02:00
|
|
|
BADPATCHES= 003 007 041 065 070 072 080 088 091 092
|
2005-12-28 23:45:21 +01:00
|
|
|
.for p in ${BADPATCHES}
|
2007-06-26 22:57:10 +02:00
|
|
|
PATCHFILES:= ${PATCHFILES:N7.1.${p}}
|
2005-12-28 23:45:21 +01:00
|
|
|
.endfor
|
2000-07-31 21:28:41 +02:00
|
|
|
|
2001-03-11 01:05:13 +01:00
|
|
|
MAINTAINER?= obrien@FreeBSD.org
|
2003-02-18 20:08:21 +01:00
|
|
|
COMMENT?= Vi "workalike", with many additional features
|
2000-07-31 21:28:41 +02:00
|
|
|
|
2001-11-07 02:00:24 +01:00
|
|
|
SLAVEDIRS= editors/vim-lite
|
|
|
|
|
2000-07-31 21:28:41 +02:00
|
|
|
.if defined(PACKAGE_BUILDING) && !defined(LITE)
|
2006-12-12 04:31:25 +01:00
|
|
|
#WITH_TCL= yes
|
2002-02-05 18:49:36 +01:00
|
|
|
WITH_PERL= yes
|
|
|
|
WITH_PYTHON= yes
|
|
|
|
WITH_CSCOPE= yes
|
2007-01-03 09:40:20 +01:00
|
|
|
WITH_EXUBERANT_CTAGS=yes
|
2000-07-31 21:28:41 +02:00
|
|
|
.endif
|
|
|
|
|
2006-12-10 07:11:07 +01:00
|
|
|
.if defined(WITH_TCL)
|
|
|
|
BROKEN= Does not compile
|
|
|
|
.endif
|
|
|
|
|
2001-05-10 02:40:33 +02:00
|
|
|
USE_BZIP2= yes
|
2000-07-31 21:28:41 +02:00
|
|
|
DIST_SUBDIR= vim
|
2002-04-09 04:23:01 +02:00
|
|
|
WRKSRC= ${WRKDIR}/vim${PORTVERSION:C/\.[0-9]*$//:S/.//g}/src
|
2003-06-06 21:01:42 +02:00
|
|
|
PATCH_DIST_ARGS= -d ${WRKSRC:S/src$//} --batch --forward --quiet -E ${PATCH_DIST_STRIP}
|
2001-10-30 19:56:02 +01:00
|
|
|
# consider
|
|
|
|
#PATCH_DIST_ARGS= -t
|
2007-01-02 23:41:37 +01:00
|
|
|
REINPLACE_ARGS= -i ""
|
2001-11-09 17:13:25 +01:00
|
|
|
MAKE_ARGS+= CONF_ARGS="--prefix=${PREFIX} --with-tlib=termlib ${CSCOPE_ARG}"
|
2000-07-31 21:28:41 +02:00
|
|
|
ALL_TARGET= #
|
2006-12-14 00:41:59 +01:00
|
|
|
_DATADIR= ${RELEASE:S/-//g:S/.//g}
|
2003-04-06 18:28:32 +02:00
|
|
|
DATADIR= ${PREFIX}/share/vim/${_DATADIR}
|
|
|
|
PLIST_SUB= VIM_VER=${_DATADIR}
|
2001-08-21 21:51:09 +02:00
|
|
|
MAN1= evim.1 vim.1 vimdiff.1 vimtutor.1 xxd.1
|
2004-08-09 14:01:24 +02:00
|
|
|
MLINKS= vim.1 rvim.1 vim.1 rview.1
|
2000-07-31 21:28:41 +02:00
|
|
|
.if !defined(LITE)
|
2004-08-09 14:01:24 +02:00
|
|
|
MLINKS+= vim.1 gvim.1 vim.1 gview.1 vimdiff.1 gvimdiff.1 \
|
|
|
|
vim.1 rgvim.1 vim.1 rgview.1 evim.1 eview.1
|
2002-02-05 18:49:36 +01:00
|
|
|
.endif
|
2006-06-26 20:21:39 +02:00
|
|
|
MANLANG= "" ru.KOI8-R ru.UTF-8 pl.ISO8859-2 pl.UTF-8 pl fr.ISO8859-1 \
|
|
|
|
fr.UTF-8 fr it.ISO8859-1 it.UTF-8 it
|
2002-02-05 18:49:36 +01:00
|
|
|
|
2004-02-04 06:25:22 +01:00
|
|
|
WANT_GNOME= yes
|
|
|
|
|
2005-12-08 13:24:07 +01:00
|
|
|
.if defined(WITH_PYTHON)
|
|
|
|
USE_PYTHON= yes
|
|
|
|
MAKE_ARGS+= CONF_OPT_PYTHON="--enable-pythoninterp"
|
|
|
|
.endif
|
|
|
|
|
|
|
|
.if defined(WITH_RUBY)
|
|
|
|
USE_RUBY= yes
|
|
|
|
MAKE_ARGS+= CONF_OPT_RUBY="--enable-rubyinterp"
|
|
|
|
.endif
|
|
|
|
|
2002-02-05 18:49:36 +01:00
|
|
|
.include <bsd.port.pre.mk>
|
2000-07-31 21:28:41 +02:00
|
|
|
|
2002-02-05 18:49:36 +01:00
|
|
|
.if !defined(LITE)
|
2001-10-24 19:24:00 +02:00
|
|
|
MAKE_ARGS+= CONF_OPT_FEAT="--with-features=big"
|
2001-02-15 13:18:48 +01:00
|
|
|
I18N= CONF_OPT_MULTIBYTE="--enable-multibyte --enable-fontset --enable-xim"
|
2000-07-31 21:28:41 +02:00
|
|
|
|
2001-05-01 00:39:13 +02:00
|
|
|
.if defined(NO_GUI)
|
|
|
|
WITHOUT_X11= yes
|
|
|
|
.endif
|
|
|
|
|
2001-11-09 17:13:25 +01:00
|
|
|
.if defined(WITH_CSCOPE)
|
|
|
|
RUN_DEPENDS+= cscope:${PORTSDIR}/devel/cscope
|
2004-03-14 23:46:03 +01:00
|
|
|
MAKE_ARGS+= CONF_OPT_CSCOPE="--enable-cscope"
|
2001-11-09 17:13:25 +01:00
|
|
|
.endif
|
|
|
|
|
2007-01-03 09:40:20 +01:00
|
|
|
.if defined(WITH_EXUBERANT_CTAGS)
|
|
|
|
RUN_DEPENDS+= exctags:${PORTSDIR}/devel/ctags
|
|
|
|
.endif
|
|
|
|
|
2002-02-05 18:49:36 +01:00
|
|
|
.if defined(WITH_PERL)
|
|
|
|
USE_PERL5= yes
|
|
|
|
MAKE_ARGS+= CONF_OPT_PERL="--enable-perlinterp"
|
|
|
|
.endif
|
|
|
|
|
|
|
|
.if defined(WITH_TCL)
|
2003-11-18 03:29:43 +01:00
|
|
|
BUILD_DEPENDS= tclsh8.4:${PORTSDIR}/lang/tcl84
|
|
|
|
LIB_DEPENDS= tcl84.1:${PORTSDIR}/lang/tcl84
|
2002-02-05 18:49:36 +01:00
|
|
|
MAKE_ARGS+= CONF_OPT_TCL="--enable-tclinterp"
|
|
|
|
.endif
|
|
|
|
|
2001-05-01 00:39:13 +02:00
|
|
|
.if !defined(WITHOUT_X11)
|
2001-04-26 17:36:46 +02:00
|
|
|
# for now default the GUI to the GTK+ one
|
|
|
|
# will be reviewed when the GTK+ 1.{3,4} behemoth is released
|
2003-06-07 11:46:40 +02:00
|
|
|
.if !defined(WITH_ATHENA) && !defined(WITH_MOTIF) && !defined(WITH_GNOME) && !defined(WITH_GTK2)
|
2003-01-29 09:36:33 +01:00
|
|
|
WITH_GNOME= gtk12
|
2001-04-26 17:36:46 +02:00
|
|
|
.endif
|
|
|
|
|
2000-12-05 18:24:26 +01:00
|
|
|
.if defined(WITH_ATHENA)
|
2001-02-15 13:18:48 +01:00
|
|
|
MAKE_ARGS+= CONF_OPT_GUI="--enable-gui=athena" ${I18N}
|
2003-06-07 11:46:40 +02:00
|
|
|
.elif defined(WITH_GTK2)
|
|
|
|
USE_GNOME= gtk20
|
|
|
|
PKGNAMESUFFIX= -gtk2
|
|
|
|
MAKE_ARGS+= CONF_OPT_GUI="--enable-gui=gtk2 --with-gtk-prefix=${X11BASE}" ${I18N}
|
|
|
|
MAKE_ARGS+= X_LIBS="$(X_LIBS) -lXt"
|
2002-02-05 18:49:36 +01:00
|
|
|
.elif defined(WITH_GNOME)
|
2003-01-29 09:36:33 +01:00
|
|
|
.if ${WITH_GNOME:Mgnomelibs}!="" || ${WITH_GNOME}=="yes" || \
|
|
|
|
${WITH_GNOME}=="1"
|
|
|
|
USE_GNOME= gnomelibs gnomeprefix
|
|
|
|
PKGNAMESUFFIX= -gnome
|
2002-02-05 18:49:36 +01:00
|
|
|
MAKE_ARGS+= CONF_OPT_GUI="--enable-gui=gnome --with-gtk-prefix=${X11BASE}" ${I18N}
|
|
|
|
MAKE_ARGS+= X_LIBS="$(X_LIBS) -lXt"
|
2003-01-29 09:36:33 +01:00
|
|
|
.else
|
|
|
|
USE_GNOME= gtk12
|
|
|
|
MAKE_ARGS+= CONF_OPT_GUI="--enable-gui=gtk --with-gtk-prefix=${X11BASE}" ${I18N}
|
|
|
|
MAKE_ARGS+= X_LIBS="$(X_LIBS) -lXt"
|
|
|
|
.endif
|
2001-04-26 17:36:46 +02:00
|
|
|
.elif defined(WITH_MOTIF)
|
2000-11-08 00:28:20 +01:00
|
|
|
USE_MOTIF= yes
|
2001-02-15 13:18:48 +01:00
|
|
|
MAKE_ARGS+= CONF_OPT_GUI="--enable-gui=motif --with-motif-lib=\"${MOTIFLIB}\"" MOTIFHOME=${X11BASE} ${I18N}
|
2000-07-31 21:28:41 +02:00
|
|
|
.endif
|
2001-05-01 00:39:13 +02:00
|
|
|
.else # WITHOUT_X11
|
2001-12-06 01:05:34 +01:00
|
|
|
MAKE_ARGS+= CONF_OPT_GUI="--enable-gui=no --without-x" ${I18N}
|
2001-05-01 00:39:13 +02:00
|
|
|
.endif # WITHOUT_X11
|
2000-07-31 21:28:41 +02:00
|
|
|
|
|
|
|
.else # LITE
|
2001-11-07 02:00:24 +01:00
|
|
|
PKGNAMESUFFIX= -lite
|
2001-11-01 20:39:28 +01:00
|
|
|
MAKE_ARGS+= CONF_OPT_GUI="--enable-gui=no --without-x --enable-multibyte"
|
2002-02-05 18:49:36 +01:00
|
|
|
MAKE_ARGS+= CONF_OPT_PERL="--disable-perlinterp --disable-pythoninterp --disable-tclinterp --disable-rubyinterp"
|
2000-07-31 21:28:41 +02:00
|
|
|
.endif # LITE
|
|
|
|
|
2002-07-25 18:45:44 +02:00
|
|
|
.if exists(${PREFIX}/lib/libiconv.so)
|
2004-03-30 21:20:22 +02:00
|
|
|
USE_ICONV= yes
|
2002-07-25 18:45:44 +02:00
|
|
|
.endif
|
|
|
|
|
2006-12-12 04:36:41 +01:00
|
|
|
.if defined(WITH_LANG)
|
2006-12-14 00:41:59 +01:00
|
|
|
LANG_FILE= ${RELEASE}-lang.tar.gz
|
2006-12-12 04:36:41 +01:00
|
|
|
DISTFILES+= ${LANG_FILE}:lang_file
|
|
|
|
MASTER_SITES+= ${MASTER_SITE_VIM:S|unix/|extra/:lang_file|}
|
2006-12-14 00:41:59 +01:00
|
|
|
EXTRACT_ONLY= ${RELEASE}${EXTRACT_SUFX}
|
2006-12-12 04:36:41 +01:00
|
|
|
USE_GETTEXT= yes
|
|
|
|
.endif
|
|
|
|
|
|
|
|
post-extract:
|
|
|
|
.if defined(WITH_LANG)
|
|
|
|
@${ECHO_MSG} ">>> extracting ${LANG_FILE} ..."
|
|
|
|
@${TAR} -C ${WRKDIR} -xzf ${DISTDIR}/${DIST_SUBDIR}/${LANG_FILE}
|
|
|
|
.endif
|
|
|
|
|
2007-01-03 09:40:20 +01:00
|
|
|
.if defined(WITH_EXUBERANT_CTAGS)
|
|
|
|
CTAGS_CMD= exctags -R .
|
|
|
|
.else
|
2007-01-08 20:12:58 +01:00
|
|
|
CTAGS_CMD= ${FIND} . -type f \\|${XARGS} ctags
|
2007-01-03 09:40:20 +01:00
|
|
|
.endif
|
|
|
|
|
2007-01-02 23:41:37 +01:00
|
|
|
post-patch:
|
2007-01-03 09:40:20 +01:00
|
|
|
@(${FIND} ${WRKSRC}/../runtime/ -name menu\*.vim -print0 | ${XARGS} -0 \
|
|
|
|
${REINPLACE_CMD} -e 's,ctags -R \.,${CTAGS_CMD},g')
|
2007-01-02 23:41:37 +01:00
|
|
|
|
2002-10-06 09:11:14 +02:00
|
|
|
pre-configure:
|
2004-05-09 04:54:47 +02:00
|
|
|
@(cd ${WRKSRC} ; ${MAKE} distclean)
|
2005-10-24 03:28:48 +02:00
|
|
|
@${REINPLACE_CMD} -e ' \
|
2005-10-24 02:34:13 +02:00
|
|
|
s|\$$gtk_config_prefix/bin/gtk-config|\$${GTK_CONFIG}|g; \
|
|
|
|
s|\$$gtk_config_exec_prefix/bin/gtk-config|\$${GTK_CONFIG}|g; \
|
2005-12-28 23:46:29 +01:00
|
|
|
s|/usr/local|${LOCALBASE}|g' \
|
2002-09-22 01:49:28 +02:00
|
|
|
${WRKSRC}/auto/configure
|
2006-11-26 06:37:07 +01:00
|
|
|
.if defined(WITH_XTERM_SAVE)
|
|
|
|
@${REINPLACE_CMD} -e ' \
|
2006-09-10 04:29:51 +02:00
|
|
|
s|/\* #define FEAT_XTERM_SAVE \*/|#define FEAT_XTERM_SAVE|g' \
|
2006-11-26 06:37:07 +01:00
|
|
|
${WRKSRC}/feature.h
|
2006-09-10 04:29:51 +02:00
|
|
|
.endif
|
2000-07-31 21:28:41 +02:00
|
|
|
|
2004-01-05 08:27:36 +01:00
|
|
|
# Clean up junk files to keep them from being installed.
|
|
|
|
pre-install:
|
|
|
|
@${RM} -f ${WRKSRC}/../runtime/macros/maze/*.orig
|
|
|
|
|
2000-07-31 21:28:41 +02:00
|
|
|
post-install:
|
2001-04-15 09:33:31 +02:00
|
|
|
[ -e ${PREFIX}/bin/gvim ] || (cd ${PREFIX}/bin ; ${LN} -sf vim gvim)
|
2001-08-21 21:51:09 +02:00
|
|
|
# below needed for `vim-lite' port
|
2002-10-20 04:45:14 +02:00
|
|
|
${TEST} -e ${PREFIX}/bin/rgvim || (cd ${PREFIX}/bin ; ${LN} -sf vim rgvim)
|
2002-04-13 21:13:55 +02:00
|
|
|
${TEST} -e ${PREFIX}/bin/gview || (cd ${PREFIX}/bin ; ${LN} -sf vim gview)
|
|
|
|
${TEST} -e ${PREFIX}/bin/rgview || (cd ${PREFIX}/bin ; ${LN} -sf vim rgview)
|
2002-10-20 04:45:14 +02:00
|
|
|
${TEST} -e ${PREFIX}/bin/evim || (cd ${PREFIX}/bin ; ${LN} -sf vim evim)
|
2002-04-13 21:13:55 +02:00
|
|
|
${TEST} -e ${PREFIX}/bin/eview || (cd ${PREFIX}/bin ; ${LN} -sf vim eview)
|
2002-01-29 11:34:23 +01:00
|
|
|
${TEST} -e ${PREFIX}/bin/gvimdiff \
|
2002-04-13 21:13:55 +02:00
|
|
|
|| (cd ${PREFIX}/bin ; ${LN} -sf vim gvimdiff)
|
2001-12-03 08:13:35 +01:00
|
|
|
${INSTALL_DATA} ${FILESDIR}/vietnamese_viscii.vim ${DATADIR}/keymap
|
2001-05-24 03:19:05 +02:00
|
|
|
cd ${PREFIX} ;\
|
2003-04-06 18:28:32 +02:00
|
|
|
${FIND} share/vim/${_DATADIR} -type f -o -type l \
|
2004-01-22 12:06:02 +01:00
|
|
|
| ${SORT} \
|
2001-05-24 03:19:05 +02:00
|
|
|
>${WRKDIR}/PLIST.share-vim
|
|
|
|
cd ${PREFIX} ;\
|
2004-01-22 12:06:02 +01:00
|
|
|
${FIND} share/vim/${_DATADIR} -type d \
|
|
|
|
| ${SORT} -r | ${SED} -e 's/^/@dirrm /g' \
|
2001-05-24 03:19:05 +02:00
|
|
|
>>${WRKDIR}/PLIST.share-vim
|
2002-01-29 11:34:23 +01:00
|
|
|
${ECHO_CMD} "r ${TMPPLIST}" > ${WRKDIR}/ex.script
|
|
|
|
${ECHO_CMD} "/Insert PLIST.share-vim" >> ${WRKDIR}/ex.script
|
|
|
|
${ECHO_CMD} "d" >> ${WRKDIR}/ex.script
|
|
|
|
${ECHO_CMD} "r ${WRKDIR}/PLIST.share-vim" >> ${WRKDIR}/ex.script
|
|
|
|
${ECHO_CMD} "x!" >> ${WRKDIR}/ex.script
|
2001-05-24 03:19:05 +02:00
|
|
|
${CP} -p ${TMPPLIST} ${TMPPLIST}.pre-share-vim
|
|
|
|
cd ${WRKDIR} ; ex < ex.script
|
2005-08-16 18:48:41 +02:00
|
|
|
@${ECHO_CMD}
|
|
|
|
@${CAT} ${PKGMESSAGE}
|
|
|
|
@${ECHO_CMD}
|
2000-07-31 21:28:41 +02:00
|
|
|
|
2003-08-10 02:42:47 +02:00
|
|
|
cklatest:
|
2004-08-03 21:15:39 +02:00
|
|
|
@-ncftpls \
|
|
|
|
ftp://ftp.vim.org/pub/vim/patches/${PORTVERSION:C/\.[0-9a-z]*$//}/ \
|
2003-08-10 02:42:47 +02:00
|
|
|
| fgrep ${PORTVERSION:C/[0-9]*$//} | ${TAIL}
|
|
|
|
|
2004-05-03 01:36:15 +02:00
|
|
|
find-bad-patches:
|
2004-12-11 03:22:13 +01:00
|
|
|
cd ${DISTDIR} ; egrep -l \
|
2007-06-21 19:06:55 +02:00
|
|
|
'(src/if_ole|src/gui_(w32|w48|mac)|src/os_(riscos|cyg|os2|vms|amiga|win32|mswin))'\
|
2004-12-11 03:22:13 +01:00
|
|
|
vim/${PORTVERSION:C/\.[0-9a-z]*$//}*
|
2004-05-03 01:36:15 +02:00
|
|
|
|
2000-10-05 08:47:41 +02:00
|
|
|
.include <bsd.port.post.mk>
|