From unknown Mon Jun 16 23:48:51 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#19964 <19964@debbugs.gnu.org> To: bug#19964 <19964@debbugs.gnu.org> Subject: Status: automake fails if files named =?UTF-8?Q?=E2=80=9Cinstall.sh=E2=80=9D?= and =?UTF-8?Q?=E2=80=9Cinstall-sh=E2=80=9D?= are found in the parent directory Reply-To: bug#19964 <19964@debbugs.gnu.org> Date: Tue, 17 Jun 2025 06:48:51 +0000 retitle 19964 automake fails if files named =E2=80=9Cinstall.sh=E2=80=9D an= d =E2=80=9Cinstall-sh=E2=80=9D are found in the parent directory reassign 19964 automake submitter 19964 Florent Le Coz severity 19964 minor tag 19964 confirmed thanks From debbugs-submit-bounces@debbugs.gnu.org Fri Feb 27 15:03:12 2015 Received: (at submit) by debbugs.gnu.org; 27 Feb 2015 20:03:12 +0000 Received: from localhost ([127.0.0.1]:60233 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YRR7v-0003Sf-Sg for submit@debbugs.gnu.org; Fri, 27 Feb 2015 15:03:12 -0500 Received: from eggs.gnu.org ([208.118.235.92]:40114) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YRQve-00037q-FF for submit@debbugs.gnu.org; Fri, 27 Feb 2015 14:50:31 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YRQvY-0007SP-61 for submit@debbugs.gnu.org; Fri, 27 Feb 2015 14:50:25 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50 autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:42472) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YRQvY-0007SG-1n for submit@debbugs.gnu.org; Fri, 27 Feb 2015 14:50:24 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:41820) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YRQvW-0005h4-Ur for bug-automake@gnu.org; Fri, 27 Feb 2015 14:50:23 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YRQvT-0007Q0-1s for bug-automake@gnu.org; Fri, 27 Feb 2015 14:50:22 -0500 Received: from smtp08.smtpout.orange.fr ([80.12.242.130]:41009 helo=smtp.smtpout.orange.fr) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YRQvS-0007OJ-R5 for bug-automake@gnu.org; Fri, 27 Feb 2015 14:50:18 -0500 Received: from [192.168.1.18] ([109.218.103.116]) by mwinf5d67 with ME id xXqD1p0082WhVmM03XqD9Q; Fri, 27 Feb 2015 20:50:13 +0100 X-ME-Helo: [192.168.1.18] X-ME-Date: Fri, 27 Feb 2015 20:50:13 +0100 X-ME-IP: 109.218.103.116 Message-ID: <54F0CA75.2080803@louiz.org> Date: Fri, 27 Feb 2015 20:50:13 +0100 From: Florent Le Coz User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.4.0 MIME-Version: 1.0 To: bug-automake@gnu.org Subject: automake fails if files named =?UTF-8?B?4oCcaW5zdGFsbC5zaOKAnSBh?= =?UTF-8?B?bmQg4oCcaW5zdGFsbC1zaOKAnSBhcmUgZm91bmQgaW4gdGhlIHBhcmVudCBkaXI=?= =?UTF-8?B?ZWN0b3J5?= Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: submit X-Mailman-Approved-At: Fri, 27 Feb 2015 15:03:10 -0500 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -5.0 (-----) Software versions: automake (GNU automake) 1.14.1 aclocal (GNU automake) 1.14.1 autoconf (GNU Autoconf) 2.69 autoreconf (GNU Autoconf) 2.69 Assuming project.tar.gz contains the source code of a project using the autotools as its build system: $ tar xf project.tar.gz $ cd project/ $ touch ../install-sh ../install.sh $ autoreconf -vif autoreconf: Entering directory `.' […] BUG.am: error: 'install.sh' is an anachronism; use 'install-sh' instead […] autoreconf: automake failed with exit status: 1 $ rm ../install-sh ../install.sh $ autoreconf -vif autoreconf: Entering directory `.' […] autoreconf: Leaving directory `.' $ echo $? 0 It seems to be related to this code (taken from the last git revision) # The default auxiliary directory is the first # of ., .., or ../.. that contains install-sh. # Assume . if install-sh doesn't exist yet. for my $dir (qw (. .. ../..)) { if (-f "$dir/install-sh") { $config_aux_dir = $dir; last; } } Which sets $config_aux_dir to "..", but then later we look for install.sh in that directory err_am "'install.sh' is an anachronism; use 'install-sh' instead" if -f $config_aux_dir . '/install.sh'; You probably have reasons to look in .. or ../.. (and I would be quite interested to hear them, actually), but I don’t think it should fail in the specific case I described above. I don’t think it’s safe to assume that the parent directory of a project is not filled with garbage (mine was full or random files, including a install.sh and install-sh files, for some reasons). Plus, it was really, really hard for me to understand which “install.sh” file this error was talking about, since I could not find any such file in my working directory or any sub-directory. Regards -- Florent From debbugs-submit-bounces@debbugs.gnu.org Fri Feb 27 16:02:14 2015 Received: (at 19964) by debbugs.gnu.org; 27 Feb 2015 21:02:14 +0000 Received: from localhost ([127.0.0.1]:60248 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YRS34-0004tC-4c for submit@debbugs.gnu.org; Fri, 27 Feb 2015 16:02:14 -0500 Received: from mx4.gridway.net ([72.1.205.246]:46195) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YRS31-0004sx-QL for 19964@debbugs.gnu.org; Fri, 27 Feb 2015 16:02:12 -0500 Received: from delivery.mygridway.net (delivery.mygridway.net [72.1.205.180]) by mx4.gridway.net (8.14.4/8.14.4/Debian-4) with ESMTP id t1RL24Sf009761 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NOT); Fri, 27 Feb 2015 16:02:05 -0500 Received: from mail.ellipticsemi.com (24.114.47.98) by delivery.mygridway.net (172.17.12.4) with Microsoft SMTP Server (TLS) id 14.3.224.2; Fri, 27 Feb 2015 16:02:04 -0500 Date: Fri, 27 Feb 2015 16:02:04 -0500 From: Nick Bowler To: Florent Le Coz Subject: Re: bug#19964: automake fails =?utf-8?Q?if?= =?utf-8?B?IGZpbGVzIG5hbWVkIOKAnGluc3RhbGwuc2jigJ0gYW5kIOKAnGluc3RhbGwt?= =?utf-8?B?c2jigJ0=?= are found in the parent directory Message-ID: <20150227210204.GA13606@elliptictech.com> References: <54F0CA75.2080803@louiz.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <54F0CA75.2080803@louiz.org> Organization: Elliptic Technologies Inc. User-Agent: Mutt/1.5.23 (2014-03-12) X-Originating-IP: [24.114.47.98] X-Spam-Score: undef - relay 72.1.205.180 marked with skip_spam_scan X-CanIt-Geo: ip=72.1.205.180; country=CA; region=Ontario; city=Ottawa; latitude=45.4167; longitude=-75.7000; http://maps.google.com/maps?q=45.4167,-75.7000&z=6 X-CanItPRO-Stream: base:outbound (inherits from base:default) X-Canit-Stats-ID: Bayes signature not available X-Scanned-By: CanIt (www . roaringpenguin . com) on 72.1.205.246 X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 19964 Cc: 19964@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) > Assuming project.tar.gz contains the source code of a project using > the autotools as its build system: > > $ tar xf project.tar.gz > $ cd project/ > $ touch ../install-sh ../install.sh > $ autoreconf -vif > autoreconf: Entering directory `.' > […] > BUG.am: error: 'install.sh' is an anachronism; use 'install-sh' instead > […] > autoreconf: automake failed with exit status: 1 Full test case: % mkdir foo % cat >foo/configure.ac <<'EOF' AC_INIT([test], [0]) AM_INIT_AUTOMAKE([foreign]) AC_CONFIG_FILES([Makefile]) AC_OUTPUT EOF % touch foo/Makefile.am % touch install-sh install.sh % (cd foo && autoreconf -i) configure.ac:2: installing '../missing' BUG.am: error: 'install.sh' is an anachronism; use 'install-sh' instead autoreconf-2.69: automake failed with exit status: 1 Note how it actually copies the missing script to ".." as well, and NOT into the package directory. If we remove just ../install.sh automake will still copy files into "..", and 'make dist' will fail to include them in the tarball. > You probably have reasons to look in .. or ../.. (and I would be > quite interested to hear them, actually) I imagine it is for subprojects, so that the scripts are not copied into every one. Which unfortunately means changing the automake behaviour could break this usage... However, there is a workaround. If you add AC_CONFIG_AUX_DIR([.]) to configure.ac, then this will cause Automake to not look in .. or ../.., and things should work properly. Cheers, -- Nick Bowler, Elliptic Technologies (http://www.elliptictech.com/) From debbugs-submit-bounces@debbugs.gnu.org Sun Feb 20 22:55:49 2022 Received: (at control) by debbugs.gnu.org; 21 Feb 2022 03:55:49 +0000 Received: from localhost ([127.0.0.1]:34398 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nLzng-0006pt-Uk for submit@debbugs.gnu.org; Sun, 20 Feb 2022 22:55:49 -0500 Received: from woodpecker.gentoo.org ([140.211.166.183]:38350 helo=smtp.gentoo.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nLzng-0006ph-2c for control@debbugs.gnu.org; Sun, 20 Feb 2022 22:55:48 -0500 Received: by smtp.gentoo.org (Postfix, from userid 559) id 83FAD3433AA; Mon, 21 Feb 2022 03:55:42 +0000 (UTC) From: Mike Frysinger To: control@debbugs.gnu.org Subject: Control message Message-Id: <20220221035542.83FAD3433AA@smtp.gentoo.org> Date: Mon, 21 Feb 2022 03:55:42 +0000 (UTC) X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.0 (------) severity 19964 minor tag 19964 confirmed thankyou From debbugs-submit-bounces@debbugs.gnu.org Mon Feb 24 18:35:54 2025 Received: (at 19964-done) by debbugs.gnu.org; 24 Feb 2025 23:35:54 +0000 Received: from localhost ([127.0.0.1]:43419 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tmhzN-00067r-Hc for submit@debbugs.gnu.org; Mon, 24 Feb 2025 18:35:54 -0500 Received: from frenzy.freefriends.org ([198.99.81.75]:57700 helo=freefriends.org) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1tmhzJ-00067c-TW; Mon, 24 Feb 2025 18:35:50 -0500 X-Envelope-From: karl@freefriends.org Received: from freefriends.org (localhost [127.0.0.1]) by freefriends.org (8.16.1/8.16.1) with ESMTPS id 51ONZGrp1123803 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Mon, 24 Feb 2025 16:35:17 -0700 Received: (from apache@localhost) by freefriends.org (8.16.1/8.14.7/Submit) id 51ONZGon1123802; Mon, 24 Feb 2025 16:35:16 -0700 Date: Mon, 24 Feb 2025 16:35:16 -0700 Message-Id: <202502242335.51ONZGon1123802@freefriends.org> From: Karl Berry To: louiz@louiz.org Subject: Re: bug#19964: automake fails if files named =?UTF-8?Q?=E2=80=9Cinstall.sh=E2=80=9D?= and =?UTF-8?Q?=E2=80=9Cinstall-sh=E2=80=9D?= are found in the parent directory In-Reply-To: <54F0CA75.2080803@louiz.org> X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 19964-done Cc: 19964@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Hi Florent - you sent in a report about automake gratuitously finding install.sh in a parent directory back in 2015 (!). Sorry. https://debbugs.gnu.org/cgi/bugreport.cgi?bug=19964 You probably have reasons to look in .. or ../.. (and I would be quite interested to hear them, actually), According to the autoconf manual (AC_CONFIG_AUX_DIR is an autoconf directive, not automake): For convenience when working with subdirectories with their own configure scripts (*note Subdirectories::), if the scripts are not in `SRCDIR' it will also look in `SRCDIR/..' and `SRCDIR/../..' Personally I find this less than compelling as an argument, but it's been that way forever and it would cause much too big a compatibility problem to change it now, IMHO. (Though I am not the autoconf maintainer.) Anyway, back on your report: err_am "'install.sh' is an anachronism; use 'install-sh' instead" if -f $config_aux_dir . '/install.sh'; ... I don't think it should fail in the specific case I described above. I agree. I changed the error to a warning. The presence of a stray install.sh file hardly seems fatal. hard for me to understand which ``install.sh'' file this error was talking about Yes, that must have been frustrating. I also changed the message to include the full location of the install.sh that was found. Thanks for the report, and finding the spot in the code. Closing this bug now, but feel free to reply/reopen or open a new issue if desired. --thanks, karl. ----------------------------------------------------------------------------- automake: warn about install.sh being found, rather than error. Report from https://bugs.gnu.org/19964. * bin/automake.in (scan_autoconf_files): give a msg 'obsolete' rather than err_am. Mention where install.sh was found. (En passant, fix some doubled words.) * NEWS: mention this. diff --git a/NEWS b/NEWS index d06de78fd..9c1b56851 100644 --- a/NEWS +++ b/NEWS @@ -41,10 +41,13 @@ New in 1.x: - The compile script is more robust to Windows configurations; specifically, avoiding double-path translation on MSYS. (bug#75939) + - Only warn about install.sh being found, instead of it being a fatal + error. (bug#19964) + - AM_SILENT_RULES once again always ends with a newline. (bug#72267) diff --git a/bin/automake.in b/bin/automake.in index 70c512af2..a92b02e06 100644 --- a/bin/automake.in +++ b/bin/automake.in @@ -5668,8 +5668,15 @@ sub scan_autoconf_files () { require_conf_file ($required_aux_file{$file}->get, FOREIGN, $file) } - err_am "'install.sh' is an anachronism; use 'install-sh' instead" - if -f $config_aux_dir . '/install.sh'; + + my $auxdir_install_dot_sh = "$config_aux_dir/install.sh"; + # Maybe there is a way to report the line number of the + # AC_CONFIG_AUX_DIR call in configure.ac? Don't know. + msg 'obsolete', "$configure_ac", "'install.sh' is an anachronism\n" + . " (found in $auxdir_install_dot_sh,\n" + . " defined by AC_CONFIG_AUX_DIR);\n" + . " use 'install-sh' instead" + if -f $auxdir_install_dot_sh; compile finished at Mon Feb 24 15:33:37 2025 From unknown Mon Jun 16 23:48:51 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Tue, 25 Mar 2025 11:24:17 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator