diff --git a/mc/4.7.5.2-ncursesw-term.h.patch b/mc/4.7.5.2-ncursesw-term.h.patch new file mode 100644 index 00000000..4716cb93 --- /dev/null +++ b/mc/4.7.5.2-ncursesw-term.h.patch @@ -0,0 +1,13 @@ +--- origsrc/mc-4.7.5.2/lib/tty/tty-ncurses.c 2011-04-08 03:55:56.000000000 -0500 ++++ src/mc-4.7.5.2/lib/tty/tty-ncurses.c 2011-07-10 21:28:07.525141000 -0500 +@@ -52,7 +52,9 @@ + + /* include at last !!! */ + #ifdef WANT_TERM_H +-#ifdef HAVE_NCURSES_TERM_H ++#if defined HAVE_NCURSESW_CURSES_H ++#include ++#elif defined HAVE_NCURSES_TERM_H + #include + #else + #include diff --git a/mc/PKGBUILD b/mc/PKGBUILD new file mode 100644 index 00000000..e59bf7a3 --- /dev/null +++ b/mc/PKGBUILD @@ -0,0 +1,80 @@ +# Maintainer: Alexey Pavlov + +pkgname=mc +pkgver=4.8.10 +pkgrel=1 +pkgdesc="Midnight Commander is a text based filemanager/shell that emulates Norton Commander" +arch=('i686' 'x86_64') +url="http://www.ibiblio.org/mc/" +license=('GPL') +depends=( + 'glib2' + 'libssh2') +makedepends=('glib2-devel' 'libssh2-devel') +optdepends=( + 'gawk: hp48+ extfs' + 'aspell: spelling corrections' + 'cvs: CVS support' + 'perl: needed by several extfs scripts' + 'unace: uace extfs' + 'unarj: uarj extfs' + 'unrar: urar extfs' + 'zip: uzip extfs' + 'p7zip: support for 7zip archives') +options=('!emptydirs' '!makeflags') +backup=('etc/mc/edit.indent.rc' + 'etc/mc/filehighlight.ini' + 'etc/mc/mcedit.menu' + 'etc/mc/mc.ext' + 'etc/mc/mc.keymap' + 'etc/mc/mc.menu' + 'etc/mc/sfs.ini') +source=("http://www.midnight-commander.org/downloads/${pkgname}-${pkgver}.tar.bz2" + "fs36962.patch" + 4.7.5.2-ncursesw-term.h.patch + mc-4.8.10-1.src.patch + mc-4.8.10-msys2.patch) + +prepare() { + cd "${srcdir}/${pkgname}-${pkgver}" + + patch -Np1 -i "${srcdir}/fs36962.patch" + patch -Np2 -i "${srcdir}/4.7.5.2-ncursesw-term.h.patch" + patch -Np2 -i "${srcdir}/mc-4.8.10-1.src.patch" + patch -Np1 -i "${srcdir}/mc-4.8.10-msys2.patch" +} + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + ./configure --build=${CHOST} \ + --prefix=/usr \ + --sysconfdir=/etc \ + --without-libintl-prefix \ + --without-libiconv-prefix \ + --with-screen=ncursesw \ + --enable-charset \ + --libexecdir=/usr/lib + + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + + make DESTDIR="${pkgdir}" install + mv -f ${pkgdir}/etc ${pkgdir}/usr/ + + # Fix FS#15177 + sed 's|op_has_zipinfo = 0|op_has_zipinfo = 1|' \ + -i "${pkgdir}/usr/lib/mc/extfs.d/uzip" + + sed 's#/usr/bin/env python#/usr/bin/python2#' \ + -i "${pkgdir}/usr/lib/mc/extfs.d/s3+" +} + +md5sums=('eb4bdc23abd4fdfa14911d53d65c8186' + '7f7cf5388a5390c2ed49965492f490aa' + '5b5e78b598b4405c1c4bcef055c78744' + '18b3279dc5663100ee757b5793c5304c' + '1f1094202c02faaa42ce215ba6a35a6c') diff --git a/mc/fs36962.patch b/mc/fs36962.patch new file mode 100644 index 00000000..0db5ed42 --- /dev/null +++ b/mc/fs36962.patch @@ -0,0 +1,77 @@ +diff -ur mc-4.8.10-orig/src/filemanager/file.c mc-4.8.10/src/filemanager/file.c +--- mc-4.8.10-orig/src/filemanager/file.c 2013-08-02 22:02:40.000000000 +0400 ++++ mc-4.8.10/src/filemanager/file.c 2013-09-17 09:59:30.699635407 +0400 +@@ -1272,8 +1272,8 @@ + + /** Initialize variables for progress bars */ + static FileProgressStatus +-panel_operate_init_totals (FileOperation operation, const WPanel * panel, const char *source, +- FileOpContext * ctx, filegui_dialog_type_t dialog_type) ++panel_operate_init_totals (const WPanel * panel, const char *source, FileOpContext * ctx, ++ filegui_dialog_type_t dialog_type) + { + FileProgressStatus status; + +@@ -1282,7 +1282,7 @@ + return FILE_CONT; + #endif + +- if (operation != OP_MOVE && verbose && file_op_compute_totals) ++ if (verbose && file_op_compute_totals) + { + ComputeDirSizeUI *ui; + +@@ -2378,13 +2378,6 @@ + mc_refresh (); + if (ctx->erase_at_end) + { +- /* remove files after move */ +- if (erase_list != NULL) +- { +- file_op_context_destroy_ui (ctx); +- file_op_context_create_ui (ctx, FALSE, FILEGUI_DIALOG_DELETE_ITEM); +- } +- + while (erase_list != NULL && return_status != FILE_ABORT) + { + struct link *lp = (struct link *) erase_list->data; +@@ -2792,14 +2785,12 @@ + { + if (operation == OP_DELETE) + dialog_type = FILEGUI_DIALOG_DELETE_ITEM; ++ else if (single_entry && S_ISDIR (selection (panel)->st.st_mode)) ++ dialog_type = FILEGUI_DIALOG_MULTI_ITEM; ++ else if (single_entry || force_single) ++ dialog_type = FILEGUI_DIALOG_ONE_ITEM; + else +- { +- dialog_type = ((operation != OP_COPY) || single_entry || force_single) +- ? FILEGUI_DIALOG_ONE_ITEM : FILEGUI_DIALOG_MULTI_ITEM; +- +- if (single_entry && (operation == OP_COPY) && S_ISDIR (selection (panel)->st.st_mode)) +- dialog_type = FILEGUI_DIALOG_MULTI_ITEM; +- } ++ dialog_type = FILEGUI_DIALOG_MULTI_ITEM; + } + + /* Initialize things */ +@@ -2844,8 +2835,8 @@ + else + source_with_vpath = vfs_path_append_new (panel->cwd_vpath, source, (char *) NULL); + #endif /* WITH_FULL_PATHS */ +- if (panel_operate_init_totals +- (operation, panel, vfs_path_as_str (source_with_vpath), ctx, dialog_type) == FILE_CONT) ++ if (panel_operate_init_totals (panel, vfs_path_as_str (source_with_vpath), ctx, dialog_type) ++ == FILE_CONT) + { + if (operation == OP_DELETE) + { +@@ -2936,7 +2927,7 @@ + goto clean_up; + } + +- if (panel_operate_init_totals (operation, panel, NULL, ctx, dialog_type) == FILE_CONT) ++ if (panel_operate_init_totals (panel, NULL, ctx, dialog_type) == FILE_CONT) + { + /* Loop for every file, perform the actual copy operation */ + for (i = 0; i < panel->count; i++) diff --git a/mc/mc-4.8.10-1.src.patch b/mc/mc-4.8.10-1.src.patch new file mode 100644 index 00000000..6ab15845 --- /dev/null +++ b/mc/mc-4.8.10-1.src.patch @@ -0,0 +1,33 @@ +--- origsrc/mc-4.8.10/src/filemanager/filegui.c 2013-08-02 17:02:39.000000000 +0200 ++++ src/mc-4.8.10/src/filemanager/filegui.c 2013-08-04 09:12:04.563871900 +0200 +@@ -284,8 +284,8 @@ statvfs_works (void) + if (statvfs_works_cache < 0) + statvfs_works_cache = (uname (&name) == 0 && 0 <= str_verscmp (name.release, "2.6.36")); + return statvfs_works_cache; +-} + #endif ++} + #endif + + /* --------------------------------------------------------------------------------------------- */ +--- origsrc/mc-4.8.10/src/filemanager/mountlist.c 2013-08-02 17:02:39.000000000 +0200 ++++ src/mc-4.8.10/src/filemanager/mountlist.c 2013-08-04 09:12:04.578872700 +0200 +@@ -229,8 +229,7 @@ + #ifdef MOUNTED_GETMNTENT1 + #define ME_DUMMY(Fs_name, Fs_type, Fs_ent) \ + (ME_DUMMY_0 (Fs_name, Fs_type) \ +- || (strcmp (Fs_type, "none") == 0 \ +- && !hasmntopt (Fs_ent, "bind"))) ++ || (strcmp (Fs_type, "none") == 0 )) + #else + #define ME_DUMMY(Fs_name, Fs_type) \ + (ME_DUMMY_0 (Fs_name, Fs_type) || strcmp (Fs_type, "none") == 0) +@@ -242,7 +241,7 @@ + /* All cygwin mount points include ':' or start with '//'; so it + requires a native Windows call to determine remote disks. */ + static int +-me_remote (char const *fs_name, char const *fs_type _GL_UNUSED) ++me_remote (char const *fs_name, char const *fs_type ) + { + if (fs_name[0] && fs_name[1] == ':') + { diff --git a/mc/mc-4.8.10-msys2.patch b/mc/mc-4.8.10-msys2.patch new file mode 100644 index 00000000..fa8c0543 --- /dev/null +++ b/mc/mc-4.8.10-msys2.patch @@ -0,0 +1,683 @@ +diff -Naur mc-4.8.10-orig/config/compile mc-4.8.10/config/compile +--- mc-4.8.10-orig/config/compile 2012-09-26 18:03:18.000000000 +0400 ++++ mc-4.8.10/config/compile 2013-08-22 19:25:17.311523500 +0400 +@@ -53,7 +53,7 @@ + MINGW*) + file_conv=mingw + ;; +- CYGWIN*) ++ CYGWIN*|MSYS*) + file_conv=cygwin + ;; + *) +@@ -67,7 +67,7 @@ + mingw/*) + file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'` + ;; +- cygwin/*) ++ cygwin/*|msys/*) + file=`cygpath -m "$file" || echo "$file"` + ;; + wine/*) +diff -Naur mc-4.8.10-orig/config/config.guess mc-4.8.10/config/config.guess +--- mc-4.8.10-orig/config/config.guess 2012-09-26 18:03:18.000000000 +0400 ++++ mc-4.8.10/config/config.guess 2013-08-22 19:25:57.655273500 +0400 +@@ -844,6 +844,9 @@ + amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) + echo x86_64-unknown-cygwin + exit ;; ++ amd64:MSYS*:*:* | x86_64:MSYS*:*:*) ++ echo x86_64-unknown-msys ++ exit ;; + p*:CYGWIN*:*) + echo powerpcle-unknown-cygwin + exit ;; +diff -Naur mc-4.8.10-orig/config/config.rpath mc-4.8.10/config/config.rpath +--- mc-4.8.10-orig/config/config.rpath 2013-08-02 01:52:17.000000000 +0400 ++++ mc-4.8.10/config/config.rpath 2013-08-22 19:26:49.780273500 +0400 +@@ -112,7 +112,7 @@ + hardcode_minus_L=no + + case "$host_os" in +- cygwin* | mingw* | pw32*) ++ cygwin* | msys* | mingw* | pw32*) + # FIXME: the MSVC++ port hasn't been tested in a loooong time + # When not using gcc, we currently assume that we are using + # Microsoft Visual C++. +@@ -152,7 +152,7 @@ + ld_shlibs=no + fi + ;; +- cygwin* | mingw* | pw32*) ++ cygwin* | msys* | mingw* | pw32*) + # hardcode_libdir_flag_spec is actually meaningless, as there is + # no search path for DLLs. + hardcode_libdir_flag_spec='-L$libdir' +@@ -278,7 +278,7 @@ + ;; + bsdi[45]*) + ;; +- cygwin* | mingw* | pw32*) ++ cygwin* | msys* | mingw* | pw32*) + # When not using gcc, we currently assume that we are using + # Microsoft Visual C++. + # hardcode_libdir_flag_spec is actually meaningless, as there is +@@ -459,7 +459,7 @@ + ;; + bsdi[45]*) + ;; +- cygwin* | mingw* | pw32*) ++ cygwin* | msys* | mingw* | pw32*) + shrext=.dll + ;; + darwin* | rhapsody*) +diff -Naur mc-4.8.10-orig/config/ltmain.sh mc-4.8.10/config/ltmain.sh +--- mc-4.8.10-orig/config/ltmain.sh 2012-09-23 11:32:14.000000000 +0400 ++++ mc-4.8.10/config/ltmain.sh 2013-08-22 19:31:36.155273500 +0400 +@@ -1180,7 +1180,7 @@ + test "$opt_debug" = : || func_append preserve_args " --debug" + + case $host in +- *cygwin* | *mingw* | *pw32* | *cegcc*) ++ *cygwin* | *msys* | *mingw* | *pw32* | *cegcc*) + # don't eliminate duplications in $postdeps and $predeps + opt_duplicate_compiler_generated_deps=: + ;; +@@ -2123,7 +2123,7 @@ + + # On Cygwin there's no "real" PIC flag so we must build both object types + case $host_os in +- cygwin* | mingw* | pw32* | os2* | cegcc*) ++ cygwin* | msys* | mingw* | pw32* | os2* | cegcc*) + pic_mode=default + ;; + esac +@@ -2992,7 +2992,7 @@ + 'exit $?' + tstripme="$stripme" + case $host_os in +- cygwin* | mingw* | pw32* | cegcc*) ++ cygwin* | msys* | mingw* | pw32* | cegcc*) + case $realname in + *.dll.a) + tstripme="" +@@ -3098,7 +3098,7 @@ + + # Do a test to see if this is really a libtool program. + case $host in +- *cygwin* | *mingw*) ++ *cygwin* | *msys* | *mingw*) + if func_ltwrapper_executable_p "$file"; then + func_ltwrapper_scriptname "$file" + wrapper=$func_ltwrapper_scriptname_result +@@ -3173,7 +3173,7 @@ + # remove .exe since cygwin /usr/bin/install will append another + # one anyway + case $install_prog,$host in +- */usr/bin/install*,*cygwin*) ++ */usr/bin/install*,*cygwin*|*/usr/bin/install*,*msys*) + case $file:$destfile in + *.exe:*.exe) + # this is ok +@@ -3323,7 +3323,7 @@ + $RM $export_symbols + eval "${SED} -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' + case $host in +- *cygwin* | *mingw* | *cegcc* ) ++ *cygwin* | *msys* | *mingw* | *cegcc* ) + eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' + eval 'cat "$export_symbols" >> "$output_objdir/$outputname.def"' + ;; +@@ -3335,7 +3335,7 @@ + eval '$GREP -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T' + eval '$MV "$nlist"T "$nlist"' + case $host in +- *cygwin* | *mingw* | *cegcc* ) ++ *cygwin* | *msys* | *mingw* | *cegcc* ) + eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' + eval 'cat "$nlist" >> "$output_objdir/$outputname.def"' + ;; +@@ -3349,7 +3349,7 @@ + func_basename "$dlprefile" + name="$func_basename_result" + case $host in +- *cygwin* | *mingw* | *cegcc* ) ++ *cygwin* | *msys* | *mingw* | *cegcc* ) + # if an import library, we need to obtain dlname + if func_win32_import_lib_p "$dlprefile"; then + func_tr_sh "$dlprefile" +@@ -3502,7 +3502,7 @@ + # Transform the symbol file into the correct name. + symfileobj="$output_objdir/${my_outputname}S.$objext" + case $host in +- *cygwin* | *mingw* | *cegcc* ) ++ *cygwin* | *msys* | *mingw* | *cegcc* ) + if test -f "$output_objdir/$my_outputname.def"; then + compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"` + finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"` +@@ -5094,7 +5094,7 @@ + { + $opt_debug + case $host in +- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) ++ *-*-cygwin* | *-*-msys* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) + # It is impossible to link a dll without this setting, and + # we shouldn't force the makefile maintainer to figure out + # which system we are compiling for in order to pass an extra +@@ -5581,7 +5581,7 @@ + ;; + esac + case $host in +- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) ++ *-*-cygwin* | *-*-msys* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) + testbindir=`$ECHO "$dir" | $SED 's*/lib$*/bin*'` + case :$dllsearchpath: in + *":$dir:"*) ;; +@@ -5601,7 +5601,7 @@ + -l*) + if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then + case $host in +- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos* | *-cegcc* | *-*-haiku*) ++ *-*-cygwin* | *-*-msys* | *-*-mingw* | *-*-pw32* | *-*-beos* | *-cegcc* | *-*-haiku*) + # These systems don't actually have a C or math library (as such) + continue + ;; +@@ -5679,7 +5679,7 @@ + + -no-install) + case $host in +- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-darwin* | *-cegcc*) ++ *-*-cygwin* | *-*-msys* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-darwin* | *-cegcc*) + # The PATH hackery in wrapper scripts is required on Windows + # and Darwin in order for the loader to find any dlls it needs. + func_warning "\`-no-install' is ignored for $host" +@@ -6545,7 +6545,7 @@ + fi + case "$host" in + # special handling for platforms with PE-DLLs. +- *cygwin* | *mingw* | *cegcc* ) ++ *cygwin* | *msys* | *mingw* | *cegcc* ) + # Linker will automatically link against shared library if both + # static and shared are present. Therefore, ensure we extract + # symbols from the import library if a shared library is present +@@ -6689,7 +6689,7 @@ + if test -n "$library_names" && + { test "$use_static_libs" = no || test -z "$old_library"; }; then + case $host in +- *cygwin* | *mingw* | *cegcc*) ++ *cygwin* | *msys* | *mingw* | *cegcc*) + # No point in relinking DLLs because paths are not encoded + func_append notinst_deplibs " $lib" + need_relink=no +@@ -6759,7 +6759,7 @@ + elif test -n "$soname_spec"; then + # bleh windows + case $host in +- *cygwin* | mingw* | *cegcc*) ++ *cygwin* | *msys* | mingw* | *cegcc*) + func_arith $current - $age + major=$func_arith_result + versuffix="-$major" +@@ -7620,7 +7620,7 @@ + if test "$build_libtool_libs" = yes; then + if test -n "$rpath"; then + case $host in +- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos* | *-cegcc* | *-*-haiku*) ++ *-*-cygwin* | *-*-msys* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos* | *-cegcc* | *-*-haiku*) + # these systems don't actually have a c library (as such)! + ;; + *-*-rhapsody* | *-*-darwin1.[012]) +@@ -8134,7 +8134,7 @@ + + orig_export_symbols= + case $host_os in +- cygwin* | mingw* | cegcc*) ++ cygwin* | msys* | mingw* | cegcc*) + if test -n "$export_symbols" && test -z "$export_symbols_regex"; then + # exporting using user supplied symfile + if test "x`$SED 1q $export_symbols`" != xEXPORTS; then +@@ -8690,7 +8690,7 @@ + + prog) + case $host in +- *cygwin*) func_stripname '' '.exe' "$output" ++ *cygwin* | *msys*) func_stripname '' '.exe' "$output" + output=$func_stripname_result.exe;; + esac + test -n "$vinfo" && \ +@@ -8803,7 +8803,7 @@ + esac + fi + case $host in +- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) ++ *-*-cygwin* | *-*-msys* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) + testbindir=`${ECHO} "$libdir" | ${SED} -e 's*/lib$*/bin*'` + case :$dllsearchpath: in + *":$libdir:"*) ;; +@@ -8881,7 +8881,7 @@ + # Disable wrappers for cegcc and mingw32ce hosts, we are cross compiling anyway. + wrappers_required=no + ;; +- *cygwin* | *mingw* ) ++ *cygwin* | *msys* | *mingw* ) + if test "$build_libtool_libs" != yes; then + wrappers_required=no + fi +@@ -9028,14 +9028,14 @@ + esac + # test for cygwin because mv fails w/o .exe extensions + case $host in +- *cygwin*) ++ *cygwin* | *msys*) + exeext=.exe + func_stripname '' '.exe' "$outputname" + outputname=$func_stripname_result ;; + *) exeext= ;; + esac + case $host in +- *cygwin* | *mingw* ) ++ *cygwin* | *msys* | *mingw* ) + func_dirname_and_basename "$output" "" "." + output_name=$func_basename_result + output_path=$func_dirname_result +@@ -9365,7 +9365,7 @@ + # tests/bindir.at for full details. + tdlname=$dlname + case $host,$output,$installed,$module,$dlname in +- *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll) ++ *cygwin*,*lai,yes,no,*.dll | *msys*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll) + # If a -bindir argument was supplied, place the dll there. + if test "x$bindir" != x ; + then +diff -Naur mc-4.8.10-orig/configure mc-4.8.10/configure +--- mc-4.8.10-orig/configure 2013-08-02 22:56:30.000000000 +0400 ++++ mc-4.8.10/configure 2013-08-22 19:24:38.077148500 +0400 +@@ -7159,7 +7159,7 @@ + lt_cv_sys_max_cmd_len=-1; + ;; + +- cygwin* | mingw* | cegcc*) ++ cygwin* | msys* | mingw* | cegcc*) + # On Win9x/ME, this test blows up -- it succeeds, but takes + # about 5 minutes as the teststring grows exponentially. + # Worse, since 9x/ME are not pre-emptively multitasking, +@@ -7348,7 +7348,7 @@ + *-*-mingw* ) # actually msys + lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32 + ;; +- *-*-cygwin* ) ++ *-*-cygwin* | *-*-msys* ) + lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32 + ;; + * ) # otherwise, assume *nix +@@ -7356,12 +7356,12 @@ + ;; + esac + ;; +- *-*-cygwin* ) ++ *-*-cygwin* | *-*-msys* ) + case $build in + *-*-mingw* ) # actually msys + lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin + ;; +- *-*-cygwin* ) ++ *-*-cygwin* | *-*-msys* ) + lt_cv_to_host_file_cmd=func_convert_file_noop + ;; + * ) # otherwise, assume *nix +@@ -7427,7 +7427,7 @@ + esac + reload_cmds='$LD$reload_flag -o $output$reload_objs' + case $host_os in +- cygwin* | mingw* | pw32* | cegcc*) ++ cygwin* | msys* | mingw* | pw32* | cegcc*) + if test "$GCC" != yes; then + reload_cmds=false + fi +@@ -7585,7 +7585,7 @@ + lt_cv_file_magic_test_file=/shlib/libc.so + ;; + +-cygwin*) ++cygwin* | msys*) + # func_win32_libid is a shell function defined in ltmain.sh + lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' + lt_cv_file_magic_cmd='func_win32_libid' +@@ -7906,7 +7906,7 @@ + lt_cv_sharedlib_from_linklib_cmd='unknown' + + case $host_os in +-cygwin* | mingw* | pw32* | cegcc*) ++cygwin* | msys* | mingw* | pw32* | cegcc*) + # two different shell functions defined in ltmain.sh + # decide which to use based on capabilities of $DLLTOOL + case `$DLLTOOL --help 2>&1` in +@@ -8398,7 +8398,7 @@ + aix*) + symcode='[BCDT]' + ;; +-cygwin* | mingw* | pw32* | cegcc*) ++cygwin* | msys* | mingw* | pw32* | cegcc*) + symcode='[ABCDGISTW]' + ;; + hpux*) +@@ -10221,7 +10221,7 @@ + # PIC is the default for these OSes. + ;; + +- mingw* | cygwin* | pw32* | os2* | cegcc*) ++ mingw* | cygwin* | msys* | pw32* | os2* | cegcc*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + # Although the cygwin gcc ignores -fPIC, still need this for old-style +@@ -10305,7 +10305,7 @@ + fi + ;; + +- mingw* | cygwin* | pw32* | os2* | cegcc*) ++ mingw* | cygwin* | msys* | pw32* | os2* | cegcc*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + lt_prog_compiler_pic='-DDLL_EXPORT' +@@ -10796,7 +10796,7 @@ + extract_expsyms_cmds= + + case $host_os in +- cygwin* | mingw* | pw32* | cegcc*) ++ cygwin* | msys* | mingw* | pw32* | cegcc*) + # FIXME: the MSVC++ port hasn't been tested in a loooong time + # When not using gcc, we currently assume that we are using + # Microsoft Visual C++. +@@ -10911,7 +10911,7 @@ + fi + ;; + +- cygwin* | mingw* | pw32* | cegcc*) ++ cygwin* | msys* | mingw* | pw32* | cegcc*) + # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless, + # as there is no search path for DLLs. + hardcode_libdir_flag_spec='-L$libdir' +@@ -11368,7 +11368,7 @@ + export_dynamic_flag_spec=-rdynamic + ;; + +- cygwin* | mingw* | pw32* | cegcc*) ++ cygwin* | msys* | mingw* | pw32* | cegcc*) + # When not using gcc, we currently assume that we are using + # Microsoft Visual C++. + # hardcode_libdir_flag_spec is actually meaningless, as there is +@@ -12321,7 +12321,7 @@ + # libtool to hard-code these into programs + ;; + +-cygwin* | mingw* | pw32* | cegcc*) ++cygwin* | msys* | mingw* | pw32* | cegcc*) + version_type=windows + shrext_cmds=".dll" + need_version=no +@@ -12353,6 +12353,12 @@ + + sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api" + ;; ++ msys*) ++ # MSYS DLLs use 'msys-' prefix rather than 'lib' ++ soname_spec='`echo ${libname} | sed -e 's/^lib/msys-/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' ++ ++ sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api" ++ ;; + mingw* | cegcc*) + # MinGW DLLs use traditional 'lib' prefix + soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' +@@ -12387,7 +12393,7 @@ + # Convert to MSYS style. + sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'` + ;; +- cygwin*) ++ cygwin* | msys*) + # Convert to unix form, then to dos form, then back to unix form + # but this time dos style (no spaces!) so that the unix form looks + # like /cygdrive/c/PROGRA~1:/cygdr... +@@ -13052,7 +13058,7 @@ + lt_cv_dlopen_libs= + ;; + +- cygwin*) ++ cygwin* | msys*) + lt_cv_dlopen="dlopen" + lt_cv_dlopen_libs= + ;; +@@ -14324,7 +14330,7 @@ + + # on cygwin, the linker does not accept the "-z" option + case $host_os in +- cygwin*) ++ cygwin* | msys*) + TESTS_LDFLAGS="-Wl,--allow-multiple-definition" + ;; + *) +diff -Naur mc-4.8.10-orig/m4/libtool.m4 mc-4.8.10/m4/libtool.m4 +--- mc-4.8.10-orig/m4/libtool.m4 2012-09-23 11:32:14.000000000 +0400 ++++ mc-4.8.10/m4/libtool.m4 2013-08-22 19:36:00.467773500 +0400 +@@ -1616,7 +1616,7 @@ + lt_cv_sys_max_cmd_len=-1; + ;; + +- cygwin* | mingw* | cegcc*) ++ cygwin* | msys* | mingw* | cegcc*) + # On Win9x/ME, this test blows up -- it succeeds, but takes + # about 5 minutes as the teststring grows exponentially. + # Worse, since 9x/ME are not pre-emptively multitasking, +@@ -1863,7 +1863,7 @@ + lt_cv_dlopen_libs= + ;; + +- cygwin*) ++ cygwin* | msys*) + lt_cv_dlopen="dlopen" + lt_cv_dlopen_libs= + ;; +@@ -2334,7 +2334,7 @@ + # libtool to hard-code these into programs + ;; + +-cygwin* | mingw* | pw32* | cegcc*) ++cygwin* | msys* | mingw* | pw32* | cegcc*) + version_type=windows + shrext_cmds=".dll" + need_version=no +@@ -2366,6 +2366,12 @@ + m4_if([$1], [],[ + sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"]) + ;; ++ msys*) ++ # MSYS DLLs use 'msys-' prefix rather than 'lib' ++ soname_spec='`echo ${libname} | sed -e 's/^lib/msys-/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' ++m4_if([$1], [],[ ++ sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"]) ++ ;; + mingw* | cegcc*) + # MinGW DLLs use traditional 'lib' prefix + soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' +@@ -2400,7 +2406,7 @@ + # Convert to MSYS style. + sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'` + ;; +- cygwin*) ++ cygwin* | msys*) + # Convert to unix form, then to dos form, then back to unix form + # but this time dos style (no spaces!) so that the unix form looks + # like /cygdrive/c/PROGRA~1:/cygdr... +@@ -3144,7 +3150,7 @@ + esac + reload_cmds='$LD$reload_flag -o $output$reload_objs' + case $host_os in +- cygwin* | mingw* | pw32* | cegcc*) ++ cygwin* | msys* | mingw* | pw32* | cegcc*) + if test "$GCC" != yes; then + reload_cmds=false + fi +@@ -3200,7 +3206,7 @@ + lt_cv_file_magic_test_file=/shlib/libc.so + ;; + +-cygwin*) ++cygwin* | msys*) + # func_win32_libid is a shell function defined in ltmain.sh + lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' + lt_cv_file_magic_cmd='func_win32_libid' +@@ -3510,7 +3516,7 @@ + [lt_cv_sharedlib_from_linklib_cmd='unknown' + + case $host_os in +-cygwin* | mingw* | pw32* | cegcc*) ++cygwin* | msys* | mingw* | pw32* | cegcc*) + # two different shell functions defined in ltmain.sh + # decide which to use based on capabilities of $DLLTOOL + case `$DLLTOOL --help 2>&1` in +@@ -3565,7 +3571,7 @@ + [AC_REQUIRE([AC_CANONICAL_HOST])dnl + LIBM= + case $host in +-*-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*) ++*-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-msys* | *-*-haiku* | *-*-pw32* | *-*-darwin*) + # These system don't have libm, or don't need it + ;; + *-ncr-sysv4.3*) +@@ -3640,7 +3646,7 @@ + aix*) + symcode='[[BCDT]]' + ;; +-cygwin* | mingw* | pw32* | cegcc*) ++cygwin* | msys* | mingw* | pw32* | cegcc*) + symcode='[[ABCDGISTW]]' + ;; + hpux*) +@@ -3908,7 +3914,7 @@ + beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) + # PIC is the default for these OSes. + ;; +- mingw* | cygwin* | os2* | pw32* | cegcc*) ++ mingw* | cygwin* | msys* | os2* | pw32* | cegcc*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + # Although the cygwin gcc ignores -fPIC, still need this for old-style +@@ -3979,7 +3985,7 @@ + ;; + esac + ;; +- mingw* | cygwin* | os2* | pw32* | cegcc*) ++ mingw* | cygwin* | msys* | os2* | pw32* | cegcc*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + m4_if([$1], [GCJ], [], +@@ -4226,7 +4232,7 @@ + # PIC is the default for these OSes. + ;; + +- mingw* | cygwin* | pw32* | os2* | cegcc*) ++ mingw* | cygwin* | msys* | pw32* | os2* | cegcc*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + # Although the cygwin gcc ignores -fPIC, still need this for old-style +@@ -4311,7 +4317,7 @@ + fi + ;; + +- mingw* | cygwin* | pw32* | os2* | cegcc*) ++ mingw* | cygwin* | msys* | pw32* | os2* | cegcc*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + m4_if([$1], [GCJ], [], +@@ -4571,7 +4577,7 @@ + pw32*) + _LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds" + ;; +- cygwin* | mingw* | cegcc*) ++ cygwin* | msys* | mingw* | cegcc*) + case $cc_basename in + cl*) + _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' +@@ -4629,7 +4635,7 @@ + extract_expsyms_cmds= + + case $host_os in +- cygwin* | mingw* | pw32* | cegcc*) ++ cygwin* | msys* | mingw* | pw32* | cegcc*) + # FIXME: the MSVC++ port hasn't been tested in a loooong time + # When not using gcc, we currently assume that we are using + # Microsoft Visual C++. +@@ -4744,7 +4750,7 @@ + fi + ;; + +- cygwin* | mingw* | pw32* | cegcc*) ++ cygwin* | msys* | mingw* | pw32* | cegcc*) + # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, + # as there is no search path for DLLs. + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' +@@ -5117,7 +5123,7 @@ + _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic + ;; + +- cygwin* | mingw* | pw32* | cegcc*) ++ cygwin* | msys* | mingw* | pw32* | cegcc*) + # When not using gcc, we currently assume that we are using + # Microsoft Visual C++. + # hardcode_libdir_flag_spec is actually meaningless, as there is +@@ -6118,7 +6124,7 @@ + esac + ;; + +- cygwin* | mingw* | pw32* | cegcc*) ++ cygwin* | msys* | mingw* | pw32* | cegcc*) + case $GXX,$cc_basename in + ,cl* | no,cl*) + # Native MSVC +@@ -7934,7 +7940,7 @@ + *-*-mingw* ) # actually msys + lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32 + ;; +- *-*-cygwin* ) ++ *-*-cygwin* | *-*-msys* ) + lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32 + ;; + * ) # otherwise, assume *nix +@@ -7942,12 +7948,12 @@ + ;; + esac + ;; +- *-*-cygwin* ) ++ *-*-cygwin* | *-*-msys* ) + case $build in + *-*-mingw* ) # actually msys + lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin + ;; +- *-*-cygwin* ) ++ *-*-cygwin* | *-*-msys* ) + lt_cv_to_host_file_cmd=func_convert_file_noop + ;; + * ) # otherwise, assume *nix +diff -Naur mc-4.8.10-orig/m4/ltoptions.m4 mc-4.8.10/m4/ltoptions.m4 +--- mc-4.8.10-orig/m4/ltoptions.m4 2012-09-23 11:32:14.000000000 +0400 ++++ mc-4.8.10/m4/ltoptions.m4 2013-08-22 19:36:39.155273500 +0400 +@@ -126,7 +126,7 @@ + [enable_win32_dll=yes + + case $host in +-*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*) ++*-*-cygwin* | *-*-msys*| *-*-mingw* | *-*-pw32* | *-*-cegcc*) + AC_CHECK_TOOL(AS, as, false) + AC_CHECK_TOOL(DLLTOOL, dlltool, false) + AC_CHECK_TOOL(OBJDUMP, objdump, false) +diff -Naur mc-4.8.10-orig/m4.include/mc-tests.m4 mc-4.8.10/m4.include/mc-tests.m4 +--- mc-4.8.10-orig/m4.include/mc-tests.m4 2013-06-26 01:29:14.000000000 +0400 ++++ mc-4.8.10/m4.include/mc-tests.m4 2013-08-22 19:36:58.295898500 +0400 +@@ -25,7 +25,7 @@ + + # on cygwin, the linker does not accept the "-z" option + case $host_os in +- cygwin*) ++ cygwin* | msys*) + TESTS_LDFLAGS="-Wl,--allow-multiple-definition" + ;; + *)