diff --git a/src/MacVim/vimrc b/src/MacVim/vimrc
index 162af04..4322049 100644
--- a/src/MacVim/vimrc
+++ b/src/MacVim/vimrc
@@ -9,45 +9,7 @@ set nocompatible
 " more sensible value.  Add "set backspace&" to your ~/.vimrc to reset it.
 set backspace+=indent,eol,start
 
-" Python2
-" MacVim is configured by default in the binary release to use the
-" pre-installed System python2 version. However, following code tries to
-" find a Homebrew, MacPorts or an installation from python.org:
-if exists("&pythondll") && exists("&pythonhome")
-  " Homebrew python 2.7
-  if filereadable("/usr/local/Frameworks/Python.framework/Versions/2.7/Python")
-    set pythondll=/usr/local/Frameworks/Python.framework/Versions/2.7/Python
-
-  " MacPorts python 2.7
-  elseif filereadable("/opt/local/Library/Frameworks/Python.framework/Versions/2.7/Python")
-    set pythondll=/opt/local/Library/Frameworks/Python.framework/Versions/2.7/Python
-
-  " https://www.python.org/downloads/mac-osx/
-  elseif filereadable("/Library/Frameworks/Python.framework/Versions/2.7/Python")
-    set pythondll=/Library/Frameworks/Python.framework/Versions/2.7/Python
-  endif
-endif
-
-" Python3
-" MacVim is configured by default in the binary release to set
-" pythonthreedll to Homebrew python3. If it cannot be found, the following
-" code tries to find Python3 from other popular locations.  Note that we are
-" using "Current" for the version, because Vim supports the stable ABI and
-" therefore any new version of Python3 will work.
-if exists("&pythonthreedll") && exists("&pythonthreehome") &&
-      \ !filereadable(&pythonthreedll)
-  " MacPorts python
-  if filereadable("/opt/local/Library/Frameworks/Python.framework/Versions/Current/Python")
-    set pythonthreedll=/opt/local/Library/Frameworks/Python.framework/Versions/Current/Python
-
-  " macOS default Python, installed by 'xcode-select --install'
-  elseif filereadable("/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/Current/Python3")
-    set pythonthreedll=/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/Current/Python3
-
-  " https://www.python.org/downloads/mac-osx/
-  elseif filereadable("/Library/Frameworks/Python.framework/Versions/Current/Python")
-    set pythonthreedll=/Library/Frameworks/Python.framework/Versions/Current/Python
-  endif
-endif
+" Default cscopeprg to the Nix-installed path
+set cscopeprg=@CSCOPE@
 
 " vim: sw=2 ts=2 et
diff --git a/src/Makefile b/src/Makefile
index 5b4cdff..72fee3a 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -1290,7 +1290,7 @@ MACVIMGUI_SRC	= gui.c gui_beval.c MacVim/gui_macvim.m MacVim/MMBackend.m \
 		  MacVim/MacVim.m
 MACVIMGUI_OBJ	= objects/gui.o objects/gui_beval.o \
 		  objects/gui_macvim.o objects/MMBackend.o objects/MacVim.o
-MACVIMGUI_DEFS	= -DFEAT_GUI_MACVIM -Wall -Wno-unknown-pragmas -pipe
+MACVIMGUI_DEFS	= -DMACOS_X_DARWIN -DFEAT_GUI_MACVIM -Wall -Wno-unknown-pragmas -pipe
 MACVIMGUI_IPATH	=
 MACVIMGUI_LIBS_DIR =
 MACVIMGUI_LIBS1	=
diff --git a/src/auto/configure b/src/auto/configure
index ecf10c4..4b691d0 100755
--- a/src/auto/configure
+++ b/src/auto/configure
@@ -6247,10 +6247,7 @@ printf "%s\n" "not found" >&6; }
 
     for path in "${vi_cv_path_mzscheme_pfx}/lib" "${SCHEME_LIB}"; do
       if test "X$path" != "X"; then
-	if test "x$MACOS_X" = "xyes"; then
-	  MZSCHEME_LIBS="-framework Racket"
-	  MZSCHEME_CFLAGS="-DMZ_PRECISE_GC"
-	elif test -f "${path}/libmzscheme3m.a"; then
+	if test -f "${path}/libmzscheme3m.a"; then
 	  MZSCHEME_LIBS="${path}/libmzscheme3m.a"
 	  MZSCHEME_CFLAGS="-DMZ_PRECISE_GC"
 	elif test -f "${path}/libracket3m.a"; then
