From unknown Sun Jun 15 08:40:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#11232: automake-1.11.4 regression Resent-From: "Dmitry V. Levin" Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-automake@gnu.org Resent-Date: Thu, 12 Apr 2012 22:17:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 11232 X-GNU-PR-Package: automake X-GNU-PR-Keywords: To: 11232@debbugs.gnu.org X-Debbugs-Original-To: bug-automake@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.133426897627623 (code B ref -1); Thu, 12 Apr 2012 22:17:02 +0000 Received: (at submit) by debbugs.gnu.org; 12 Apr 2012 22:16:16 +0000 Received: from localhost ([127.0.0.1]:55031 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SISJL-0007BT-Kg for submit@debbugs.gnu.org; Thu, 12 Apr 2012 18:16:16 -0400 Received: from eggs.gnu.org ([208.118.235.92]:39564) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SIS93-0006vE-69 for submit@debbugs.gnu.org; Thu, 12 Apr 2012 18:05:38 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SIS7o-0000pm-P1 for submit@debbugs.gnu.org; Thu, 12 Apr 2012 18:04:22 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-6.9 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_HI autolearn=unavailable version=3.3.2 Received: from lists.gnu.org ([208.118.235.17]:40765) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SIS7o-0000pi-Lg for submit@debbugs.gnu.org; Thu, 12 Apr 2012 18:04:20 -0400 Received: from eggs.gnu.org ([208.118.235.92]:34015) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SIS7n-0000G1-16 for bug-automake@gnu.org; Thu, 12 Apr 2012 18:04:20 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SIS7l-0000pO-4K for bug-automake@gnu.org; Thu, 12 Apr 2012 18:04:18 -0400 Received: from vint.altlinux.org ([194.107.17.35]:55697) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SIS7k-0000pC-N9 for bug-automake@gnu.org; Thu, 12 Apr 2012 18:04:17 -0400 Received: from wo.int.altlinux.org (wo.int.altlinux.org [192.168.1.4]) by vint.altlinux.org (Postfix) with ESMTP id 8F9C23F80009 for ; Thu, 12 Apr 2012 22:04:13 +0000 (UTC) Received: by wo.int.altlinux.org (Postfix, from userid 508) id 742003F4878F; Fri, 13 Apr 2012 02:04:13 +0400 (MSK) Date: Fri, 13 Apr 2012 02:04:13 +0400 From: "Dmitry V. Levin" Message-ID: <20120412220413.GA31765@altlinux.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-Received-From: 208.118.235.17 X-Spam-Score: -6.9 (------) X-Mailman-Approved-At: Thu, 12 Apr 2012 18:16:14 -0400 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -6.9 (------) Hi, Commit v1.11-759-g368f1c4 (git describe --contain v1.11-759-g368f1c4 says it is v1.11.3b~3^2~1) introduced a regression. GNU automake used to support shell commands in installation directories, but it seems to be inadvertently broken now because of the change in shell quoting. In 3 of 24 places where MKDIR_P commands are generated, automake uses single quotes, while in other 21 places it still uses double quotes: $ git grep "^[[:space:]]*\$(MKDIR_P) '" v1.11-759-g368f1c4^:lib | wc -l 0 $ git grep "^[[:space:]]*\$(MKDIR_P) '" v1.11-759-g368f1c4:lib v1.11-759-g368f1c4:lib:am/data.am: $(MKDIR_P) '$(DESTDIR)$(%NDIR%dir)' || exit 1; \ v1.11-759-g368f1c4:lib:am/libs.am: $(MKDIR_P) '$(DESTDIR)$(%NDIR%dir)' || exit 1; \ v1.11-759-g368f1c4:lib:am/ltlib.am: $(MKDIR_P) '$(DESTDIR)$(%NDIR%dir)' || exit 1; \ $ git grep "^[[:space:]]*\$(MKDIR_P) \"" v1.11-759-g368f1c4:lib v1.11-759-g368f1c4:lib:am/data.am: $(MKDIR_P) "$(DESTDIR)$(%NDIR%dir)" || exit 1; \ v1.11-759-g368f1c4:lib:am/data.am: $(MKDIR_P) "$(DESTDIR)$(%NDIR%dir)/$$dir"; }; \ v1.11-759-g368f1c4:lib:am/java.am: $(MKDIR_P) "$(DESTDIR)$(%NDIR%dir)"; \ v1.11-759-g368f1c4:lib:am/libs.am: $(MKDIR_P) "$(DESTDIR)$(%NDIR%dir)" || exit 1; \ v1.11-759-g368f1c4:lib:am/libs.am: $(MKDIR_P) "$(DESTDIR)$(%NDIR%dir)/$$dir"; }; \ v1.11-759-g368f1c4:lib:am/lisp.am: $(MKDIR_P) "$(DESTDIR)$(%NDIR%dir)" || exit 1; \ v1.11-759-g368f1c4:lib:am/ltlib.am: $(MKDIR_P) "$(DESTDIR)$(%NDIR%dir)" || exit 1; \ v1.11-759-g368f1c4:lib:am/ltlib.am: $(MKDIR_P) "$(DESTDIR)$(%NDIR%dir)/$$dir"; }; \ v1.11-759-g368f1c4:lib:am/mans.am: $(MKDIR_P) "$(DESTDIR)$(man%SECTION%dir)" || exit 1; \ v1.11-759-g368f1c4:lib:am/mans.am: $(MKDIR_P) "$(DESTDIR)$(man%SECTION%dir)" || exit 1; \ v1.11-759-g368f1c4:lib:am/progs.am: $(MKDIR_P) "$(DESTDIR)$(%NDIR%dir)" || exit 1; \ v1.11-759-g368f1c4:lib:am/python.am: $(MKDIR_P) "$(DESTDIR)$(%NDIR%dir)" || exit 1; \ v1.11-759-g368f1c4:lib:am/python.am: $(MKDIR_P) "$(DESTDIR)$(%NDIR%dir)" || exit 1; \ v1.11-759-g368f1c4:lib:am/python.am: $(MKDIR_P) "$(DESTDIR)$(%NDIR%dir)/$$dir"; }; \ v1.11-759-g368f1c4:lib:am/scripts.am: $(MKDIR_P) "$(DESTDIR)$(%NDIR%dir)" || exit 1; \ v1.11-759-g368f1c4:lib:am/texinfos.am: $(MKDIR_P) "$(DESTDIR)$(dvidir)" || exit 1; \ v1.11-759-g368f1c4:lib:am/texinfos.am: $(MKDIR_P) "$(DESTDIR)$(htmldir)" || exit 1; \ v1.11-759-g368f1c4:lib:am/texinfos.am: $(MKDIR_P) "$(DESTDIR)$(htmldir)/$$f" || exit 1; \ v1.11-759-g368f1c4:lib:am/texinfos.am: $(MKDIR_P) "$(DESTDIR)$(infodir)" || exit 1; \ v1.11-759-g368f1c4:lib:am/texinfos.am: $(MKDIR_P) "$(DESTDIR)$(pdfdir)" || exit 1; \ v1.11-759-g368f1c4:lib:am/texinfos.am: $(MKDIR_P) "$(DESTDIR)$(psdir)" || exit 1; \ The patch containing the fix with test case will follow shortly. -- ldv From unknown Sun Jun 15 08:40:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#11232: automake-1.11.4 regression Resent-From: "Dmitry V. Levin" Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-automake@gnu.org Resent-Date: Thu, 12 Apr 2012 22:24:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 11232 X-GNU-PR-Package: automake X-GNU-PR-Keywords: To: 11232@debbugs.gnu.org Received: via spool by 11232-submit@debbugs.gnu.org id=B11232.133426941128279 (code B ref 11232); Thu, 12 Apr 2012 22:24:02 +0000 Received: (at 11232) by debbugs.gnu.org; 12 Apr 2012 22:23:31 +0000 Received: from localhost ([127.0.0.1]:55041 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SISQN-0007M3-1J for submit@debbugs.gnu.org; Thu, 12 Apr 2012 18:23:31 -0400 Received: from vint.altlinux.org ([194.107.17.35]:39919) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SISQI-0007Lu-Rq for 11232@debbugs.gnu.org; Thu, 12 Apr 2012 18:23:29 -0400 Received: from wo.int.altlinux.org (wo.int.altlinux.org [192.168.1.4]) by vint.altlinux.org (Postfix) with ESMTP id A7AEF3F80009 for <11232@debbugs.gnu.org>; Thu, 12 Apr 2012 22:22:10 +0000 (UTC) Received: by wo.int.altlinux.org (Postfix, from userid 508) id 9D0323F4878F; Fri, 13 Apr 2012 02:22:10 +0400 (MSK) Date: Fri, 13 Apr 2012 02:22:10 +0400 From: "Dmitry V. Levin" Message-ID: <20120412222210.GA31933@altlinux.org> References: <20120412220413.GA31765@altlinux.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20120412220413.GA31765@altlinux.org> X-Spam-Score: -1.9 (-) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -1.9 (-) On Fri, Apr 13, 2012 at 02:04:13AM +0400, Dmitry V. Levin wrote: > The patch containing the fix with test case will follow shortly. >From 8810b494a6fff57e7299cee8375ae43c35a82921 Mon Sep 17 00:00:00 2001 From: "Dmitry V. Levin" Date: Thu, 12 Apr 2012 16:24:23 +0000 Subject: [PATCH] install: fix the case then an install directory is a shell command Fixes automake bug#11232. GNU automake used to support shell commands in installation directories, but it was inadvertently broken by commit v1.11-759-g368f1c4 where shell quoting of generated MKDIR_P command was changed from double to single quotes in 3 places, while some 21 other places still use double quotes for generated MKDIR_P commands. * lib/am/data.am: Use double quotes for generated "mkdir -p" commands. * lib/am/libs.am: Likewise. * lib/am/ltlib.am: Likewise. * tests/install-pr11232.test: New test. * tests/list-of-tests.mk (handwritten_TESTS): Add it. Signed-off-by: Dmitry V. Levin --- lib/am/data.am | 2 +- lib/am/libs.am | 2 +- lib/am/ltlib.am | 2 +- tests/install-pr11232.test | 43 +++++++++++++++++++++++++++++++++++++++++++ tests/list-of-tests.mk | 1 + 5 files changed, 47 insertions(+), 3 deletions(-) create mode 100755 tests/install-pr11232.test diff --git a/lib/am/data.am b/lib/am/data.am index 98a38a8..b8b6588 100644 --- a/lib/am/data.am +++ b/lib/am/data.am @@ -33,7 +33,7 @@ if %?BASE% @list='$(%DIR%_%PRIMARY%)'; test -n "$(%NDIR%dir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(%NDIR%dir)'"; \ - $(MKDIR_P) '$(DESTDIR)$(%NDIR%dir)' || exit 1; \ + $(MKDIR_P) "$(DESTDIR)$(%NDIR%dir)" || exit 1; \ fi; \ for p in $$list; do \ ## A file can be in the source directory or the build directory. diff --git a/lib/am/libs.am b/lib/am/libs.am index 4006bd0..d1f63ae 100644 --- a/lib/am/libs.am +++ b/lib/am/libs.am @@ -47,7 +47,7 @@ else !%?BASE% @list='$(%DIR%_LIBRARIES)'; test -n "$(%NDIR%dir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(%NDIR%dir)'"; \ - $(MKDIR_P) '$(DESTDIR)$(%NDIR%dir)' || exit 1; \ + $(MKDIR_P) "$(DESTDIR)$(%NDIR%dir)" || exit 1; \ fi; \ $(am__nobase_list) | while read dir files; do \ xfiles=; for p in $$files; do \ diff --git a/lib/am/ltlib.am b/lib/am/ltlib.am index 65210c1..62ee1d2 100644 --- a/lib/am/ltlib.am +++ b/lib/am/ltlib.am @@ -38,7 +38,7 @@ if %?BASE% done; \ test -z "$$list2" || { \ echo " $(MKDIR_P) '$(DESTDIR)$(%NDIR%dir)'"; \ - $(MKDIR_P) '$(DESTDIR)$(%NDIR%dir)' || exit 1; \ + $(MKDIR_P) "$(DESTDIR)$(%NDIR%dir)" || exit 1; \ ## Note that we explicitly set the libtool mode. This avoids any lossage ## if the program doesn't have a name that libtool expects. ## Use INSTALL and not INSTALL_DATA because libtool knows the right diff --git a/tests/install-pr11232.test b/tests/install-pr11232.test new file mode 100755 index 0000000..0c4ba22 --- /dev/null +++ b/tests/install-pr11232.test @@ -0,0 +1,43 @@ +#! /bin/sh +# Copyright (C) 2012 Free Software Foundation, Inc. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +# Ensure install works when an install directory is a shell command. +# See automake bug#11232. + +. ./defs || Exit 1 + +set -e + +cat >> configure.in << 'END' +AC_OUTPUT +END + +cat > Makefile.am << 'END' +docdir = `echo /sub/doc` +doc_DATA = text +END + +echo text > text + +$ACLOCAL +$AUTOCONF +$AUTOMAKE -a + +./configure +$MAKE install DESTDIR="`pwd`/dest" +test -f dest/sub/doc/text || { find dest; Exit 1; } + +: diff --git a/tests/list-of-tests.mk b/tests/list-of-tests.mk index c344171..bc3da45 100644 --- a/tests/list-of-tests.mk +++ b/tests/list-of-tests.mk @@ -470,6 +470,7 @@ insh2.test \ install2.test \ installdir.test \ install-info-dir.test \ +install-pr11232.test \ instsh.test \ instsh2.test \ instsh3.test \ -- ldv From debbugs-submit-bounces@debbugs.gnu.org Thu Apr 12 18:43:20 2012 Received: (at control) by debbugs.gnu.org; 12 Apr 2012 22:43:20 +0000 Received: from localhost ([127.0.0.1]:55070 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SISjY-0007pt-1H for submit@debbugs.gnu.org; Thu, 12 Apr 2012 18:43:20 -0400 Received: from vint.altlinux.org ([194.107.17.35]:40599) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SISjV-0007pm-81 for control@debbugs.gnu.org; Thu, 12 Apr 2012 18:43:18 -0400 Received: from wo.int.altlinux.org (wo.int.altlinux.org [192.168.1.4]) by vint.altlinux.org (Postfix) with ESMTP id BA9E23F80009 for ; Thu, 12 Apr 2012 22:42:01 +0000 (UTC) Received: by wo.int.altlinux.org (Postfix, from userid 508) id B08A33F4878F; Fri, 13 Apr 2012 02:42:01 +0400 (MSK) Date: Fri, 13 Apr 2012 02:42:01 +0400 From: "Dmitry V. Levin" To: control@debbugs.gnu.org Subject: Re: bug#11232: automake-1.11.4 regression Message-ID: <20120412224201.GB31933@altlinux.org> References: <20120412220413.GA31765@altlinux.org> <20120412222210.GA31933@altlinux.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20120412222210.GA31933@altlinux.org> X-Spam-Score: -1.9 (-) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -1.9 (-) severity 11232 important tags 11232 patch thanks -- ldv From unknown Sun Jun 15 08:40:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#11232: automake-1.11.4 regression Resent-From: Stefano Lattarini Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-automake@gnu.org Resent-Date: Fri, 13 Apr 2012 08:44:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 11232 X-GNU-PR-Package: automake X-GNU-PR-Keywords: patch To: "Dmitry V. Levin" Cc: 11232@debbugs.gnu.org Received: via spool by 11232-submit@debbugs.gnu.org id=B11232.13343066141597 (code B ref 11232); Fri, 13 Apr 2012 08:44:01 +0000 Received: (at 11232) by debbugs.gnu.org; 13 Apr 2012 08:43:34 +0000 Received: from localhost ([127.0.0.1]:55573 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SIc6P-0000Pi-Nf for submit@debbugs.gnu.org; Fri, 13 Apr 2012 04:43:33 -0400 Received: from mail-bk0-f44.google.com ([209.85.214.44]:35247) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SIc6N-0000Pa-Jz for 11232@debbugs.gnu.org; Fri, 13 Apr 2012 04:43:32 -0400 Received: by bkuw5 with SMTP id w5so2071032bku.3 for <11232@debbugs.gnu.org>; Fri, 13 Apr 2012 01:42:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:mime-version:to:cc:subject:references :in-reply-to:content-type:content-transfer-encoding; bh=3zkGARjy+09Y7t0fOB+qBBwamCUxtuJolMR7uLIoIRo=; b=P+JGM/ZTIJ+G2vN+WDn6mC1GYVqFkBxnTJtECCgTLXdTMl6te45dm/QdZH0k5h0QMB 6+T3FxH2bahhOwt1W+xSH/WiN6UQdQjc+Q1Qtu+FjhAqeMP2hp3BcgM44/F51DdZO293 egMeaF+VmRrANr3dKvXdEl5/YYK/ZtbYF1+d1jvlB8A1dl9aEdL6oEdlPqBNXl2Gd3WH 99WN0pDHrzvUGhueIPPoFV/t2VBGEZtlEhDeuvOiN1UDEMZ6NUYRfyl/aIjlpknbddhk JEXY/kdEcyH9MPs6yFpvf0nBIqy8T0zebiMn0Pmq8ca1pLFRGiRYdSK2BJGj+6608IYS AbbQ== Received: by 10.204.153.215 with SMTP id l23mr246474bkw.11.1334306532760; Fri, 13 Apr 2012 01:42:12 -0700 (PDT) Received: from [79.21.97.14] (host14-97-dynamic.21-79-r.retail.telecomitalia.it. [79.21.97.14]) by mx.google.com with ESMTPS id f11sm15276962bkw.6.2012.04.13.01.42.10 (version=SSLv3 cipher=OTHER); Fri, 13 Apr 2012 01:42:11 -0700 (PDT) Message-ID: <4F87E6E1.6000009@gmail.com> Date: Fri, 13 Apr 2012 10:42:09 +0200 From: Stefano Lattarini MIME-Version: 1.0 References: <20120412220413.GA31765@altlinux.org> <20120412222210.GA31933@altlinux.org> In-Reply-To: <20120412222210.GA31933@altlinux.org> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Spam-Score: -2.6 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.6 (--) Hi Dmitry, thanks for the report and the fix. On 04/13/2012 12:22 AM, Dmitry V. Levin wrote: > > [PATCH] install: fix the case then an install directory is a shell command > > Fixes automake bug#11232. > > GNU automake used to support shell commands in installation directories, > but it was inadvertently broken by commit v1.11-759-g368f1c4 where shell > quoting of generated MKDIR_P command was changed from double to single > quotes in 3 places, while some 21 other places still use double quotes > for generated MKDIR_P commands. > > * lib/am/data.am: Use double quotes for generated "mkdir -p" commands. > * lib/am/libs.am: Likewise. > * lib/am/ltlib.am: Likewise. > * tests/install-pr11232.test: New test. > * tests/list-of-tests.mk (handwritten_TESTS): Add it. > I'd like to apply your fix ASAP (so that it can be in automake 1.11.5), but your patch complete with the test case does *not* qualify as small enough to be applied without a copyright disclaimer to the FSF. Do you have such a disclaimer already in place? If not, I'll apply only the bugfixes provided by your patch without the testcase, since such a change is small enough not to require legal paperwork. Thanks, Stefano From unknown Sun Jun 15 08:40:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#11232: automake-1.11.4 regression Resent-From: "Dmitry V. Levin" Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-automake@gnu.org Resent-Date: Fri, 13 Apr 2012 10:22:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 11232 X-GNU-PR-Package: automake X-GNU-PR-Keywords: patch To: Stefano Lattarini Cc: 11232@debbugs.gnu.org Received: via spool by 11232-submit@debbugs.gnu.org id=B11232.133431249110036 (code B ref 11232); Fri, 13 Apr 2012 10:22:02 +0000 Received: (at 11232) by debbugs.gnu.org; 13 Apr 2012 10:21:31 +0000 Received: from localhost ([127.0.0.1]:55593 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SIddC-0002bo-1H for submit@debbugs.gnu.org; Fri, 13 Apr 2012 06:21:30 -0400 Received: from vint.altlinux.org ([194.107.17.35]:46894) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SIdd9-0002bh-RR for 11232@debbugs.gnu.org; Fri, 13 Apr 2012 06:21:28 -0400 Received: from wo.int.altlinux.org (wo.int.altlinux.org [192.168.1.4]) by vint.altlinux.org (Postfix) with ESMTP id D47C13F80275; Fri, 13 Apr 2012 10:20:08 +0000 (UTC) Received: by wo.int.altlinux.org (Postfix, from userid 508) id B63133F4878F; Fri, 13 Apr 2012 14:20:08 +0400 (MSK) Date: Fri, 13 Apr 2012 14:20:08 +0400 From: "Dmitry V. Levin" Message-ID: <20120413102008.GA5898@altlinux.org> References: <20120412220413.GA31765@altlinux.org> <20120412222210.GA31933@altlinux.org> <4F87E6E1.6000009@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <4F87E6E1.6000009@gmail.com> X-Spam-Score: -1.9 (-) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -1.9 (-) On Fri, Apr 13, 2012 at 10:42:09AM +0200, Stefano Lattarini wrote: > Hi Dmitry, thanks for the report and the fix. > > On 04/13/2012 12:22 AM, Dmitry V. Levin wrote: > > > > [PATCH] install: fix the case then an install directory is a shell command > > > > Fixes automake bug#11232. > > > > GNU automake used to support shell commands in installation directories, > > but it was inadvertently broken by commit v1.11-759-g368f1c4 where shell > > quoting of generated MKDIR_P command was changed from double to single > > quotes in 3 places, while some 21 other places still use double quotes > > for generated MKDIR_P commands. > > > > * lib/am/data.am: Use double quotes for generated "mkdir -p" commands. > > * lib/am/libs.am: Likewise. > > * lib/am/ltlib.am: Likewise. > > * tests/install-pr11232.test: New test. > > * tests/list-of-tests.mk (handwritten_TESTS): Add it. > > I'd like to apply your fix ASAP (so that it can be in automake 1.11.5), > but your patch complete with the test case does *not* qualify as small > enough to be applied without a copyright disclaimer to the FSF. Do you > have such a disclaimer already in place? Not for automake I'm afraid. > If not, I'll apply only the > bugfixes provided by your patch without the testcase, since such a change > is small enough not to require legal paperwork. OK btw, the testcase could be more elaborate, to test all MKDIR_P cases including those that were not broken. -- ldv From unknown Sun Jun 15 08:40:50 2025 X-Loop: help-debbugs@gnu.org Subject: bug#11232: automake-1.11.4 regression Resent-From: Stefano Lattarini Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-automake@gnu.org Resent-Date: Fri, 13 Apr 2012 13:09:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 11232 X-GNU-PR-Package: automake X-GNU-PR-Keywords: patch To: "Dmitry V. Levin" Cc: 11232@debbugs.gnu.org, "automake-patches@gnu.org" Received: via spool by 11232-submit@debbugs.gnu.org id=B11232.133432249628798 (code B ref 11232); Fri, 13 Apr 2012 13:09:03 +0000 Received: (at 11232) by debbugs.gnu.org; 13 Apr 2012 13:08:16 +0000 Received: from localhost ([127.0.0.1]:56342 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SIgEZ-0007UN-Kl for submit@debbugs.gnu.org; Fri, 13 Apr 2012 09:08:16 -0400 Received: from mail-ee0-f44.google.com ([74.125.83.44]:61082) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SIgEV-0007U8-CJ; Fri, 13 Apr 2012 09:08:13 -0400 Received: by eeke51 with SMTP id e51so835740eek.3 for ; Fri, 13 Apr 2012 06:06:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:mime-version:to:cc:subject:references :in-reply-to:content-type; bh=5g7+icVQKqMn7oUq/t2TY+xOSma+z46oqP19S8E50ZY=; b=Sx5Wjlzo2JgEcKtRmDST2WWuWfX6SmBLQDnL4BnVVrw6hMwP/vijnI8NkBtA9xrnqc 1G000a1nciHMY3K7UfwGIof1UAsDr13MClrsuZIA16bHGEfzeMwNXVP8YtvoLLaoumDV lNPKAN9LwNkPel8ylZh1QFz3IDX64hwf0RCZoQJv4FBrtSpeE+JKA+rMoC0vAldl44Gd +Imn6D3pq5X2V6eHDI5TfG2VIRWE3tDYA7mWIU/scEzJ+zbJNySE17CJlGcg8MlmNTxa R8OJ6mzY3COQls8zVe3J6ggpyLswylZod/Nlplgb9oCr6ywKcX7cLhITjkcA8aeSoyIo H6CQ== Received: by 10.14.29.72 with SMTP id h48mr217966eea.124.1334322411622; Fri, 13 Apr 2012 06:06:51 -0700 (PDT) Received: from [87.4.92.111] (host111-92-dynamic.4-87-r.retail.telecomitalia.it. [87.4.92.111]) by mx.google.com with ESMTPS id x4sm43076539eef.10.2012.04.13.06.06.48 (version=SSLv3 cipher=OTHER); Fri, 13 Apr 2012 06:06:50 -0700 (PDT) Message-ID: <4F8824E0.60704@gmail.com> Date: Fri, 13 Apr 2012 15:06:40 +0200 From: Stefano Lattarini MIME-Version: 1.0 References: <20120412220413.GA31765@altlinux.org> <20120412222210.GA31933@altlinux.org> <4F87E6E1.6000009@gmail.com> <20120413102008.GA5898@altlinux.org> In-Reply-To: <20120413102008.GA5898@altlinux.org> Content-Type: multipart/mixed; boundary="------------000903030403000702010602" X-Spam-Score: -2.6 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.6 (--) This is a multi-part message in MIME format. --------------000903030403000702010602 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit tags 11232 + patch close 11232 thanks On 04/13/2012 12:20 PM, Dmitry V. Levin wrote: > On Fri, Apr 13, 2012 at 10:42:09AM +0200, Stefano Lattarini wrote: >> Hi Dmitry, thanks for the report and the fix. >> >> On 04/13/2012 12:22 AM, Dmitry V. Levin wrote: >>> >>> [PATCH] install: fix the case then an install directory is a shell command >>> >>> Fixes automake bug#11232. >>> >>> GNU automake used to support shell commands in installation directories, >>> but it was inadvertently broken by commit v1.11-759-g368f1c4 where shell >>> quoting of generated MKDIR_P command was changed from double to single >>> quotes in 3 places, while some 21 other places still use double quotes >>> for generated MKDIR_P commands. >>> >>> * lib/am/data.am: Use double quotes for generated "mkdir -p" commands. >>> * lib/am/libs.am: Likewise. >>> * lib/am/ltlib.am: Likewise. >>> * tests/install-pr11232.test: New test. >>> * tests/list-of-tests.mk (handwritten_TESTS): Add it. >> >> I'd like to apply your fix ASAP (so that it can be in automake 1.11.5), >> but your patch complete with the test case does *not* qualify as small >> enough to be applied without a copyright disclaimer to the FSF. Do you >> have such a disclaimer already in place? > > Not for automake I'm afraid. > Bummer :-( Oh well, I've applied the fix in your name (without the test case, and with minor changes to the commit message; see attached patch), merged that into maint, merged maint into master and branch-1.11, and pushed. The bug only hits such fringe cases (bordering on abusing automake internals) that I don't thinks it's necesary to document it in NEWS. I'm now closing this bug report. Thanks again for your help, Stefano --------------000903030403000702010602 Content-Type: text/x-diff; name="0001-install-shell-parameter-expansions-can-be-used-in-di.patch" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename*0="0001-install-shell-parameter-expansions-can-be-used-in-di.pa"; filename*1="tch" >From 0bb6076152c98c9794434d81e746073bbb7305ad Mon Sep 17 00:00:00 2001 Message-Id: <0bb6076152c98c9794434d81e746073bbb7305ad.1334319049.git.stefano.lattarini@gmail.com> From: "Dmitry V. Levin" Date: Thu, 12 Apr 2012 16:24:23 +0000 Subject: [PATCH] install: shell parameter expansions can be used in directory names Fixes automake bug#11232. GNU automake used to support shell parameter expansion and command substitutions in installation directories, but that was inadvertently broken by commit v1.11-759-g368f1c4 "install: don't create empty dirs when an empty 'foo_PRIMARY' is used" of 18-03-2012, where shell quoting of generated MKDIR_P command was changed from double to single quotes in 3 places, while some 21 other places still use double quotes for generated MKDIR_P commands. * lib/am/data.am: Use double quotes for generated "mkdir -p" commands. * lib/am/libs.am: Likewise. * lib/am/ltlib.am: Likewise. Signed-off-by: Dmitry V. Levin Signed-off-by: Stefano Lattarini --- lib/am/data.am | 2 +- lib/am/libs.am | 2 +- lib/am/ltlib.am | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/am/data.am b/lib/am/data.am index 98a38a8..b8b6588 100644 --- a/lib/am/data.am +++ b/lib/am/data.am @@ -33,7 +33,7 @@ if %?BASE% @list='$(%DIR%_%PRIMARY%)'; test -n "$(%NDIR%dir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(%NDIR%dir)'"; \ - $(MKDIR_P) '$(DESTDIR)$(%NDIR%dir)' || exit 1; \ + $(MKDIR_P) "$(DESTDIR)$(%NDIR%dir)" || exit 1; \ fi; \ for p in $$list; do \ ## A file can be in the source directory or the build directory. diff --git a/lib/am/libs.am b/lib/am/libs.am index 4006bd0..d1f63ae 100644 --- a/lib/am/libs.am +++ b/lib/am/libs.am @@ -47,7 +47,7 @@ else !%?BASE% @list='$(%DIR%_LIBRARIES)'; test -n "$(%NDIR%dir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(%NDIR%dir)'"; \ - $(MKDIR_P) '$(DESTDIR)$(%NDIR%dir)' || exit 1; \ + $(MKDIR_P) "$(DESTDIR)$(%NDIR%dir)" || exit 1; \ fi; \ $(am__nobase_list) | while read dir files; do \ xfiles=; for p in $$files; do \ diff --git a/lib/am/ltlib.am b/lib/am/ltlib.am index 65210c1..62ee1d2 100644 --- a/lib/am/ltlib.am +++ b/lib/am/ltlib.am @@ -38,7 +38,7 @@ if %?BASE% done; \ test -z "$$list2" || { \ echo " $(MKDIR_P) '$(DESTDIR)$(%NDIR%dir)'"; \ - $(MKDIR_P) '$(DESTDIR)$(%NDIR%dir)' || exit 1; \ + $(MKDIR_P) "$(DESTDIR)$(%NDIR%dir)" || exit 1; \ ## Note that we explicitly set the libtool mode. This avoids any lossage ## if the program doesn't have a name that libtool expects. ## Use INSTALL and not INSTALL_DATA because libtool knows the right -- 1.7.9.5 --------------000903030403000702010602-- From debbugs-submit-bounces@debbugs.gnu.org Wed Apr 18 07:23:21 2012 Received: (at control) by debbugs.gnu.org; 18 Apr 2012 11:23:21 +0000 Received: from localhost ([127.0.0.1]:39578 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SKSym-0007Jp-RB for submit@debbugs.gnu.org; Wed, 18 Apr 2012 07:23:21 -0400 Received: from mail-bk0-f44.google.com ([209.85.214.44]:62824) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SKSyk-0007JX-He for control@debbugs.gnu.org; Wed, 18 Apr 2012 07:23:19 -0400 Received: by bkuw5 with SMTP id w5so5260819bku.3 for ; Wed, 18 Apr 2012 04:22:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:mime-version:to:subject:content-type :content-transfer-encoding; bh=srSBg/OdDc+iwiF0GbGIhkRLpfAIRVMdOeRW/lCp5B8=; b=hvLkJ/qzw78HpCgDZ6kbw0pt+mfblR2LV0vDOtGbbVMmpnvng7BHPQr3kfjonRA94o NS60Y8choCK15pV0YEQEVWP1EPHs7+iI24xomXuX5Y1K2kHuC27SwgJAqyti93D+0Gvx tUEVgR1XS0Du66TGvDZFiKoFtKjY8V+3aJKl9gKcS1kQYKDQw2iQz5xnn8ECV1p6e2SG WBdvNmixL8lRkBhoAjh2VQssMBXs6bV6TP1I9u9t2cMsia1Q9NejdSexBHHloiHjnYxC ax5DVJLTIB3cjSqPcEJPoIsGZ+B10Q8TAgBjTa/QRhwYwkEJNHTVpyZJVNEhjXS0Rced fqAA== Received: by 10.204.157.20 with SMTP id z20mr538236bkw.99.1334748179606; Wed, 18 Apr 2012 04:22:59 -0700 (PDT) Received: from [79.10.95.32] (host32-95-dynamic.10-79-r.retail.telecomitalia.it. [79.10.95.32]) by mx.google.com with ESMTPS id cy11sm43616555bkb.7.2012.04.18.04.22.57 (version=SSLv3 cipher=OTHER); Wed, 18 Apr 2012 04:22:58 -0700 (PDT) Message-ID: <4F8EA410.4030805@gmail.com> Date: Wed, 18 Apr 2012 13:22:56 +0200 From: Stefano Lattarini MIME-Version: 1.0 To: control@debbugs.gnu.org Subject: 11232 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Spam-Score: -2.6 (--) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.6 (--) severity 11232 minor thanks