To: vim_dev@googlegroups.com Subject: Patch 8.1.0612 Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ------------ Patch 8.1.0612 Problem: Cannot use two global runtime dirs with configure. Solution: Support a comma in --with-global-runtime. (James McCoy, closes #3704) Files: src/config.h.in, src/configure.ac, src/feature.h, src/os_unix.h, src/auto/configure, src/Makefile *** ../vim-8.1.0611/src/config.h.in 2018-12-12 20:34:06.072356129 +0100 --- src/config.h.in 2018-12-21 11:39:15.980806116 +0100 *************** *** 453,461 **** /* Define if you want to include terminal emulator support. */ #undef FEAT_TERMINAL ! /* Define default global runtime path */ #undef RUNTIME_GLOBAL /* Define name of who modified a released Vim */ #undef MODIFIED_BY --- 453,464 ---- /* Define if you want to include terminal emulator support. */ #undef FEAT_TERMINAL ! // Define default global runtime path. #undef RUNTIME_GLOBAL + // Define default global runtime after path. + #undef RUNTIME_GLOBAL_AFTER + /* Define name of who modified a released Vim */ #undef MODIFIED_BY *** ../vim-8.1.0611/src/configure.ac 2018-12-12 20:34:06.072356129 +0100 --- src/configure.ac 2018-12-21 11:36:38.369939450 +0100 *************** *** 345,354 **** AC_SUBST(VIEWNAME) AC_MSG_CHECKING(--with-global-runtime argument) ! AC_ARG_WITH(global-runtime, [ --with-global-runtime=DIR global runtime directory in 'runtimepath'], ! AC_MSG_RESULT($withval); AC_DEFINE_UNQUOTED(RUNTIME_GLOBAL, "$withval"), AC_MSG_RESULT(no)) AC_MSG_CHECKING(--with-modified-by argument) AC_ARG_WITH(modified-by, [ --with-modified-by=NAME name of who modified a release version], AC_MSG_RESULT($withval); AC_DEFINE_UNQUOTED(MODIFIED_BY, "$withval"), --- 345,360 ---- AC_SUBST(VIEWNAME) AC_MSG_CHECKING(--with-global-runtime argument) ! AC_ARG_WITH(global-runtime, [ --with-global-runtime=DIR global runtime directory in 'runtimepath', comma-separated for multiple directories], ! RUNTIME_GLOBAL="$withval"; AC_MSG_RESULT($withval), AC_MSG_RESULT(no)) + if test "X$RUNTIME_GLOBAL" != "X"; then + RUNTIME_GLOBAL_AFTER=$(printf -- "$RUNTIME_GLOBAL\\n" | $AWK -F, 'BEGIN { comma=0 } { for (i = NF; i > 0; i--) { if (comma) { printf ",%s/after", $i } else { printf "%s/after", $i; comma=1 } } } END { printf "\n" }') + AC_DEFINE_UNQUOTED(RUNTIME_GLOBAL, "$RUNTIME_GLOBAL") + AC_DEFINE_UNQUOTED(RUNTIME_GLOBAL_AFTER, "$RUNTIME_GLOBAL_AFTER") + fi + AC_MSG_CHECKING(--with-modified-by argument) AC_ARG_WITH(modified-by, [ --with-modified-by=NAME name of who modified a release version], AC_MSG_RESULT($withval); AC_DEFINE_UNQUOTED(MODIFIED_BY, "$withval"), *** ../vim-8.1.0611/src/feature.h 2018-12-14 12:18:07.764091572 +0100 --- src/feature.h 2018-12-21 11:36:38.369939450 +0100 *************** *** 973,979 **** #endif /* ! * RUNTIME_GLOBAL Directory name for global Vim runtime directory. * Don't define this if the preprocessor can't handle * string concatenation. * Also set by "--with-global-runtime" configure argument. --- 973,980 ---- #endif /* ! * RUNTIME_GLOBAL Comma-separated list of directory names for global Vim ! * runtime directories. * Don't define this if the preprocessor can't handle * string concatenation. * Also set by "--with-global-runtime" configure argument. *************** *** 981,986 **** --- 982,996 ---- /* #define RUNTIME_GLOBAL "/etc/vim" */ /* + * RUNTIME_GLOBAL_AFTER Comma-separated list of directory names for global Vim + * runtime after directories. + * Don't define this if the preprocessor can't handle + * string concatenation. + * Also set by "--with-global-runtime" configure argument. + */ + /* #define RUNTIME_GLOBAL_AFTER "/etc/vim/after" */ + + /* * MODIFIED_BY Name of who modified Vim. Required when distributing * a modified version of Vim. * Also from the "--with-modified-by" configure argument. *** ../vim-8.1.0611/src/os_unix.h 2018-08-11 13:57:16.215969777 +0200 --- src/os_unix.h 2018-12-21 11:36:38.369939450 +0100 *************** *** 369,376 **** # define CLEAN_RUNTIMEPATH "$VIM/vimfiles,$VIMRUNTIME,$VIM/vimfiles/after" #else # ifdef RUNTIME_GLOBAL ! # define DFLT_RUNTIMEPATH "~/.vim," RUNTIME_GLOBAL ",$VIMRUNTIME," RUNTIME_GLOBAL "/after,~/.vim/after" ! # define CLEAN_RUNTIMEPATH RUNTIME_GLOBAL ",$VIMRUNTIME," RUNTIME_GLOBAL "/after" # else # define DFLT_RUNTIMEPATH "~/.vim,$VIM/vimfiles,$VIMRUNTIME,$VIM/vimfiles/after,~/.vim/after" # define CLEAN_RUNTIMEPATH "$VIM/vimfiles,$VIMRUNTIME,$VIM/vimfiles/after" --- 369,381 ---- # define CLEAN_RUNTIMEPATH "$VIM/vimfiles,$VIMRUNTIME,$VIM/vimfiles/after" #else # ifdef RUNTIME_GLOBAL ! # ifdef RUNTIME_GLOBAL_AFTER ! # define DFLT_RUNTIMEPATH "~/.vim," RUNTIME_GLOBAL ",$VIMRUNTIME," RUNTIME_GLOBAL_AFTER ",~/.vim/after" ! # define CLEAN_RUNTIMEPATH RUNTIME_GLOBAL ",$VIMRUNTIME," RUNTIME_GLOBAL_AFTER ! # else ! # define DFLT_RUNTIMEPATH "~/.vim," RUNTIME_GLOBAL ",$VIMRUNTIME," RUNTIME_GLOBAL "/after,~/.vim/after" ! # define CLEAN_RUNTIMEPATH RUNTIME_GLOBAL ",$VIMRUNTIME," RUNTIME_GLOBAL "/after" ! # endif # else # define DFLT_RUNTIMEPATH "~/.vim,$VIM/vimfiles,$VIMRUNTIME,$VIM/vimfiles/after,~/.vim/after" # define CLEAN_RUNTIMEPATH "$VIM/vimfiles,$VIMRUNTIME,$VIM/vimfiles/after" *** ../vim-8.1.0611/src/auto/configure 2018-12-12 20:34:06.072356129 +0100 --- src/auto/configure 2018-12-21 11:40:48.312141467 +0100 *************** *** 1533,1539 **** --with-vim-name=NAME what to call the Vim executable --with-ex-name=NAME what to call the Ex executable --with-view-name=NAME what to call the View executable ! --with-global-runtime=DIR global runtime directory in 'runtimepath' --with-modified-by=NAME name of who modified a release version --with-features=TYPE tiny, small, normal, big or huge (default: huge) --with-compiledby=NAME name to show in :version message --- 1533,1539 ---- --with-vim-name=NAME what to call the Vim executable --with-ex-name=NAME what to call the Ex executable --with-view-name=NAME what to call the View executable ! --with-global-runtime=DIR global runtime directory in 'runtimepath', comma-separated for multiple directories --with-modified-by=NAME name of who modified a release version --with-features=TYPE tiny, small, normal, big or huge (default: huge) --with-compiledby=NAME name to show in :version message *************** *** 4890,4906 **** # Check whether --with-global-runtime was given. if test "${with_global_runtime+set}" = set; then : ! withval=$with_global_runtime; { $as_echo "$as_me:${as_lineno-$LINENO}: result: $withval" >&5 ! $as_echo "$withval" >&6; }; cat >>confdefs.h <<_ACEOF ! #define RUNTIME_GLOBAL "$withval" ! _ACEOF ! else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking --with-modified-by argument" >&5 $as_echo_n "checking --with-modified-by argument... " >&6; } --- 4890,4915 ---- # Check whether --with-global-runtime was given. if test "${with_global_runtime+set}" = set; then : ! withval=$with_global_runtime; RUNTIME_GLOBAL="$withval"; { $as_echo "$as_me:${as_lineno-$LINENO}: result: $withval" >&5 ! $as_echo "$withval" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi + if test "X$RUNTIME_GLOBAL" != "X"; then + RUNTIME_GLOBAL_AFTER=$(printf -- "$RUNTIME_GLOBAL\\n" | $AWK -F, 'BEGIN { comma=0 } { for (i = NF; i > 0; i--) { if (comma) { printf ",%s/after", $i } else { printf "%s/after", $i; comma=1 } } } END { printf "\n" }') + cat >>confdefs.h <<_ACEOF + #define RUNTIME_GLOBAL "$RUNTIME_GLOBAL" + _ACEOF + + cat >>confdefs.h <<_ACEOF + #define RUNTIME_GLOBAL_AFTER "$RUNTIME_GLOBAL_AFTER" + _ACEOF + + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: checking --with-modified-by argument" >&5 $as_echo_n "checking --with-modified-by argument... " >&6; } *** ../vim-8.1.0611/src/Makefile 2018-12-19 21:05:53.912800490 +0100 --- src/Makefile 2018-12-21 11:46:23.097728323 +0100 *************** *** 317,328 **** # You can give a lot of options to configure. # Change this to your desire and do 'make config' afterwards ! # examples (can only use one!): ! #CONF_ARGS = --exec-prefix=/usr ! #CONF_ARGS = --with-vim-name=vim7 --with-ex-name=ex7 --with-view-name=view7 ! #CONF_ARGS = --with-global-runtime=/etc/vim ! #CONF_ARGS = --with-local-dir=/usr/share ! #CONF_ARGS = --without-local-dir # Use this one if you distribute a modified version of Vim. #CONF_ARGS = --with-modified-by="John Doe" --- 317,329 ---- # You can give a lot of options to configure. # Change this to your desire and do 'make config' afterwards ! # examples: ! #CONF_ARGS1 = --exec-prefix=/usr ! #CONF_ARGS2 = --with-vim-name=vim8 --with-ex-name=ex8 --with-view-name=view8 ! #CONF_ARGS3 = --with-global-runtime=/etc/vim,/usr/share/vim ! #CONF_ARGS4 = --with-local-dir=/usr/share ! #CONF_ARGS5 = --without-local-dir ! CONF_ARGS = $(CONF_ARGS1) $(CONF_ARGS2) $(CONF_ARGS3) $(CONF_ARGS4) $(CONF_ARGS5) # Use this one if you distribute a modified version of Vim. #CONF_ARGS = --with-modified-by="John Doe" *** ../vim-8.1.0611/src/version.c 2018-12-20 20:47:28.462655566 +0100 --- src/version.c 2018-12-21 11:46:36.993628084 +0100 *************** *** 801,802 **** --- 801,804 ---- { /* Add new patch number below this line */ + /**/ + 612, /**/ -- Due knot trussed yore spell chequer two fined awl miss steaks. /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ \\\ an exciting new programming language -- http://www.Zimbu.org /// \\\ help me help AIDS victims -- http://ICCF-Holland.org ///