@@ -6646,23 +6643,6 @@ printf "%s\n" ">>> too old; need Perl version 5.003_01 or later <<<" >&6; }
   fi
 
   if test "x$MACOS_X" = "xyes"; then
-        dir=/System/Library/Perl
-    darwindir=$dir/darwin
-    if test -d $darwindir; then
-      PERL=/usr/bin/perl
-    else
-            dir=/System/Library/Perl/5.8.1
-      darwindir=$dir/darwin-thread-multi-2level
-      if test -d $darwindir; then
-	PERL=/usr/bin/perl
-      fi
-    fi
-    if test -n "$PERL"; then
-      PERL_DIR="$dir"
-      PERL_CFLAGS="-DFEAT_PERL -I$darwindir/CORE"
-      PERL_OBJ="objects/if_perl.o objects/if_perlsfio.o $darwindir/auto/DynaLoader/DynaLoader.a"
-      PERL_LIBS="-L$darwindir/CORE -lperl"
-    fi
                 PERL_LIBS=`echo "$PERL_LIBS" | sed -e 's/-arch\ ppc//' -e 's/-arch\ i386//' -e 's/-arch\ x86_64//'`
     PERL_CFLAGS=`echo "$PERL_CFLAGS" | sed -e 's/-arch\ ppc//' -e 's/-arch\ i386//' -e 's/-arch\ x86_64//'`
   fi
@@ -6902,13 +6882,7 @@ __:
 eof
 	    	    eval "`cd ${PYTHON_CONFDIR} && make -f "${tmp_mkf}" __ | sed '/ directory /d'`"
 	    rm -f -- "${tmp_mkf}"
-	    if test "x$MACOS_X" = "xyes" && test -n "${python_PYTHONFRAMEWORK}" && ${vi_cv_path_python} -c \
-		"import sys; sys.exit(${vi_cv_var_python_version} < 2.3)"; then
-	      vi_cv_path_python_plibs="-framework Python"
-	      if test "x${vi_cv_path_python}" != "x/usr/bin/python" && test -n "${python_PYTHONFRAMEWORKPREFIX}"; then
-		  vi_cv_path_python_plibs="-F${python_PYTHONFRAMEWORKPREFIX} -framework Python"
-	      fi
-	    else
+
 	      vi_cv_path_python_plibs="-L${PYTHON_CONFDIR} -lpython${vi_cv_var_python_version}"
 	      	      	      	      if test -n "${python_LINKFORSHARED}" && test -n "${python_PYTHONFRAMEWORKPREFIX}"; then
 	        python_link_symbol=`echo ${python_LINKFORSHARED} | sed 's/\([^ \t][^ \t]*[ \t][ \t]*[^ \t][^ \t]*\)[ \t].*/\1/'`
@@ -6923,7 +6897,6 @@ eof
 	      fi
 	      vi_cv_path_python_plibs="${vi_cv_path_python_plibs} ${python_BASEMODLIBS} ${python_LIBS} ${python_SYSLIBS} ${python_LINKFORSHARED}"
 	      	      vi_cv_path_python_plibs=`echo $vi_cv_path_python_plibs | sed s/-ltermcap//`
-	    fi
 
 fi
 
@@ -7004,13 +6977,6 @@ rm -f core conftest.err conftest.$ac_objext conftest.beam \
 printf "%s\n" "no" >&6; }
 	fi
 
-                                if test -n "$MACSDK"; then
-          PYTHON_CFLAGS=
-          PYTHON_LIBS=-framework Python
-          PYTHON_CONFDIR=
-          PYTHON_GETPATH_CFLAGS=
-        fi
-
 			{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if compile and link flags for Python are sane" >&5
 printf %s "checking if compile and link flags for Python are sane... " >&6; }
 	cflags_save=$CFLAGS
@@ -8060,11 +8026,7 @@ printf "%s\n" "$tclver - OK" >&6; };
 
       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for location of Tcl include" >&5
 printf %s "checking for location of Tcl include... " >&6; }
