From: Florian Fainelli Date: Thu, 10 Aug 2006 22:10:54 +0000 (+0000) Subject: Port vim to -ng X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fsvn-archive%2Farchive.git;a=commitdiff_plain;h=317a65348ee81a4dbc3e8ba471d27cc3e33993c5 Port vim to -ng SVN-Revision: 4559 --- diff --git a/utils/vim/Makefile b/utils/vim/Makefile new file mode 100644 index 0000000000..f5e0d4d2a4 --- /dev/null +++ b/utils/vim/Makefile @@ -0,0 +1,56 @@ +# +# Copyright (C) 2006 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# +# $Id$ + +include $(TOPDIR)/rules.mk + +PKG_NAME:=vim +PKG_VERSION:=5.8 +PKG_RELEASE:=1 + +PKG_SOURCE_URL:=ftp://ftp.vim.org/pub/vim/unix/ +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-src.tar.gz +PKG_MD5SUM:= +PKG_CAT:=zcat + +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) + +include $(INCLUDE_DIR)/package.mk + +define Package/vim + SECTION:=utils + CATEGORY:=Utilities + DEPENDS:=+libncurses + TITLE:=VI Improved + DESCRIPTION:=An improved version of VI. + URL:=http://www.vim.org +endef + +define Build/Configure +$(call Build/Configure/Default,--enable-min-features \ + --disable-gui \ + --without-x \ + --disable-multibyte \ + --disable-cscope \ + --disable-gpm \ + --with-tlib=ncurses,ac_cv_c_bigendian=no \ + ac_cv_sizeof_off_t=8 \ + ac_cv_sizeof_int=4) +endef + +define Build/Compile +$(call Build/Compile/Default,CC="$(TARGET_CC)") +endef + +define Package/vim/install + mkdir -p $(1)/usr/bin + mkdir -p $(1)//usr/share/vim + $(CP) ./files/vimrc $(1)//usr/share/vim + $(CP) $(PKG_BUILD_DIR)/src/$(PKG_NAME) $(1)/usr/bin/ +endef + +$(eval $(call BuildPackage,vim)) diff --git a/utils/vim/files/vimrc b/utils/vim/files/vimrc new file mode 100644 index 0000000000..792d68076a --- /dev/null +++ b/utils/vim/files/vimrc @@ -0,0 +1,13 @@ +set showcmd " Show (partial) command in status line. +set showmatch " Show matching brackets. +set ignorecase " Do case insensitive matching +set incsearch " Incremental search +set autowrite " Automatically save before commands like :next and :make +set nocompatible " Use Vim defaults instead of 100% vi compatibility +set backspace=indent,eol,start " more powerful backspacing +set autoindent " always set autoindenting on +set linebreak " Don't wrap words by default +set textwidth=0 " Don't wrap lines by default +set ruler " show the cursor position all the time + + diff --git a/utils/vim/patches/vim_configure.patch b/utils/vim/patches/vim_configure.patch new file mode 100644 index 0000000000..c8ae5c8f28 --- /dev/null +++ b/utils/vim/patches/vim_configure.patch @@ -0,0 +1,248 @@ +This patch is required to stop vim's configure script from insisting on +compiling test programs which obviously do not work in a cross compiled +environment. + +--- vim-5.8_original/src/configure 2001-05-11 04:59:18.000000000 +1000 ++++ vim-5.8/src/configure 2006-03-24 01:04:55.000000000 +1100 +@@ -995,10 +995,6 @@ + + test "$GCC" = yes && CFLAGS="$CFLAGS -Wall" + +-if test "$cross_compiling" = yes; then +- { echo "configure: error: cannot compile a simple program, check CC and CFLAGS" 1>&2; exit 1; } +-fi +- + test "$GCC" = yes && CPP_MM=M; + + if test -f ./toolcheck; then +@@ -3365,29 +3361,7 @@ + + echo $ac_n "checking quality of toupper""... $ac_c" 1>&6 + echo "configure:3368: checking quality of toupper" >&5 +-if test "$cross_compiling" = yes; then +- { echo "configure: error: failed to compile test program" 1>&2; exit 1; } +-else +- cat > conftest.$ac_ext < +-main() { exit(toupper('A') == 'A' && tolower('z') == 'z'); } +-EOF +-if { (eval echo configure:3378: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +-then +- cat >> confdefs.h <<\EOF +-#define BROKEN_TOUPPER 1 +-EOF +- echo "$ac_t""bad" 1>&6 +-else +- echo "configure: failed program was:" >&5 +- cat conftest.$ac_ext >&5 +- rm -fr conftest* +- echo "$ac_t""good" 1>&6 +-fi +-rm -fr conftest* +-fi ++echo "$ac_t""good" 1>&6 + + + echo $ac_n "checking whether __DATE__ and __TIME__ work""... $ac_c" 1>&6 +@@ -4340,34 +4314,10 @@ + if test "x$olibs" != "x$LIBS"; then + echo $ac_n "checking whether we talk terminfo""... $ac_c" 1>&6 + echo "configure:4343: checking whether we talk terminfo" >&5 +- if test "$cross_compiling" = yes; then +- { echo "configure: error: failed to compile test program." 1>&2; exit 1; } +-else +- cat > conftest.$ac_ext < +-#endif +-main() +-{char *s; s=(char *)tgoto("%p1%d", 0, 1); exit(!strcmp(s==0 ? "" : s, "1")); } +-EOF +-if { (eval echo configure:4357: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +-then +- echo "$ac_t""no -- we are in termcap land" 1>&6 +-else +- echo "configure: failed program was:" >&5 +- cat conftest.$ac_ext >&5 +- rm -fr conftest* +- echo "$ac_t""yes -- terminfo spoken here" 1>&6; cat >> confdefs.h <<\EOF ++echo "$ac_t""yes -- terminfo spoken here" 1>&6; cat >> confdefs.h <<\EOF + #define TERMINFO 1 + EOF + +-fi +-rm -fr conftest* +-fi +- + else + echo "$ac_t""none found" 1>&6 + fi +@@ -4600,70 +4550,14 @@ + + echo $ac_n "checking for struct sigcontext""... $ac_c" 1>&6 + echo "configure:4603: checking for struct sigcontext" >&5 +-cat > conftest.$ac_ext < +-test_sig() +-{ +- struct sigcontext *scont; +- scont = (struct sigcontext *)0; +- return 1; +-} +-int main() { +- +-; return 0; } +-EOF +-if { (eval echo configure:4619: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +- rm -rf conftest* +- echo "$ac_t""yes" 1>&6 +- cat >> confdefs.h <<\EOF ++cat >> confdefs.h <<\EOF + #define HAVE_SIGCONTEXT 1 + EOF + +-else +- echo "configure: failed program was:" >&5 +- cat conftest.$ac_ext >&5 +- rm -rf conftest* +- echo "$ac_t""no" 1>&6 +-fi +-rm -f conftest* +- + echo $ac_n "checking getcwd implementation""... $ac_c" 1>&6 + echo "configure:4635: checking getcwd implementation" >&5 +-if test "$cross_compiling" = yes; then +- { echo "configure: error: failed to compile test program" 1>&2; exit 1; } +-else +- cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +-then +- echo "$ac_t""it is usable" 1>&6 +-else +- echo "configure: failed program was:" >&5 +- cat conftest.$ac_ext >&5 +- rm -fr conftest* +- echo "$ac_t""it stinks" 1>&6 +- cat >> confdefs.h <<\EOF +-#define BAD_GETCWD 1 +-EOF +- +-fi +-rm -fr conftest* +-fi +- ++echo "$ac_t""it is usable" 1>&6 + + for ac_func in bcmp fchdir fchown fseeko fsync ftello getcwd getpwnam getpwuid \ + gettimeofday getwd lstat memcmp memset nanosleep opendir putenv qsort \ +@@ -4872,89 +4766,11 @@ + + echo $ac_n "checking whether memmove/bcopy/memcpy handle overlaps""... $ac_c" 1>&6 + echo "configure:4875: checking whether memmove/bcopy/memcpy handle overlaps" >&5 +-bcopy_test_prog=' +-main() { +- char buf[10]; +- strcpy(buf, "abcdefghi"); +- mch_memmove(buf, buf + 2, 3); +- if (strncmp(buf, "ababcf", 6)) +- exit(1); +- strcpy(buf, "abcdefghi"); +- mch_memmove(buf + 2, buf, 3); +- if (strncmp(buf, "cdedef", 6)) +- exit(1); +- exit(0); /* libc version works properly. */ +-}' +- +- +-if test "$cross_compiling" = yes; then +- { echo "configure: error: failed to compile test program" 1>&2; exit 1; } +-else +- cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +-then +- cat >> confdefs.h <<\EOF ++cat >> confdefs.h <<\EOF + #define USEMEMMOVE 1 +-EOF +- echo "$ac_t""memmove does" 1>&6 +-else +- echo "configure: failed program was:" >&5 +- cat conftest.$ac_ext >&5 +- rm -fr conftest* +- if test "$cross_compiling" = yes; then +- { echo "configure: error: failed to compile test program" 1>&2; exit 1; } +-else +- cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +-then +- cat >> confdefs.h <<\EOF + #define USEBCOPY 1 +-EOF +- echo "$ac_t""bcopy does" 1>&6 +-else +- echo "configure: failed program was:" >&5 +- cat conftest.$ac_ext >&5 +- rm -fr conftest* +- if test "$cross_compiling" = yes; then +- { echo "configure: error: failed to compile test program" 1>&2; exit 1; } +-else +- cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +-then +- cat >> confdefs.h <<\EOF + #define USEMEMCPY 1 + EOF +- echo "$ac_t""memcpy does" 1>&6 +-else +- echo "configure: failed program was:" >&5 +- cat conftest.$ac_ext >&5 +- rm -fr conftest* +- echo "$ac_t""no" 1>&6 +-fi +-rm -fr conftest* +-fi +- +-fi +-rm -fr conftest* +-fi +- +-fi +-rm -fr conftest* +-fi +- +- + + if test "$enable_multibyte" = "yes"; then + cflags_save=$CFLAGS