From 2b32b68cebd37edd2e945620d0483c941425a907 Mon Sep 17 00:00:00 2001 From: Travis Kemen Date: Thu, 8 May 2008 00:48:18 +0000 Subject: [PATCH] adds a vim-full (normal options) target to vim as well as split out vim-runtime and vim-doc. Signed-off-by: Michael Geddes SVN-Revision: 11064 --- utils/vim/Makefile | 135 +++++++++++++++++++++++++++++++++++-- utils/vim/files/vimrc.full | 23 +++++++ 2 files changed, 154 insertions(+), 4 deletions(-) create mode 100644 utils/vim/files/vimrc.full diff --git a/utils/vim/Makefile b/utils/vim/Makefile index dd2f6b4bc..191018f5e 100644 --- a/utils/vim/Makefile +++ b/utils/vim/Makefile @@ -20,7 +20,7 @@ PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)71 include $(INCLUDE_DIR)/package.mk -define Package/vim +define Package/vim/Default SECTION:=utils CATEGORY:=Utilities DEPENDS:=+libncurses @@ -29,15 +29,59 @@ define Package/vim SUBMENU:=Editors endef +define Package/vim + $(call Packages/vim/Default) + TITLE+= (Tiny) +endef + +define Package/vim-full + $(call Packages/vim/Default) + TITLE+= (Normal) +endef + +define Package/vim-runtime + $(call Packages/vim/Default) + TITLE+= (runtime files) +endef + +define Package/vim-help + $(call Packages/vim/Default) + TITLE+= (help files) +endef + +define Package/vim-full/conffiles +/usr/share/vim/vimrc +endef + +define Package/vim/conffiles +/usr/share/vim/vimrc +endef + define Package/vim/description Vim is an almost compatible version of the UNIX editor Vi. + (Tiny build) +endef + +define Package/vim-full/description + Vim is an almost compatible version of the UNIX editor Vi. + (Normal build) +endef + +define Package/vim-runtime/description + Vim is an almost compatible version of the UNIX editor Vi. + (Runtime files) +endef + +define Package/vim-help/description + Vim is an almost compatible version of the UNIX editor Vi. + (Help files) endef + CONFIGURE_ARGS += \ --disable-gui \ --disable-gtktest \ --disable-xim \ - --with-features=tiny \ --without-x \ --disable-multibyte \ --disable-netbeans \ @@ -45,11 +89,94 @@ CONFIGURE_ARGS += \ --disable-gpm \ --with-tlib=ncurses -define Package/vim/install +ifneq ($(CONFIG_PACKAGE_vim),) +define Build/Compile/vim + $(call Build/Configure/Default, \ + --with-features=tiny \ + ) + $(MAKE) -C $(PKG_BUILD_DIR) clean + $(MAKE) -C $(PKG_BUILD_DIR) \ + DESTDIR="$(PKG_INSTALL_DIR)" \ + all + $(CP) $(PKG_BUILD_DIR)/src/$(PKG_NAME) $(PKG_BUILD_DIR)/vim_tiny +endef +endif + +ifneq ($(CONFIG_PACKAGE_vim-full),) +define Build/Compile/vim-full + $(call Build/Configure/Default, \ + --with-features=normal \ + ) + $(MAKE) -C $(PKG_BUILD_DIR) clean + $(MAKE) -C $(PKG_BUILD_DIR) \ + DESTDIR="$(PKG_INSTALL_DIR)" \ + all + $(CP) $(PKG_BUILD_DIR)/src/$(PKG_NAME) $(PKG_BUILD_DIR)/vim_normal +endef +endif + +define Build/Compile/vim-runtime + $(MAKE) -C $(PKG_BUILD_DIR)/src DESTDIR="$(PKG_INSTALL_DIR)" installrtbase + tar -czf $(PKG_BUILD_DIR)/docs.tgz $(PKG_INSTALL_DIR)/usr/share/vim/vim*/doc + rm -rf $(PKG_INSTALL_DIR)/usr/share/vim/vim*/doc + rm -rf $(PKG_INSTALL_DIR)/usr/man +endef + +define Build/Configure +endef + +define Build/Compile +$(call Build/Compile/vim) +$(call Build/Compile/vim-full) +$(call Build/Compile/vim-runtime) +endef + +define Package/vim/install $(INSTALL_DIR) $(1)/usr/bin - $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/$(PKG_NAME) $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_BUILD_DIR)/vim_tiny $(1)/usr/bin/vim $(INSTALL_DIR) $(1)/usr/share/vim $(INSTALL_CONF) ./files/vimrc $(1)/usr/share/vim/ endef + +define Package/vim-full/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_BUILD_DIR)/vim_normal $(1)/usr/bin/vim + $(INSTALL_DIR) $(1)/usr/share/vim + $(INSTALL_CONF) ./files/vimrc.full $(1)/usr/share/vim/vimrc +endef + +define Package/vim-runtime/install + $(CP) $(PKG_INSTALL_DIR)/* $(1) + rm -rf $(1)/usr/share/vim/vim*/doc +endef + +define Package/vim-help/install + tar -C $(1) -xzf $(PKG_BUILD_DIR)/docs.tgz +endef + +define Package/vim-full/postinst +#!/bin/sh + if [ $${IPKG_INSTROOT} != / ] + then + if [ -d /usr/share/ ] + ln -s $${IPKG_INSTROOT}/usr/share/vim/ /usr/share/ + fi + fi +endef + +define Package/vim/postinst +#!/bin/sh + if [ $${IPKG_INSTROOT} != / ] + then + if [ -d /usr/share/ ] + ln -s $${IPKG_INSTROOT}/usr/share/vim/vimrc /usr/share/vim/vimrc + fi + fi +endef + $(eval $(call BuildPackage,vim)) +$(eval $(call BuildPackage,vim-full)) +$(eval $(call BuildPackage,vim-runtime)) +$(eval $(call BuildPackage,vim-help)) + diff --git a/utils/vim/files/vimrc.full b/utils/vim/files/vimrc.full new file mode 100644 index 000000000..c67e4db79 --- /dev/null +++ b/utils/vim/files/vimrc.full @@ -0,0 +1,23 @@ +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 +if has('syntax') && &term =~ "xterm" + if has("terminfo") + set t_Co=8 + set t_Sf=[3%p1%dm + set t_Sb=[4%p1%dm + else + set t_Co=8 + set t_Sf=[3%dm + set t_Sb=[4%dm + endif + syn on -- 2.30.2