To: vim_dev@googlegroups.com
Subject: Patch 7.3.381
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
------------

Patch 7.3.381
Problem:    Configure silently skips interfaces that won't work.
Solution:   Add the --enable-fail_if_missing argument. (Shlomi Fish)
Files:	    src/Makefile, src/configure.in, src/auto/configure


*** ../vim-7.3.380/src/Makefile	2011-12-08 15:17:28.000000000 +0100
--- src/Makefile	2011-12-14 20:49:26.000000000 +0100
***************
*** 389,394 ****
--- 389,399 ----
  #CONF_OPT_PLTHOME  = --with-plthome=/usr/local/drscheme
  #CONF_OPT_PLTHOME  = --with-plthome=/home/me/mz
  
+ # Uncomment the next line to fail if one of the requested language interfaces
+ # cannot be configured.  Without this Vim will be build anyway, without
+ # the failing interfaces.
+ #CONF_OPT_FAIL = --enable-fail-if-missing
+ 
  # PERL
  # Uncomment one of these when you want to include the Perl interface.
  # First one is for static linking, second one for dynamic loading.
***************
*** 1648,1654 ****
  		CC="$(CC)" CPPFLAGS="$(CPPFLAGS)" CFLAGS="$(CFLAGS)" \
  		LDFLAGS="$(LDFLAGS)" $(CONF_SHELL) srcdir="$(srcdir)" \
  		./configure $(CONF_OPT_GUI) $(CONF_OPT_X) $(CONF_OPT_XSMP) \
! 		$(CONF_OPT_DARWIN) $(CONF_OPT_PERL) $(CONF_OPT_PYTHON) $(CONF_OPT_PYTHON3) \
  		$(CONF_OPT_TCL) $(CONF_OPT_RUBY) $(CONF_OPT_NLS) \
  		$(CONF_OPT_CSCOPE) $(CONF_OPT_MULTIBYTE) $(CONF_OPT_INPUT) \
  		$(CONF_OPT_OUTPUT) $(CONF_OPT_GPM) $(CONF_OPT_WORKSHOP) \
--- 1653,1660 ----
  		CC="$(CC)" CPPFLAGS="$(CPPFLAGS)" CFLAGS="$(CFLAGS)" \
  		LDFLAGS="$(LDFLAGS)" $(CONF_SHELL) srcdir="$(srcdir)" \
  		./configure $(CONF_OPT_GUI) $(CONF_OPT_X) $(CONF_OPT_XSMP) \
! 		$(CONF_OPT_DARWIN) $(CONF_OPT_FAIL) \
! 		$(CONF_OPT_PERL) $(CONF_OPT_PYTHON) $(CONF_OPT_PYTHON3) \
  		$(CONF_OPT_TCL) $(CONF_OPT_RUBY) $(CONF_OPT_NLS) \
  		$(CONF_OPT_CSCOPE) $(CONF_OPT_MULTIBYTE) $(CONF_OPT_INPUT) \
  		$(CONF_OPT_OUTPUT) $(CONF_OPT_GPM) $(CONF_OPT_WORKSHOP) \
*** ../vim-7.3.380/src/configure.in	2011-12-14 19:22:29.000000000 +0100
--- src/configure.in	2011-12-14 20:46:36.000000000 +0100
***************
*** 28,33 ****
--- 28,43 ----
  AC_HEADER_STDC
  AC_HEADER_SYS_WAIT
  
+ dnl Check for the flag that fails if stuff are missing.
+ 
+ AC_MSG_CHECKING(--enable-fail-if-missing argument)
+ AC_ARG_ENABLE(fail_if_missing,
+ 	[  --enable-fail-if-missing    Fail if dependencies on additional features
+      specified on the command line are missing.], 
+ 	[fail_if_missing="yes"],
+ 	[fail_if_missing="no"])
+ AC_MSG_RESULT($fail_if_missing)
+ 
  dnl Set default value for CFLAGS if none is defined or it's empty
  if test -z "$CFLAGS"; then
    CFLAGS="-O"
***************
*** 491,496 ****
--- 501,509 ----
        LUA_CFLAGS="-DDYNAMIC_LUA_DLL=\\\"liblua${vi_cv_version_lua}.so$LUA_SONAME\\\" $LUA_CFLAGS"
      fi
    fi
+   if test "$fail_if_missing" = "yes" -a -z "$LUA_SRC"; then
+     AC_MSG_ERROR([could not configure lua])
+   fi
    AC_SUBST(LUA_SRC)
    AC_SUBST(LUA_OBJ)
    AC_SUBST(LUA_PRO)
***************
*** 781,786 ****
--- 794,803 ----
        PERL_CFLAGS="-DDYNAMIC_PERL_DLL=\\\"$libperl\\\" $PERL_CFLAGS"
      fi
    fi
+ 
+   if test "$fail_if_missing" = "yes" -a "$perl_ok" != "yes"; then
+     AC_MSG_ERROR([could not configure perl])
+   fi
  fi
  AC_SUBST(shrpenv)
  AC_SUBST(PERL_SRC)
***************
*** 966,971 ****
--- 983,992 ----
        AC_MSG_RESULT(too old)
      fi
    fi
