From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: Supporting parameters that include the = character in configure.bat Date: Tue, 12 Apr 2011 01:08:20 -0400 Message-ID: References: <83lizirrli.fsf@gnu.org> Reply-To: Eli Zaretskii NNTP-Posting-Host: lo.gmane.org X-Trace: dough.gmane.org 1302584913 15813 80.91.229.12 (12 Apr 2011 05:08:33 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Tue, 12 Apr 2011 05:08:33 +0000 (UTC) Cc: Emacs-devel@gnu.org To: Ben Key Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Apr 12 07:08:26 2011 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from [140.186.70.17] (helo=lists.gnu.org) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1Q9Vpw-0006Kv-PK for ged-emacs-devel@m.gmane.org; Tue, 12 Apr 2011 07:08:24 +0200 Original-Received: from localhost ([::1]:44818 helo=lists2.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Q9Vpw-0006bH-5L for ged-emacs-devel@m.gmane.org; Tue, 12 Apr 2011 01:08:24 -0400 Original-Received: from eggs.gnu.org ([140.186.70.92]:48080) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Q9Vpt-0006b0-Of for Emacs-devel@gnu.org; Tue, 12 Apr 2011 01:08:22 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Q9Vps-0004SW-JO for Emacs-devel@gnu.org; Tue, 12 Apr 2011 01:08:21 -0400 Original-Received: from fencepost.gnu.org ([140.186.70.10]:52211) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Q9Vps-0004SS-Hz for Emacs-devel@gnu.org; Tue, 12 Apr 2011 01:08:20 -0400 Original-Received: from eliz by fencepost.gnu.org with local (Exim 4.71) (envelope-from ) id 1Q9Vps-0002c9-DH; Tue, 12 Apr 2011 01:08:20 -0400 In-reply-to: (message from Ben Key on Mon, 11 Apr 2011 21:41:50 -0500) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-Received-From: 140.186.70.10 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org X-Broken-Reverse-DNS: no host name found for IP address 140.186.70.17 Xref: news.gmane.org gmane.emacs.devel:138424 Archived-At: > From: Ben Key > Date: Mon, 11 Apr 2011 21:41:50 -0500 > Cc: Emacs-devel@gnu.org > > I am working on a patch for configure.bat to support using parameters that > include the = character. As part of this patch I need to make changes to > the nt/INSTALL file. The section that needs to be changed is as follows. > > Because of limitations of the stock Windows command shell, certain > characters (quotes, backslashes and equal signs) can be problematic > and should not be used in arguments to configure. That means that > forward slashes must be used in paths passed to the compiler and > linker via the --cflags and --ldflags options, and that it is > currently not possible to pass a macro like -DFOO=BAR (though -DFOO > is perfectly valid). > > The change I am making to configure.bat modifies the parsing of the --cflags > and --ldflags options to add support for parameters like -DFOO=BAR as long > as the parameter is enclosed in quotes. I need some input on how I should > rewrite this section of the document. The part that confuses me is the > statement that quotes should not be used in arguments to configure. Simply remove the part about quotes (with the caveat about command extensions), because it is no longer true with your changes. The reason it is there now is that using quotes will have caused the quotes to wind up in a C macro, which will then trigger weird compilation errors. People actually bumped into this, which is why that portion of the instructions was written. The part about backslashes should stay, though: these are treated as escape characters by the C preprocessor, which will generally ruin any file names that use backslashes in the values of the --cflags or --ldflags.