-      if test "x$MACOS_X" != "xyes"; then
 	tclinc="$tclloc/include $tclloc/include/tcl $tclloc/include/tcl$tclver /usr/local/include /usr/local/include/tcl$tclver /usr/include /usr/include/tcl$tclver"
-      else
-				tclinc="$tclloc/include $tclloc/include/tcl $tclloc/include/tcl$tclver /System/Library/Frameworks/Tcl.framework/Headers `xcrun --show-sdk-path`/System/Library/Frameworks/Tcl.framework/Versions/Current/Headers"
-      fi
       TCL_INC=
       for try in $tclinc; do
 	if test -f "$try/tcl.h"; then
@@ -8082,13 +8044,8 @@ printf "%s\n" "<not found>" >&6; }
       if test -z "$SKIP_TCL"; then
 	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for location of tclConfig.sh script" >&5
 printf %s "checking for location of tclConfig.sh script... " >&6; }
-	if test "x$MACOS_X" != "xyes"; then
 	  tclcnf=`echo $tclinc | sed s/include/lib/g`
 	  tclcnf="$tclcnf `echo $tclinc | sed s/include/lib64/g`"
-	else
-	  	  	  	  tclcnf=`echo $tclinc | sed s/include/lib/g`
-	  tclcnf="$tclcnf /System/Library/Frameworks/Tcl.framework `xcrun --show-sdk-path`/System/Library/Frameworks/Tcl.framework"
-	fi
 	for try in $tclcnf; do
 	  if test -f "$try/tclConfig.sh"; then
 	    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $try/tclConfig.sh" >&5
@@ -8285,10 +8242,6 @@ printf "%s\n" "$rubyhdrdir" >&6; }
 	rubylibdir=`$vi_cv_path_ruby -r rbconfig -e "print $ruby_rbconfig.expand($ruby_rbconfig::CONFIG['libdir'])"`
 	if test -f "$rubylibdir/$librubya" || expr "$librubyarg" : "-lruby"; then
 	  RUBY_LIBS="$RUBY_LIBS -L$rubylibdir"
-        elif test "$vi_cv_path_ruby" = "/usr/bin/ruby" -a -d "/System/Library/Frameworks/Ruby.framework"; then
-                        RUBY_LIBS="-framework Ruby"
-                        RUBY_CFLAGS="$RUBY_CFLAGS -DRUBY_VERSION=$rubyversion"
-            librubyarg=
 	fi
 
 	if test "X$librubyarg" != "X"; then
diff --git a/src/vim.h b/src/vim.h
index 6e33142..6185f45 100644
--- a/src/vim.h
+++ b/src/vim.h
@@ -270,17 +270,6 @@
 # define SUN_SYSTEM
 #endif
 
-// If we're compiling in C++ (currently only KVim), the system
-// headers must have the correct prototypes or nothing will build.
-// Conversely, our prototypes might clash due to throw() specifiers and
-// cause compilation failures even though the headers are correct.  For
-// a concrete example, gcc-3.2 enforces exception specifications, and
-// glibc-2.2.5 has them in their system headers.
-#if !defined(__cplusplus) && defined(UNIX) \
-	&& !defined(MACOS_X) // MACOS_X doesn't yet support osdef.h
-# include "auto/osdef.h"	// bring missing declarations in
-#endif
-
 #ifdef AMIGA
 # include "os_amiga.h"
 #endif
diff --git a/src/vimtutor b/src/vimtutor
index 3b154f2..e89f260 100755
--- a/src/vimtutor
+++ b/src/vimtutor
@@ -16,7 +16,7 @@ seq="vim vim81 vim80 vim8 vim74 vim73 vim72 vim71 vim70 vim7 vim6 vi"
 if test "$1" = "-g"; then
     # Try to use the GUI version of Vim if possible, it will fall back
     # on Vim if Gvim is not installed.
-    seq="gvim gvim81 gvim80 gvim8 gvim74 gvim73 gvim72 gvim71 gvim70 gvim7 gvim6 $seq"
+    seq="mvim gvim gvim81 gvim80 gvim8 gvim74 gvim73 gvim72 gvim71 gvim70 gvim7 gvim6 $seq"
     shift
 fi