vim: install vi symlink
authorGustavo Zacarias <gustavo@zacarias.com.ar>
Sat, 8 Nov 2014 13:54:37 +0000 (10:54 -0300)
committerPeter Korsgaard <peter@korsgaard.com>
Sat, 8 Nov 2014 16:35:32 +0000 (17:35 +0100)
Install a 'vi' symlink to win over busybox vi (more features) and in
case busybox isn't around, for people expecting plain simple 'vi' to
call the editor.

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
package/vim/vim.mk

index e06af00d5f4bdea84e85d4c0cf41de2ab2e827f9..7a07ef886b3fdc092757604b374f506c8362fcd0 100644 (file)
@@ -8,7 +8,9 @@ VIM_SITE = https://vim.googlecode.com/hg
 VIM_SITE_METHOD = hg
 # 7.4 release patchlevel 333
 VIM_VERSION = 8ae50e3ef8bf
-VIM_DEPENDENCIES = ncurses $(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),gettext)
+# Win over busybox vi since vim is more feature-rich
+VIM_DEPENDENCIES = ncurses $(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),gettext) \
+       $(if $(BR2_PACKAGE_BUSYBOX),busybox)
 VIM_SUBDIR = src
 VIM_CONF_ENV = vim_cv_toupper_broken=no \
                vim_cv_terminfo=yes \
@@ -40,6 +42,12 @@ define VIM_REMOVE_DOCS
        find $(TARGET_DIR)/usr/share/vim -type f -name "*.txt" -delete
 endef
 
+# Avoid oopses with vipw/vigr, lack of $EDITOR and 'vi' command expectation
+define VIM_INSTALL_VI_SYMLINK
+       ln -sf /usr/bin/vim $(TARGET_DIR)/bin/vi
+endef
+VIM_POST_INSTALL_TARGET_HOOKS += VIM_INSTALL_VI_SYMLINK
+
 ifeq ($(BR2_PACKAGE_VIM_RUNTIME),y)
 VIM_POST_INSTALL_TARGET_HOOKS += VIM_INSTALL_RUNTIME_CMDS
 VIM_POST_INSTALL_TARGET_HOOKS += VIM_REMOVE_DOCS