From: Eli Zaretskii Date: Thu, 19 Sep 2013 08:43:01 +0000 (+0300) Subject: Fix MinGW builds from inside the MSYS installation tree. X-Git-Tag: emacs-24.3.90~173^2^2~42^2~45^2~387^2~1516 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=be9bc55efdc1c1f665a84e5f10cdef9af0685ab7;p=emacs.git Fix MinGW builds from inside the MSYS installation tree. configure.ac [MINGW32]: Make sure the value of 'srcdir' is in the full /d/foo/bar form. See the discussion in http://lists.gnu.org/archive/html/emacs-devel/2013-09/msg00210.html, and in particular http://lists.gnu.org/archive/html/emacs-devel/2013-09/msg00252.html and its followups, for the details. --- diff --git a/ChangeLog b/ChangeLog index c075c60be23..990db8da28d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2013-09-19 Eli Zaretskii + + * configure.ac [MINGW32]: Make sure the value of 'srcdir' + is in the full /d/foo/bar form. See the discussion in + http://lists.gnu.org/archive/html/emacs-devel/2013-09/msg00210.html, + and in particular + http://lists.gnu.org/archive/html/emacs-devel/2013-09/msg00252.html + and its followups, for the details. + 2013-09-17 Dmitry Antipov * configure.ac: Do not check for g_type_init because we diff --git a/configure.ac b/configure.ac index 903537f8a59..fe326623571 100644 --- a/configure.ac +++ b/configure.ac @@ -443,6 +443,17 @@ case "${srcdir}" in * ) srcdir=`(cd "$srcdir"; pwd)` ;; esac +#### When building with MinGW inside the MSYS tree, 'pwd' produces +#### directories relative to the root of the MSYS tree, +#### e.g. '/home/user/foo' instead of '/d/MSYS/home/user/foo'. When +#### such a value of srcdir is written to the top-level Makefile, it +#### gets propagated to src/epaths.h, and that causes temacs to fail, +#### because, being a MinGW program that knows nothing of MSYS root +#### substitution, it cannot find the data directory. "pwd -W" +#### produces Windows-style 'd:/foo/bar' absolute directory names, so +#### we use it here to countermand that lossage. +test "$MSYSTEM" = "MINGW32" && srcdir=`(cd "$srcdir"; pwd -W | sed -e 's,^\([[A-Za-z]]\):,/\1,')` + ### Canonicalize the configuration name. AC_CANONICAL_HOST