7085706 update vim to 7.3.421
authorDanek Duvall <danek.duvall@oracle.com>
Tue, 31 Jan 2012 13:11:02 -0800
changeset 672 92e2da956d23
parent 671 2bc83fb23c67
child 673 bb9df3c906be
7085706 update vim to 7.3.421 7129634 vim does not support ZFS ACLs so they are lost when editing files
components/vim/Makefile
components/vim/patches/zfs-acl.patch
components/vim/vim.p5m
--- a/components/vim/Makefile	Wed Feb 01 10:47:38 2012 -0800
+++ b/components/vim/Makefile	Tue Jan 31 13:11:02 2012 -0800
@@ -20,7 +20,7 @@
 #
 
 #
-# Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
 #
 
 include ../../make-rules/shared-macros.mk
@@ -34,9 +34,9 @@
 COMPONENT_PROJECT_URL=	http://www.vim.org/
 COMPONENT_ARCHIVE=	vim-$(COMPONENT_HG_REV).tar.bz2
 COMPONENT_ARCHIVE_URL=	$(EXTERNAL_ARCHIVE_MIRROR)/$(COMPONENT_ARCHIVE)
-COMPONENT_ARCHIVE_HASH=	sha1:19df428d07dfbbe771923871cde609becdf6992e
+COMPONENT_ARCHIVE_HASH=	sha1:411433171ab8a36b3edd41d68941feba2a2f20bc
 COMPONENT_HG_URL=	https://vim.googlecode.com/hg
-COMPONENT_HG_REV=	v7-3-254
+COMPONENT_HG_REV=	v7-3-421
 
 include ../../make-rules/prep.mk
 include ../../make-rules/configure.mk
@@ -48,18 +48,25 @@
 $(HGREPODIR)/.hg:
 	hg clone -U $(COMPONENT_HG_URL) $(@D)
 
+hgball-pull: $(HGREPODIR)/.hg
+	hg -R $(HGREPODIR) pull
+
+hgball: COMPONENT_HG_REV = $(shell hg -R $(HGREPODIR) tags | awk '$$1 ~ /^v7-/ {print $$1; exit}')
+
 # Create the tarball.  It should contain the working directory of the repo at
 # the desired revision, but not the .hg directory.  Note that the digest will
 # be different every time because .hg doesn't set the timestamps of the files
 # in the working directory.
-hgball: $(HGREPODIR)/.hg
-	hg -R $(HGREPODIR) pull
-	hg -R $(HGREPODIR) tags | awk '$$1 ~ /^v7-/ {print $$1; exit}'
+hgball: hgball-pull
 	rm -rf $(TARBALLDIR)
 	hg clone -u $(COMPONENT_HG_REV) $(HGREPODIR) $(TARBALLDIR)
 	rm -rf $(TARBALLDIR)/.hg
 	tar jcf $(COMPONENT_ARCHIVE) $(TARBALLDIR)
-	digest -a sha1 $(COMPONENT_ARCHIVE)
+	digest=$$(digest -a sha1 $(COMPONENT_ARCHIVE)); \
+		/usr/gnu/bin/sed -i \
+			-e "s/^COMPONENT_ARCHIVE_HASH=.*/COMPONENT_ARCHIVE_HASH=	sha1:$$digest/" \
+			-e "s/^COMPONENT_HG_REV=.*/COMPONENT_HG_REV=	$(COMPONENT_HG_REV)/" \
+			Makefile
 
 PATCH_LEVEL =	0
 
@@ -107,6 +114,8 @@
 $(X_VARIANT)/.configured:	CONFIGURE_OPTIONS += --enable-gui=gtk2
 $(X_VARIANT)/.configured:	CONFIGURE_OPTIONS += --enable-gtk2-check
 