+ 
+   if test "$fail_if_missing" = "yes" -a "$python_ok" != "yes"; then
+     AC_MSG_ERROR([could not configure python])
+   fi
  fi
  
  AC_SUBST(PYTHON_CONFDIR)
***************
*** 1389,1394 ****
--- 1410,1418 ----
        AC_MSG_RESULT(too old; need Tcl version 8.0 or later)
      fi
    fi
+   if test "$fail_if_missing" = "yes" -a -z "$TCL_SRC"; then
+     AC_MSG_ERROR([could not configure Tcl])
+   fi
  fi
  AC_SUBST(TCL_SRC)
  AC_SUBST(TCL_OBJ)
***************
*** 1469,1474 ****
--- 1493,1502 ----
        AC_MSG_RESULT(too old; need Ruby version 1.6.0 or later)
      fi
    fi
+ 
+   if test "$fail_if_missing" = "yes" -a -z "$RUBY_OBJ"; then
+     AC_MSG_ERROR([could not configure Ruby])
+   fi
  fi
  AC_SUBST(RUBY_SRC)
  AC_SUBST(RUBY_OBJ)
*** ../vim-7.3.380/src/auto/configure	2011-12-14 19:22:29.000000000 +0100
--- src/auto/configure	2011-12-14 20:49:51.000000000 +0100
***************
*** 741,746 ****
--- 741,747 ----
  ac_subst_files=''
  ac_user_opts='
  enable_option_checking
+ enable_fail_if_missing
  enable_darwin
  with_mac_arch
  with_developer_dir
***************
*** 1418,1423 ****
--- 1419,1426 ----
    --disable-option-checking  ignore unrecognized --enable/--with options
    --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
    --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
+   --enable-fail-if-missing    Fail if dependencies on additional features
+      specified on the command line are missing.
    --disable-darwin        Disable Darwin (Mac OS X) support.
    --disable-selinux	  Don't check for SELinux support.
    --disable-xsmp          Disable XSMP session management
***************
*** 3949,3954 ****
--- 3952,3970 ----
  fi
  
  
+ 
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking --enable-fail-if-missing argument" >&5
+ $as_echo_n "checking --enable-fail-if-missing argument... " >&6; }
+ # Check whether --enable-fail_if_missing was given.
+ if test "${enable_fail_if_missing+set}" = set; then :
+   enableval=$enable_fail_if_missing; fail_if_missing="yes"
+ else
+   fail_if_missing="no"
+ fi
+ 
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $fail_if_missing" >&5
+ $as_echo "$fail_if_missing" >&6; }
+ 
  if test -z "$CFLAGS"; then
    CFLAGS="-O"
    test "$GCC" = yes && CFLAGS="-O2 -fno-strength-reduce -Wall"
***************
*** 4727,4732 ****
--- 4743,4751 ----
        LUA_CFLAGS="-DDYNAMIC_LUA_DLL=\\\"liblua${vi_cv_version_lua}.so$LUA_SONAME\\\" $LUA_CFLAGS"
      fi
    fi
+   if test "$fail_if_missing" = "yes" -a -z "$LUA_SRC"; then
+     as_fn_error "could not configure lua" "$LINENO" 5
+   fi
  
  
  
***************
*** 5140,5145 ****
--- 5159,5168 ----
        PERL_CFLAGS="-DDYNAMIC_PERL_DLL=\\\"$libperl\\\" $PERL_CFLAGS"
      fi
    fi
+ 
+   if test "$fail_if_missing" = "yes" -a "$perl_ok" != "yes"; then
+     as_fn_error "could not configure perl" "$LINENO" 5
+   fi
  fi
  
  
***************
*** 5429,5434 ****
--- 5452,5461 ----
  $as_echo "too old" >&6; }
      fi
    fi
+ 
+   if test "$fail_if_missing" = "yes" -a "$python_ok" != "yes"; then
+     as_fn_error "could not configure python" "$LINENO" 5
+   fi
  fi
  
  
***************
*** 6216,6221 ****
--- 6243,6251 ----
  $as_echo "too old; need Tcl version 8.0 or later" >&6; }
      fi
    fi
+   if test "$fail_if_missing" = "yes" -a -z "$TCL_SRC"; then
+     as_fn_error "could not configure Tcl" "$LINENO" 5
+   fi
  fi
  
  
***************
*** 6353,6358 ****
--- 6383,6392 ----
  $as_echo "too old; need Ruby version 1.6.0 or later" >&6; }
      fi
    fi
+ 
+   if test "$fail_if_missing" = "yes" -a -z "$RUBY_OBJ"; then
+     as_fn_error "could not configure Ruby" "$LINENO" 5
+   fi
  fi
  
  
*** ../vim-7.3.380/src/version.c	2011-12-14 20:21:29.000000000 +0100
--- src/version.c	2011-12-14 20:50:42.000000000 +0100
***************
*** 716,717 ****
--- 716,719 ----
  {   /* Add new patch number below this line */
+ /**/
+     381,
  /**/

-- 
The psychic said, "God bless you."  I said, "I didn't sneeze."  She
looked deep into my eyes and said, "You will, eventually."  And, damn
if she wasn't right.  Two days later, I sneezed.  --Ellen Degeneres

 /// 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    ///
