unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Dani Moncayo <dmoncayo@gmail.com>
To: Eli Zaretskii <eliz@gnu.org>
Cc: 16099@debbugs.gnu.org
Subject: bug#16099: 24.3.50; Build failure, undefined function `cl-member'
Date: Thu, 12 Dec 2013 20:53:29 +0100	[thread overview]
Message-ID: <CAH8Pv0iJNzuUYTbbsRmvUZVpKfZpnpugHZ0nemLdyB4=youA6A@mail.gmail.com> (raw)
In-Reply-To: <83a9g66nbs.fsf@gnu.org>

[-- Attachment #1: Type: text/plain, Size: 1999 bytes --]

>> >> In that case, 'unmsys--file-name' will not translate the MSYS path
>> >> ("/home/user/...") as expected.
>> >
>> > How is this different from your use case, which is already handled?
>>
>> The difference is this:  I invoke the configure script (from the build
>> dir) using a relative path, which works with the current trunk.  But
>> if someone invokes the configure script using an absolute path which
>> doesn't match the "/c/foo/bar" pattern (e.g.
>> "/home/user-foo/emacs/trunk/configure"), the build will fail.
>
> The "pwd -W" method worked with both.  I understand that the
> msys-to-w32 method broke that.

No, the msys-to-w32 method didn't broke that.  It was at revno 114990
(which is not mine, BTW).

> Then please un-break it.

The attached patch seems to be what you want (I've tested it and works fine).

>> But your way of implementing the translation doesn't work with all
>> types of MSYS paths, as we've already seen.
>
> It isn't supposed to.
>
>> PS: The only "tricky" part of the patch is this:
>>
>>   leimdir=`${srcdir}/../build-aux/msys-to-w32 "${leimdir}"` && \
>>   ${RUN_EMACS} -l international/quail \
>>     --eval "(update-leim-list-file \"$${leimdir}\");"
>>                                                    ^
>>                                                    ^
>>                                                    ^
>> This semicolon does not alter the effect of the lisp expression, but
>> prevents MSYS from altering the argument, since such argument (in the
>> MSYS case) will have a colon ("c:/foo/bar") and that would make MSYS
>> think about it as a list of posix paths which need translation to
>> native windows format.  See the rules in [1].  (This technique has
>> been employed in several points)
>
> I don't think we should rely on such fragility.

Ok, I agree that it is fragile.

I don't like the current approach either, but it seems better that the
above one, yes.

So I'll wait for you to validate the attached patch.

-- 
Dani Moncayo

[-- Attachment #2: tmp.diff --]
[-- Type: text/plain, Size: 808 bytes --]

diff --git a/configure.ac b/configure.ac
index 41258fc..524ee4c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -24,7 +24,17 @@ dnl  along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.
 AC_PREREQ(2.65)
 AC_INIT(emacs, 24.3.50)
 
-test "x$MSYSTEM" = "xMINGW32" && . $srcdir/nt/mingw-cfg.site
+if test "x$MSYSTEM" = "xMINGW32"
+then
+   # MSYS-specific processing
+   . $srcdir/nt/mingw-cfg.site
+
+   # Convert srcdir to an absolute MSYS path of the form "/c/foo/bar"
+   # to simplify the conversion of paths to windows-native format
+   # "c:/foo/bar"
+   srcdir=`cd "${srcdir}" && pwd -W`
+   srcdir="/${srcdir:0:1}${srcdir:2}"
+fi
 
 dnl Set emacs_config_options to the options of 'configure', quoted for the shell,
 dnl and then quoted again for a C string.  Separate options with spaces.

  reply	other threads:[~2013-12-12 19:53 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-12-10 12:13 bug#16099: 24.3.50; Build failure, undefined function `cl-member' Richard Copley
2013-12-10 16:46 ` Eli Zaretskii
2013-12-10 16:53   ` Richard Copley
2013-12-10 17:09     ` Glenn Morris
2013-12-10 18:05     ` Eli Zaretskii
2013-12-10 18:13       ` Richard Copley
2013-12-10 18:16         ` Glenn Morris
2013-12-10 18:35         ` Eli Zaretskii
     [not found] ` <handler.16099.D16099.138669538824350.notifdone@debbugs.gnu.org>
2013-12-10 17:42   ` bug#16099: closed (Re: bug#16099: 24.3.50; Build failure, undefined function `cl-member') Richard Copley
2013-12-10 17:55     ` Richard Copley
2013-12-10 18:12       ` bug#16099: 24.3.50; Build failure, undefined function `cl-member' Glenn Morris
2013-12-10 18:25         ` Richard Copley
2013-12-10 18:34           ` Eli Zaretskii
2013-12-10 18:37             ` Richard Copley
2013-12-10 18:59               ` Eli Zaretskii
2013-12-10 20:47                 ` Richard Copley
2013-12-10 20:58                   ` Eli Zaretskii
2013-12-10 21:08                     ` Glenn Morris
2013-12-11 17:07                       ` Eli Zaretskii
2013-12-10 18:42             ` Glenn Morris
2013-12-10 18:48               ` Glenn Morris
2013-12-10 18:58                 ` Eli Zaretskii
2013-12-10 20:09                 ` Dani Moncayo
2013-12-10 20:31                   ` Eli Zaretskii
2013-12-10 20:57                     ` Dani Moncayo
2013-12-11 17:12                       ` Eli Zaretskii
2013-12-12 14:08                         ` Dani Moncayo
2013-12-12 16:33                           ` Eli Zaretskii
2013-12-12 19:53                             ` Dani Moncayo [this message]
2013-12-14  9:33                               ` Dani Moncayo
2013-12-14  9:56                                 ` Eli Zaretskii
2013-12-14 20:08                                 ` Glenn Morris
2013-12-14 21:32                                   ` Dani Moncayo
2013-12-14 21:43                                     ` Glenn Morris
2013-12-14 21:56                                       ` Dani Moncayo
2013-12-10 18:58               ` Eli Zaretskii
2013-12-10 18:13     ` bug#16099: closed (Re: bug#16099: 24.3.50; Build failure, undefined function `cl-member') Eli Zaretskii

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAH8Pv0iJNzuUYTbbsRmvUZVpKfZpnpugHZ0nemLdyB4=youA6A@mail.gmail.com' \
    --to=dmoncayo@gmail.com \
    --cc=16099@debbugs.gnu.org \
    --cc=eliz@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).