+COMPONENT_PREP_ACTION = (cd $(@D)/src; autoconf)
+
 # Vim's build is too smart for itself and configure can't run outside of a
 # complete source tree.
 COMPONENT_PRE_CONFIGURE_ACTION = ($(CLONEY) $(SOURCE_DIR) $(@D))
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/vim/patches/zfs-acl.patch	Tue Jan 31 13:11:02 2012 -0800
@@ -0,0 +1,99 @@
+--- src/configure.in	Tue Jan 10 16:13:35 2012
++++ src/configure.in	Fri Jan 13 14:10:21 2012
+@@ -3106,6 +3106,7 @@
+ 
+ dnl Link with -lposix1e for ACL stuff; if not found, try -lacl for SGI
+ dnl when -lacl works, also try to use -lattr (required for Debian).
++dnl On Solaris, use the acl_get/set functions in libsec, if present.
+ AC_MSG_CHECKING(--disable-acl argument)
+ AC_ARG_ENABLE(acl,
+ 	[  --disable-acl           Don't check for ACL support.],
+@@ -3128,7 +3129,8 @@
+ 	AC_MSG_RESULT(yes); AC_DEFINE(HAVE_POSIX_ACL),
+ 	AC_MSG_RESULT(no))
+ 
+-AC_MSG_CHECKING(for Solaris ACL support)
++AC_CHECK_LIB(sec, acl_get, [LIBS="$LIBS -lsec"; AC_DEFINE(HAVE_SOLARIS_ZFS_ACL)],
++AC_MSG_CHECKING(for Solaris ACL support)
+ AC_TRY_LINK([
+ #ifdef HAVE_SYS_ACL_H
+ # include <sys/acl.h>
+@@ -3135,7 +3137,7 @@
+ #endif], [acl("foo", GETACLCNT, 0, NULL);
+ 	],
+ 	AC_MSG_RESULT(yes); AC_DEFINE(HAVE_SOLARIS_ACL),
+-	AC_MSG_RESULT(no))
++	AC_MSG_RESULT(no)))
+ 
+ AC_MSG_CHECKING(for AIX ACL support)
+ AC_TRY_LINK([
+--- src/config.h.in	Fri Jan 13 13:29:05 2012
++++ src/config.h.in	Fri Jan 13 13:29:13 2012
+@@ -363,6 +363,7 @@
+ 
+ /* Define if you want to add support for ACL */
+ #undef HAVE_POSIX_ACL
++#undef HAVE_SOLARIS_ZFS_ACL
+ #undef HAVE_SOLARIS_ACL
+ #undef HAVE_AIX_ACL
+ 
+--- src/os_unix.c	Tue Jan 10 16:13:35 2012
++++ src/os_unix.c	Fri Jan 13 15:57:08 2012
+@@ -2746,6 +2746,13 @@
+ #ifdef HAVE_POSIX_ACL
+     ret = (vim_acl_T)acl_get_file((char *)fname, ACL_TYPE_ACCESS);
+ #else
++#ifdef HAVE_SOLARIS_ZFS_ACL
++    acl_t *aclent;
++
++    if (acl_get((char *)fname, 0, &aclent) < 0)
++	return NULL;
++    ret = (vim_acl_T)aclent;
++#else
+ #ifdef HAVE_SOLARIS_ACL
+     vim_acl_solaris_T   *aclent;
+ 
+@@ -2791,6 +2798,7 @@
+     ret = (vim_acl_T)aclent;
+ #endif /* HAVE_AIX_ACL */
+ #endif /* HAVE_SOLARIS_ACL */
++#endif /* HAVE_SOLARIS_ZFS_ACL */
+ #endif /* HAVE_POSIX_ACL */
+     return ret;
+ }
+@@ -2808,6 +2816,9 @@
+ #ifdef HAVE_POSIX_ACL
+     acl_set_file((char *)fname, ACL_TYPE_ACCESS, (acl_t)aclent);
+ #else
++#ifdef HAVE_SOLARIS_ZFS_ACL
++    acl_set((char *)fname, (acl_t *)aclent);
++#else
+ #ifdef HAVE_SOLARIS_ACL
+     acl((char *)fname, SETACL, ((vim_acl_solaris_T *)aclent)->acl_cnt,
+ 	    ((vim_acl_solaris_T *)aclent)->acl_entry);
+@@ -2816,6 +2827,7 @@
+     chacl((char *)fname, aclent, ((struct acl *)aclent)->acl_len);
+ #endif /* HAVE_AIX_ACL */
+ #endif /* HAVE_SOLARIS_ACL */
++#endif /* HAVE_SOLARIS_ZFS_ACL */
+ #endif /* HAVE_POSIX_ACL */
+ }
+ 
+@@ -2828,6 +2840,9 @@
+ #ifdef HAVE_POSIX_ACL
+     acl_free((acl_t)aclent);
+ #else
++#ifdef HAVE_SOLARIS_ZFS_ACL
++    acl_free((acl_t *)aclent);
++#else
+ #ifdef HAVE_SOLARIS_ACL
+     free(((vim_acl_solaris_T *)aclent)->acl_entry);
+     free(aclent);
+@@ -2836,6 +2851,7 @@
+     free(aclent);
+ #endif /* HAVE_AIX_ACL */
+ #endif /* HAVE_SOLARIS_ACL */
++#endif /* HAVE_SOLARIS_ZFS_ACL */
+ #endif /* HAVE_POSIX_ACL */
+ }
+ #endif
--- a/components/vim/vim.p5m	Wed Feb 01 10:47:38 2012 -0800
+++ b/components/vim/vim.p5m	Tue Jan 31 13:11:02 2012 -0800
@@ -20,7 +20,7 @@
 #
 
 #
-# Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
 #
 
 <transform file path=usr.*/man/.+ -> default mangler.man.stability uncommitted>
@@ -260,6 +260,7 @@
 file path=usr/share/vim/$(VIMVER)/compiler/cucumber.vim
 file path=usr/share/vim/$(VIMVER)/compiler/decada.vim
 file path=usr/share/vim/$(VIMVER)/compiler/dot.vim
+file path=usr/share/vim/$(VIMVER)/compiler/erlang.vim
 file path=usr/share/vim/$(VIMVER)/compiler/eruby.vim
 file path=usr/share/vim/$(VIMVER)/compiler/fortran_F.vim
 file path=usr/share/vim/$(VIMVER)/compiler/fortran_cv.vim
@@ -484,6 +485,7 @@
 file path=usr/share/vim/$(VIMVER)/ftplugin/dtd.vim
 file path=usr/share/vim/$(VIMVER)/ftplugin/dtrace.vim
 file path=usr/share/vim/$(VIMVER)/ftplugin/elinks.vim
+file path=usr/share/vim/$(VIMVER)/ftplugin/erlang.vim
 file path=usr/share/vim/$(VIMVER)/ftplugin/eruby.vim
 file path=usr/share/vim/$(VIMVER)/ftplugin/eterm.vim
 file path=usr/share/vim/$(VIMVER)/ftplugin/falcon.vim
@@ -657,6 +659,7 @@
 file path=usr/share/vim/$(VIMVER)/indent/fortran.vim
 file path=usr/share/vim/$(VIMVER)/indent/framescript.vim
 file path=usr/share/vim/$(VIMVER)/indent/gitconfig.vim
+file path=usr/share/vim/$(VIMVER)/indent/gitolite.vim
 file path=usr/share/vim/$(VIMVER)/indent/haml.vim
 file path=usr/share/vim/$(VIMVER)/indent/hamster.vim
 file path=usr/share/vim/$(VIMVER)/indent/html.vim
@@ -689,6 +692,7 @@
 file path=usr/share/vim/$(VIMVER)/indent/prolog.vim
 file path=usr/share/vim/$(VIMVER)/indent/pyrex.vim
 file path=usr/share/vim/$(VIMVER)/indent/python.vim
+file path=usr/share/vim/$(VIMVER)/indent/r.vim
 file path=usr/share/vim/$(VIMVER)/indent/readline.vim
 file path=usr/share/vim/$(VIMVER)/indent/rpl.vim
 file path=usr/share/vim/$(VIMVER)/indent/rst.vim
@@ -703,6 +707,7 @@
 file path=usr/share/vim/$(VIMVER)/indent/sqlanywhere.vim
 file path=usr/share/vim/$(VIMVER)/indent/tcl.vim
 file path=usr/share/vim/$(VIMVER)/indent/tcsh.vim
+file path=usr/share/vim/$(VIMVER)/indent/tex.vim
 file path=usr/share/vim/$(VIMVER)/indent/tf.vim
 file path=usr/share/vim/$(VIMVER)/indent/tilde.vim
 file path=usr/share/vim/$(VIMVER)/indent/treetop.vim
@@ -1202,6 +1207,7 @@
 file path=usr/share/vim/$(VIMVER)/syntax/git.vim
 file path=usr/share/vim/$(VIMVER)/syntax/gitcommit.vim
 file path=usr/share/vim/$(VIMVER)/syntax/gitconfig.vim
+file path=usr/share/vim/$(VIMVER)/syntax/gitolite.vim
 file path=usr/share/vim/$(VIMVER)/syntax/gitrebase.vim
 file path=usr/share/vim/$(VIMVER)/syntax/gitsendemail.vim
 file path=usr/share/vim/$(VIMVER)/syntax/gkrellmrc.vim
@@ -1342,6 +1348,7 @@
 file path=usr/share/vim/$(VIMVER)/syntax/ncf.vim
 file path=usr/share/vim/$(VIMVER)/syntax/netrc.vim
 file path=usr/share/vim/$(VIMVER)/syntax/netrw.vim
+file path=usr/share/vim/$(VIMVER)/syntax/ninja.vim
 file path=usr/share/vim/$(VIMVER)/syntax/nosyntax.vim
 file path=usr/share/vim/$(VIMVER)/syntax/nqc.vim
 file path=usr/share/vim/$(VIMVER)/syntax/nroff.vim