From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Noam Postavsky Newsgroups: gmane.emacs.bugs Subject: bug#24956: 26.0.50; On Windows, setting PATH in compilation-environment has no effect Date: Thu, 17 Nov 2016 16:27:17 -0500 Message-ID: References: <87wpg383pb.fsf@telefonica.net> <83k2c1esbp.fsf@gnu.org> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 X-Trace: blaine.gmane.org 1479418096 23314 195.159.176.226 (17 Nov 2016 21:28:16 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Thu, 17 Nov 2016 21:28:16 +0000 (UTC) Cc: =?UTF-8?Q?=C3=93scar?= Fuentes , 24956@debbugs.gnu.org To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Thu Nov 17 22:28:10 2016 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1c7UE5-0004yu-6a for geb-bug-gnu-emacs@m.gmane.org; Thu, 17 Nov 2016 22:28:09 +0100 Original-Received: from localhost ([::1]:33345 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1c7UE8-00088P-8Z for geb-bug-gnu-emacs@m.gmane.org; Thu, 17 Nov 2016 16:28:12 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:57855) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1c7UE1-00088K-6N for bug-gnu-emacs@gnu.org; Thu, 17 Nov 2016 16:28:06 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1c7UDy-0005u9-2Q for bug-gnu-emacs@gnu.org; Thu, 17 Nov 2016 16:28:05 -0500 Original-Received: from debbugs.gnu.org ([208.118.235.43]:45666) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1c7UDx-0005tt-Vy for bug-gnu-emacs@gnu.org; Thu, 17 Nov 2016 16:28:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1c7UDx-0000U4-LW for bug-gnu-emacs@gnu.org; Thu, 17 Nov 2016 16:28:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Noam Postavsky Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 17 Nov 2016 21:28:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 24956 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: confirmed Original-Received: via spool by 24956-submit@debbugs.gnu.org id=B24956.14794180451813 (code B ref 24956); Thu, 17 Nov 2016 21:28:01 +0000 Original-Received: (at 24956) by debbugs.gnu.org; 17 Nov 2016 21:27:25 +0000 Original-Received: from localhost ([127.0.0.1]:32832 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1c7UDN-0000TB-4j for submit@debbugs.gnu.org; Thu, 17 Nov 2016 16:27:25 -0500 Original-Received: from mail-oi0-f47.google.com ([209.85.218.47]:34732) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1c7UDM-0000Su-1X for 24956@debbugs.gnu.org; Thu, 17 Nov 2016 16:27:24 -0500 Original-Received: by mail-oi0-f47.google.com with SMTP id z62so68268210oiz.1 for <24956@debbugs.gnu.org>; Thu, 17 Nov 2016 13:27:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc; bh=PVML2XoY2xa4CEXd8pVqK592zDijdwu2axVdQloXW60=; b=Wcvm6lIZNk3JpnZIFVGBUg6JQ1QktAoQ46T14MfsH5XD8/5CnNA9spfiyXjhILTGHu KZjbgcvlFbuRsw/vV7I1uxZ02ByjWZVLSP5B5lz2c1Feb1rCNZP3JrhexDybOoAHfjIx nKD0nCqKzZOmcKnPZPoCgOo98wxy9SWutrymhpN+Xqu8f3DwnqcnZePgShD0dMG16EM9 dBHeY+KUwUa1uGzsAJLiSBN8MgpAIhS/1ySRfUmmY5xvcgnZA6eePi7uPwfmlBSuf/6s GfzTKE0kZRTjJDkFSMDeZGVaAC2EhaaAAy8EgVdZBZJH0yexuGBbXksrRPpOOV0ijp/g E1Rg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc; bh=PVML2XoY2xa4CEXd8pVqK592zDijdwu2axVdQloXW60=; b=e0p9Nm7IY17wWOC6rEjTkYHoGyWzSqVWifBBRkB6I7tifWHZHNAQu16hm1exfFqsFJ gKSZ1P375h0UvuISgtR0kXqxF3Cfe10X11uarvJLqEmnPvRWngOQIJDOF7NTraGOjpBH HdF0eGL5v60hijMaWtjuvrL/oJpb/lxpJXNobUvFvK2O0BL7xDDpsZwWWX1a9Kx5qZ1r I0OzBvV/vuppaXsE10q3TmUUnSFdJMnf9IgQ44hcJhAbiUrgRnV5LlOkxd7uTMjz3lhw kgmS+zeVT82pUd9l/ENEnWzU3zLdgvF5/ym3Yk/Ny5W4/kfhVEtcyVasJ0f1n+1OxBU9 IGdQ== X-Gm-Message-State: AKaTC02h2EKSgPK5WqftnuxW9EQqV7gHiT+DSk2MCHHUJkMTNRf9gTIKZPyb/CF/XUJuWHS3tp+UG9My0r37Ow== X-Received: by 10.157.58.119 with SMTP id j110mr2512780otc.208.1479418038341; Thu, 17 Nov 2016 13:27:18 -0800 (PST) Original-Received: by 10.157.4.67 with HTTP; Thu, 17 Nov 2016 13:27:17 -0800 (PST) In-Reply-To: <83k2c1esbp.fsf@gnu.org> X-Google-Sender-Auth: z3o527L-s4R2Hp6HnW2xRnKklD8 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:125808 Archived-At: On Thu, Nov 17, 2016 at 3:59 PM, Eli Zaretskii wrote: >> From: Noam Postavsky >> Date: Thu, 17 Nov 2016 12:59:19 -0500 >> Cc: 24956@debbugs.gnu.org >> >> > (let ((compilation-environment (list "PATH=d:\\foo"))) >> > (compile "echo %PATH%")) >> > >> > The output is the original contents of PATH. Until recently (June, at >> > least) it was possible to set PATH in compilation-environment and pass >> > it to child processes. On GNU/Linux, it still is. >> >> It seems that my change in 73f0715d "Keep w32 environment settings >> internal only", had an unexpected effect on the way differently cased >> environment variables are handled. >> >> With latest master >> >> (let ((process-environment (cons "PATH=d:\\foo" process-environment))) >> (call-process "cmd" nil '(t t) nil "/C" "echo %PATH%")) >> >> inserts the original PATH contents, whereas >> >> (let ((process-environment (cons "Path=d:\\foo" process-environment))) >> (call-process "cmd" nil '(t t) nil "/C" "echo %PATH%")) >> >> inserts "d:\foo". In Emacs 25.1, or reverting the commit I mentioned, >> the opposite occurs. > > I think this is because PATH doesn't exist in the original environment > inherited from the shell, only Path does. We push PATH into the > environment only in w32.c:init_environment (and do the same trick with > ComSpec vs COMSPEC). But since the above-mentioned change, that > function no longer affects process-environment. > > So to fix this bug, we need to push PATH and COMSPEC into > process-environment, replacing their camel-case variants. > > Does this make sense? Yes. https://cygwin.com/cygwin-ug-net/using-cygwinenv.html lists a few other variables that it upcases (at the bottom of the page), should we do those ones as well?