Hello Ian,

I like the idea.  Maybe it confuses users if 'vi' calls busybox and
'vim' the full featured Vim, but I appreciate it anyway.  More
feedback below.

Am Thu, May 02, 2024 at 03:53:22PM +0100 schrieb Ian Abbott:
> Commit ad2eb34a07ed ("vim: prevent file name conflicts with busybox")
> prevented vim being selected if busybox vi is selected. However, the vim
> package does not currently install /usr/bin/vi, so the only conflict is
> between vim's xxd and busybox's xxd.
> 
> Allow vim to be installed alongside busybox vi. Also add a configuration
> option to allow installation of a /usr/bin/vi symbolic link to
> /usr/bin/vim, but only allow it to be selected if busybox vi is not
> selected.
> 
> Move the auto-selections of LIBC_DL, LIBC_M, GCCLIBS_GCC_S, and NCURSES
> from VIM to VIM_VIM because VIM_XXD does not appear to require them.
> 
> Signed-off-by: Ian Abbott <abbo...@mev.co.uk>
> ---
>  rules/vim.in   | 24 ++++++++++++------------
>  rules/vim.make |  4 ++++
>  2 files changed, 16 insertions(+), 12 deletions(-)
> 
> diff --git a/rules/vim.in b/rules/vim.in
> index c4c9d14e6..2f7eba993 100644
> --- a/rules/vim.in
> +++ b/rules/vim.in
> @@ -1,15 +1,7 @@
>  ## SECTION=editors
>  
> -comment "BusyBox' vi and xxd is selected!"
> -     depends on BUSYBOX_VI && BUSYBOX_XXD
> -
>  menuconfig VIM
>       tristate
> -     depends on !(BUSYBOX_VI && BUSYBOX_XXD)
> -     select LIBC_DL
> -     select LIBC_M
> -     select GCCLIBS_GCC_S
> -     select NCURSES
>       prompt "vim                           "
>       help
>         Vim is an advanced text editor that seeks to provide the
> @@ -18,12 +10,20 @@ menuconfig VIM
>  
>  if VIM
>  
> -comment "BusyBox' vi is selected!"
> -     depends on BUSYBOX_VI
> -
>  config VIM_VIM
> -     depends on !BUSYBOX_VI
>       bool "Vim Editor"
> +     select LIBC_DL
> +     select LIBC_M
> +     select GCCLIBS_GCC_S
> +     select NCURSES

Don't move this to the suboption, keep it in the original place but
add 'if VIM_VIM' like this:

    select LIBC_DL if VIM_VIM

This avoids dependency problems, it's also in documentation:
https://www.ptxdist.org/doc/dev_advanced_rule_files.html#managing-external-compile-time-dependencies-on-demand

> +
> +comment "BusyBox' vi is selected!"
> +     depends on VIM_VIM && BUSYBOX_VI
> +
> +config VIM_VI_SYMLINK
> +     depends on VIM_VIM && !BUSYBOX_VI

The !BUSYBOX_VI is redundant, but I guess one can keep it.

Greets
Alex

> +     bool "install symbolic link /usr/bin/vi"
> +     default y
>  
>  comment "BusyBox' xxd is selected!"
>       depends on BUSYBOX_XXD
> diff --git a/rules/vim.make b/rules/vim.make
> index b03778e53..8700b70bd 100644
> --- a/rules/vim.make
> +++ b/rules/vim.make
> @@ -103,6 +103,10 @@ VIM_INSTALL_OPT := \
>  
>  VIM_LINKS := ex rview rvim view vimdiff
>  
> +ifdef PTXCONF_VIM_VI_SYMLINK
> +VIM_LINKS += vi
> +endif
> +
>  $(STATEDIR)/vim.targetinstall:
>       @$(call targetinfo)
>  
> -- 
> 2.43.0
> 
> 

Reply via email to