diff --git a/pkgs/applications/editors/vim/macvim-sparkle.patch b/pkgs/applications/editors/vim/macvim-sparkle.patch new file mode 100644 index 00000000000..e0ba5145b3e --- /dev/null +++ b/pkgs/applications/editors/vim/macvim-sparkle.patch @@ -0,0 +1,106 @@ +diff --git a/src/MacVim/English.lproj/MainMenu.nib/designable.nib b/src/MacVim/English.lproj/MainMenu.nib/designable.nib +index bdbcfdb9e..5efc78ab6 100644 +--- a/src/MacVim/English.lproj/MainMenu.nib/designable.nib ++++ b/src/MacVim/English.lproj/MainMenu.nib/designable.nib +@@ -24,11 +24,6 @@ + + + +- +- +- +- +- + + + +@@ -206,6 +201,5 @@ + + + +- + + +diff --git a/src/MacVim/English.lproj/Preferences.nib/designable.nib b/src/MacVim/English.lproj/Preferences.nib/designable.nib +index 889450913..38afc3416 100644 +--- a/src/MacVim/English.lproj/Preferences.nib/designable.nib ++++ b/src/MacVim/English.lproj/Preferences.nib/designable.nib +@@ -88,14 +88,10 @@ + + + Checks for updates and presents a dialog box showing the release notes and prompt for whether you want to install the new version. +- ++ + + + +- +- +- +- + + + +@@ -186,16 +182,13 @@ + + + MacVim will automatically download and install updates without prompting. The updated version will be used the next time MacVim starts. +- ++ + + + + + + +- +- +- + + + +diff --git a/src/MacVim/MacVim.xcodeproj/project.pbxproj b/src/MacVim/MacVim.xcodeproj/project.pbxproj +index 648c4290d..c7dd99d1e 100644 +--- a/src/MacVim/MacVim.xcodeproj/project.pbxproj ++++ b/src/MacVim/MacVim.xcodeproj/project.pbxproj +@@ -66,8 +66,6 @@ + 1DFE25A50C527BC4003000F7 /* PSMTabBarControl.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D493DB90C52533B00AB718C /* PSMTabBarControl.framework */; }; + 52818B031C1C08CE00F59085 /* QLStephen.qlgenerator in Copy QuickLookPlugin */ = {isa = PBXBuildFile; fileRef = 52818AFF1C1C075300F59085 /* QLStephen.qlgenerator */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; }; + 528DA66A1426D4F9003380F1 /* macvim-askpass in Copy Scripts */ = {isa = PBXBuildFile; fileRef = 528DA6691426D4EB003380F1 /* macvim-askpass */; }; +- 52A364731C4A5789005757EC /* Sparkle.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 52A364721C4A5789005757EC /* Sparkle.framework */; }; +- 52A364761C4A57C1005757EC /* Sparkle.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = 52A364721C4A5789005757EC /* Sparkle.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + 52B7ED9B1C4A4D6900AFFF15 /* dsa_pub.pem in Resources */ = {isa = PBXBuildFile; fileRef = 52B7ED9A1C4A4D6900AFFF15 /* dsa_pub.pem */; }; + 8D11072A0486CEB800E47090 /* MainMenu.nib in Resources */ = {isa = PBXBuildFile; fileRef = 29B97318FDCFA39411CA2CEA /* MainMenu.nib */; }; + 8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */; }; +@@ -124,7 +122,6 @@ + dstPath = ""; + dstSubfolderSpec = 10; + files = ( +- 52A364761C4A57C1005757EC /* Sparkle.framework in Copy Frameworks */, + 1D493DBA0C52534300AB718C /* PSMTabBarControl.framework in Copy Frameworks */, + ); + name = "Copy Frameworks"; +@@ -250,7 +247,6 @@ + 32CA4F630368D1EE00C91783 /* MacVim_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MacVim_Prefix.pch; sourceTree = ""; }; + 52818AFA1C1C075300F59085 /* QuickLookStephen.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = QuickLookStephen.xcodeproj; path = qlstephen/QuickLookStephen.xcodeproj; sourceTree = ""; }; + 528DA6691426D4EB003380F1 /* macvim-askpass */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = "macvim-askpass"; sourceTree = ""; }; +- 52A364721C4A5789005757EC /* Sparkle.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Sparkle.framework; sourceTree = ""; }; + 52B7ED9A1C4A4D6900AFFF15 /* dsa_pub.pem */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = dsa_pub.pem; sourceTree = ""; }; + 8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = ""; }; + 8D1107320486CEB800E47090 /* MacVim.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = MacVim.app; sourceTree = BUILT_PRODUCTS_DIR; }; +@@ -264,7 +260,6 @@ + 1DFE25A50C527BC4003000F7 /* PSMTabBarControl.framework in Frameworks */, + 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */, + 1D8B5A53104AF9FF002E59D5 /* Carbon.framework in Frameworks */, +- 52A364731C4A5789005757EC /* Sparkle.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +@@ -443,7 +438,6 @@ + 29B97323FDCFA39411CA2CEA /* Frameworks */ = { + isa = PBXGroup; + children = ( +- 52A364721C4A5789005757EC /* Sparkle.framework */, + 1D8B5A52104AF9FF002E59D5 /* Carbon.framework */, + 1D493DB30C52533B00AB718C /* PSMTabBarControl.xcodeproj */, + 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */, diff --git a/pkgs/applications/editors/vim/macvim.nix b/pkgs/applications/editors/vim/macvim.nix index c97b17bd9af..ec2d75ffaf6 100644 --- a/pkgs/applications/editors/vim/macvim.nix +++ b/pkgs/applications/editors/vim/macvim.nix @@ -1,55 +1,73 @@ -{ stdenv, fetchFromGitHub, ncurses, gettext -, pkgconfig, python, ruby, tcl, perl, luajit +{ stdenv, fetchFromGitHub, runCommand, ncurses, gettext +, pkgconfig, cscope, ruby, tcl, perl, luajit , darwin + +, usePython27 ? false +, python27 ? null, python37 ? null }: +let + python = if usePython27 + then { pkg = python27; name = "python"; } + else { pkg = python37; name = "python3"; }; +in +assert python.pkg != null; + +let + # Building requires a few system tools to be in PATH. + # Some of these we could patch into the relevant source files (such as xcodebuild and + # qlmanage) but some are used by Xcode itself and we have no choice but to put them in PATH. + # Symlinking them in this way is better than just putting all of /usr/bin in there. + buildSymlinks = runCommand "macvim-build-symlinks" {} '' + mkdir -p $out/bin + ln -s /usr/bin/xcrun /usr/bin/xcodebuild /usr/bin/tiffutil /usr/bin/qlmanage $out/bin + ''; +in + stdenv.mkDerivation rec { name = "macvim-${version}"; - version = "7.4.909"; + version = "8.1.1517"; src = fetchFromGitHub { owner = "macvim-dev"; repo = "macvim"; - rev = "75aa7774645adb586ab9010803773bd80e659254"; - sha256 = "0k04jimbms6zffh8i8fjm2y51q01m5kga2n4djipd3pxij1qy89y"; + rev = "snapshot-156"; + sha256 = "17plmqcn49gqwr1km77mkxflrg0f4sn06r3n0fbxa8zcz9zmb1q2"; }; enableParallelBuilding = true; - nativeBuildInputs = [ pkgconfig ]; + nativeBuildInputs = [ pkgconfig buildSymlinks ]; buildInputs = [ - gettext ncurses luajit ruby tcl perl python + gettext ncurses cscope luajit ruby tcl perl python.pkg ]; - patches = [ ./macvim.patch ]; + patches = [ ./macvim.patch ./macvim-sparkle.patch ]; + # The sparkle patch modified the nibs, so we have to recompile them postPatch = '' - substituteInPlace src/MacVim/mvim --replace "# VIM_APP_DIR=/Applications" "VIM_APP_DIR=$out/Applications" - - # Don't create custom icons. - substituteInPlace src/MacVim/icons/Makefile --replace '$(MAKE) -C makeicns' "" - substituteInPlace src/MacVim/icons/make_icons.py --replace "dont_create = False" "dont_create = True" - - # Full path to xcodebuild - substituteInPlace src/Makefile --replace "xcodebuild" "/usr/bin/xcodebuild" + for nib in MainMenu Preferences; do + /usr/bin/ibtool --compile src/MacVim/English.lproj/$nib.nib/keyedobjects.nib src/MacVim/English.lproj/$nib.nib + done ''; configureFlags = [ - #"--enable-cscope" # TODO: cscope doesn't build on Darwin yet + "--enable-cscope" "--enable-fail-if-missing" "--with-features=huge" "--enable-gui=macvim" "--enable-multibyte" "--enable-nls" "--enable-luainterp=dynamic" - "--enable-pythoninterp=dynamic" + "--enable-${python.name}interp=dynamic" "--enable-perlinterp=dynamic" "--enable-rubyinterp=dynamic" "--enable-tclinterp=yes" "--without-local-dir" "--with-luajit" "--with-lua-prefix=${luajit}" + "--with-${python.name}-command=${python.pkg}/bin/${python.name}" "--with-ruby-command=${ruby}/bin/ruby" "--with-tclsh=${tcl}/bin/tclsh" "--with-tlib=ncurses" @@ -58,8 +76,8 @@ stdenv.mkDerivation rec { makeFlags = ''PREFIX=$(out) CPPFLAGS="-Wno-error"''; - # This is unfortunate, but we need to use the same compiler as XCode, - # but XCode doesn't provide a way to configure the compiler. + # This is unfortunate, but we need to use the same compiler as Xcode, + # but Xcode doesn't provide a way to configure the compiler. # # If you're willing to modify the system files, you can do this: # http://hamelot.co.uk/programming/add-gcc-compiler-to-xcode-6/ @@ -72,10 +90,18 @@ stdenv.mkDerivation rec { configureFlagsArray+=( "--with-developer-dir=$DEV_DIR" ) - ''; + '' + # For some reason having LD defined causes PSMTabBarControl to fail at link-time as it + # passes arguments to ld that it meant for clang. + + '' + unset LD + '' + ; postConfigure = '' substituteInPlace src/auto/config.mk --replace "PERL_CFLAGS =" "PERL_CFLAGS = -I${darwin.libutil}/include" + + substituteInPlace src/MacVim/vimrc --subst-var-by CSCOPE ${cscope}/bin/cscope ''; postInstall = '' @@ -83,13 +109,11 @@ stdenv.mkDerivation rec { cp -r src/MacVim/build/Release/MacVim.app $out/Applications rm -rf $out/MacVim.app - rm $out/bin/{Vimdiff,Vimtutor,Vim,ex,rVim,rview,view} + rm $out/bin/* - cp src/MacVim/mvim $out/bin cp src/vimtutor $out/bin - - for prog in "vimdiff" "vi" "vim" "ex" "rvim" "rview" "view"; do - ln -s $out/bin/mvim $out/bin/$prog + for prog in mvim ex vi vim vimdiff view rvim rvimdiff rview; do + ln -s $out/Applications/MacVim.app/Contents/bin/mvim $out/bin/$prog done # Fix rpaths @@ -97,17 +121,19 @@ stdenv.mkDerivation rec { libperl=$(dirname $(find ${perl} -name "libperl.dylib")) install_name_tool -add_rpath ${luajit}/lib $exe install_name_tool -add_rpath ${tcl}/lib $exe - install_name_tool -add_rpath ${python}/lib $exe + install_name_tool -add_rpath ${python.pkg}/lib $exe install_name_tool -add_rpath $libperl $exe install_name_tool -add_rpath ${ruby}/lib $exe + + # Remove manpages from tools we aren't providing + find $out/share/man \( -name eVim.1 -or -name xxd.1 \) -delete ''; meta = with stdenv.lib; { - broken = true; # needs ruby 2.2 description = "Vim - the text editor - for macOS"; - homepage = https://github.com/b4winckler/macvim; + homepage = https://github.com/macvim-dev/macvim; license = licenses.vim; - maintainers = with maintainers; [ cstrahan ]; + maintainers = with maintainers; [ cstrahan lilyball ]; platforms = platforms.darwin; }; } diff --git a/pkgs/applications/editors/vim/macvim.patch b/pkgs/applications/editors/vim/macvim.patch index e8f34aba537..8cb96a9ebba 100644 --- a/pkgs/applications/editors/vim/macvim.patch +++ b/pkgs/applications/editors/vim/macvim.patch @@ -1,65 +1,98 @@ diff --git a/src/MacVim/MacVim.xcodeproj/project.pbxproj b/src/MacVim/MacVim.xcodeproj/project.pbxproj -index c384bf7..bf1ce96 100644 +index e519018de..556a4127d 100644 --- a/src/MacVim/MacVim.xcodeproj/project.pbxproj +++ b/src/MacVim/MacVim.xcodeproj/project.pbxproj -@@ -437,6 +437,8 @@ - /* Begin PBXProject section */ - 29B97313FDCFA39411CA2CEA /* Project object */ = { - isa = PBXProject; -+ attributes = { -+ }; - buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "MacVim" */; - compatibilityVersion = "Xcode 2.4"; - developmentRegion = English; -@@ -632,6 +634,7 @@ - INSTALL_PATH = "$(HOME)/Applications"; +@@ -1007,6 +1007,7 @@ + LD_RUNPATH_SEARCH_PATHS = "@loader_path/../Frameworks"; MACOSX_DEPLOYMENT_TARGET = ""; ONLY_ACTIVE_ARCH = YES; + OTHER_LDFLAGS = "-headerpad_max_install_names"; + PRODUCT_BUNDLE_IDENTIFIER = org.vim.MacVim; PRODUCT_NAME = MacVim; VERSIONING_SYSTEM = "apple-generic"; - WARNING_CFLAGS = "-Wall"; -@@ -662,6 +665,7 @@ - INSTALL_PATH = "$(HOME)/Applications"; +@@ -1039,6 +1040,7 @@ + LD_RUNPATH_SEARCH_PATHS = "@loader_path/../Frameworks"; MACOSX_DEPLOYMENT_TARGET = ""; ONLY_ACTIVE_ARCH = YES; + OTHER_LDFLAGS = "-headerpad_max_install_names"; + PRODUCT_BUNDLE_IDENTIFIER = org.vim.MacVim; PRODUCT_NAME = MacVim; VERSIONING_SYSTEM = "apple-generic"; - WRAPPER_EXTENSION = app; +diff --git a/src/MacVim/vimrc b/src/MacVim/vimrc +index 23a06bf37..dfb10fe94 100644 +--- a/src/MacVim/vimrc ++++ b/src/MacVim/vimrc +@@ -14,35 +14,5 @@ set backspace+=indent,eol,start + " translated to English). + set langmenu=none + +-" Python2 +-" MacVim is configured by default 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") +- if filereadable("/usr/local/Frameworks/Python.framework/Versions/2.7/Python") +- " Homebrew python 2.7 +- set pythondll=/usr/local/Frameworks/Python.framework/Versions/2.7/Python +- elseif filereadable("/opt/local/Library/Frameworks/Python.framework/Versions/2.7/Python") +- " MacPorts python 2.7 +- set pythondll=/opt/local/Library/Frameworks/Python.framework/Versions/2.7/Python +- elseif filereadable("/Library/Frameworks/Python.framework/Versions/2.7/Python") +- " https://www.python.org/downloads/mac-osx/ +- set pythondll=/Library/Frameworks/Python.framework/Versions/2.7/Python +- endif +-endif +- +-" Python3 +-" MacVim is configured by default to use Homebrew python3 version +-" If this cannot be found, following code tries to find a MacPorts +-" or an installation from python.org: +-if exists("&pythonthreedll") && exists("&pythonthreehome") && +- \ !filereadable(&pythonthreedll) +- if filereadable("/opt/local/Library/Frameworks/Python.framework/Versions/3.7/Python") +- " MacPorts python 3.7 +- set pythonthreedll=/opt/local/Library/Frameworks/Python.framework/Versions/3.7/Python +- elseif filereadable("/Library/Frameworks/Python.framework/Versions/3.7/Python") +- " https://www.python.org/downloads/mac-osx/ +- set pythonthreedll=/Library/Frameworks/Python.framework/Versions/3.7/Python +- endif +-endif +- ++" Default cscopeprg to the Nix-installed path ++set cscopeprg=@CSCOPE@ diff --git a/src/Makefile b/src/Makefile -index 84a93f7..e23196d 100644 +index 32810d0a7..13a05f349 100644 --- a/src/Makefile +++ b/src/Makefile -@@ -1306,7 +1306,7 @@ MACVIMGUI_SRC = gui.c gui_beval.c MacVim/gui_macvim.m MacVim/MMBackend.m \ +@@ -1385,7 +1385,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/pty.o \ + 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_UNIX -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 = -framework Cocoa -framework Carbon diff --git a/src/auto/configure b/src/auto/configure -index cdc0819..8e2fd16 100755 +index 9e6a82f4a..3c6d1a89b 100755 --- a/src/auto/configure +++ b/src/auto/configure -@@ -5383,10 +5383,7 @@ $as_echo "no" >&6; } +@@ -5829,10 +5829,7 @@ $as_echo "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 +@@ -6217,23 +6214,6 @@ $as_echo ">>> too old; need Perl version 5.003_01 or later <<<" >&6; } fi - if test "X$vi_cv_path_mzscheme_pfx" != "X"; then -- if test "x$MACOSX" = "xyes"; then -- MZSCHEME_LIBS="-framework Racket" -- MZSCHEME_CFLAGS="-DMZ_PRECISE_GC" -- elif test -f "${vi_cv_path_mzscheme_pfx}/lib/libmzscheme3m.a"; then -+ if test -f "${vi_cv_path_mzscheme_pfx}/lib/libmzscheme3m.a"; then - MZSCHEME_LIBS="${vi_cv_path_mzscheme_pfx}/lib/libmzscheme3m.a" - MZSCHEME_CFLAGS="-DMZ_PRECISE_GC" - elif test -f "${vi_cv_path_mzscheme_pfx}/lib/libracket3m.a"; then -@@ -5731,23 +5728,6 @@ $as_echo ">>> too old; need Perl version 5.003_01 or later <<<" >&6; } - fi - - if test "x$MACOSX" = "xyes"; then + if test "x$MACOS_X" = "xyes"; then - dir=/System/Library/Perl - darwindir=$dir/darwin - if test -d $darwindir; then @@ -80,21 +113,22 @@ index cdc0819..8e2fd16 100755 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 -@@ -5954,13 +5934,6 @@ __: +@@ -6456,13 +6436,7 @@ __: eof eval "`cd ${PYTHON_CONFDIR} && make -f "${tmp_mkf}" __ | sed '/ directory /d'`" rm -f -- "${tmp_mkf}" -- if test "x$MACOSX" = "xyes" && ${vi_cv_path_python} -c \ +- 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 - if test "${vi_cv_var_python_version}" = "1.4"; then - vi_cv_path_python_plibs="${PYTHON_CONFDIR}/libModules.a ${PYTHON_CONFDIR}/libPython.a ${PYTHON_CONFDIR}/libObjects.a ${PYTHON_CONFDIR}/libParser.a" - else -@@ -5979,7 +5952,6 @@ eof ++ + 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/'` +@@ -6477,7 +6451,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//` @@ -102,7 +136,7 @@ index cdc0819..8e2fd16 100755 fi -@@ -6055,13 +6027,6 @@ rm -f core conftest.err conftest.$ac_objext \ +@@ -6556,13 +6529,6 @@ rm -f core conftest.err conftest.$ac_objext \ $as_echo "no" >&6; } fi @@ -116,11 +150,11 @@ index cdc0819..8e2fd16 100755 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compile and link flags for Python are sane" >&5 $as_echo_n "checking if compile and link flags for Python are sane... " >&6; } cflags_save=$CFLAGS -@@ -6919,11 +6884,7 @@ $as_echo "$tclver - OK" >&6; }; +@@ -7456,11 +7422,7 @@ $as_echo "$tclver - OK" >&6; }; { $as_echo "$as_me:${as_lineno-$LINENO}: checking for location of Tcl include" >&5 $as_echo_n "checking for location of Tcl include... " >&6; } -- if test "x$MACOSX" != "xyes"; then +- 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="/System/Library/Frameworks/Tcl.framework/Headers" @@ -128,104 +162,63 @@ index cdc0819..8e2fd16 100755 TCL_INC= for try in $tclinc; do if test -f "$try/tcl.h"; then -@@ -6941,12 +6902,8 @@ $as_echo "" >&6; } +@@ -7478,12 +7440,8 @@ $as_echo "" >&6; } if test -z "$SKIP_TCL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for location of tclConfig.sh script" >&5 $as_echo_n "checking for location of tclConfig.sh script... " >&6; } -- if test "x$MACOSX" != "xyes"; then +- 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="/System/Library/Frameworks/Tcl.framework" - fi for try in $tclcnf; do - if test -f $try/tclConfig.sh; then + if test -f "$try/tclConfig.sh"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $try/tclConfig.sh" >&5 -@@ -7120,10 +7077,6 @@ $as_echo "$rubyhdrdir" >&6; } +@@ -7673,10 +7631,6 @@ $as_echo "$rubyhdrdir" >&6; } if test -f "$rubylibdir/$librubya"; then librubyarg="$librubyarg" RUBY_LIBS="$RUBY_LIBS -L$rubylibdir" -- elif test -d "/System/Library/Frameworks/Ruby.framework"; then +- elif test "$vi_cv_path_ruby" = "/usr/bin/ruby" -a -d "/System/Library/Frameworks/Ruby.framework"; then - RUBY_LIBS="-framework Ruby" -- RUBY_CFLAGS="-DRUBY_VERSION=$rubyversion" +- RUBY_CFLAGS="$RUBY_CFLAGS -DRUBY_VERSION=$rubyversion" - librubyarg= fi if test "X$librubyarg" != "X"; then -diff --git a/src/if_python.c b/src/if_python.c -index 1d87cac..9d28df0 100644 ---- a/src/if_python.c -+++ b/src/if_python.c -@@ -55,11 +55,7 @@ - - #define PY_SSIZE_T_CLEAN - --#ifdef FEAT_GUI_MACVIM --# include --#else --# include --#endif -+#include - - #if !defined(PY_VERSION_HEX) || PY_VERSION_HEX < 0x02050000 - # undef PY_SSIZE_T_CLEAN -diff --git a/src/if_ruby.c b/src/if_ruby.c -index 1deb83e..ac23878 100644 ---- a/src/if_ruby.c -+++ b/src/if_ruby.c -@@ -106,17 +106,9 @@ - # define rb_check_type rb_check_type_stub - #endif - --#ifdef FEAT_GUI_MACVIM --# include --#else --# include --#endif -+#include - #ifdef RUBY19_OR_LATER --# ifdef FEAT_GUI_MACVIM --# include --# else --# include --# endif -+# include - #endif - - #undef off_t /* ruby defines off_t as _int64, Mingw uses long */ diff --git a/src/vim.h b/src/vim.h -index 4c93908..edc6bd7 100644 +index cb5be6c97..b703b31cd 100644 --- a/src/vim.h +++ b/src/vim.h -@@ -308,18 +308,6 @@ - # define UNUSED +@@ -241,18 +241,6 @@ + # define SUN_SYSTEM #endif --/* if we're compiling in C++ (currently only KVim), the system +-/* 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 +- * 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 */ +- && !defined(MACOS_X) /* MACOS_X doesn't yet support osdef.h */ -# include "auto/osdef.h" /* bring missing declarations in */ -#endif - - #ifdef __EMX__ - # define getcwd _getcwd2 - # define chdir _chdir2 + #ifdef AMIGA + # include "os_amiga.h" + #endif diff --git a/src/vimtutor b/src/vimtutor -index 70d9ec7..b565a1a 100755 +index 1e8769b25..47078b0e7 100755 --- a/src/vimtutor +++ b/src/vimtutor -@@ -16,7 +16,7 @@ seq="vim vim8 vim75 vim74 vim73 vim72 vim71 vim70 vim7 vim6 vi" +@@ -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 gvim8 gvim75 gvim74 gvim73 gvim72 gvim71 gvim70 gvim7 gvim6 $seq" -+ seq="mvim gvim gvim8 gvim75 gvim74 gvim73 gvim72 gvim71 gvim70 gvim7 gvim6 $seq" +- 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