From unknown Tue Jun 24 22:34:19 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#7374 <7374@debbugs.gnu.org> To: bug#7374 <7374@debbugs.gnu.org> Subject: Status: Automake bug when moving files to different directory Reply-To: bug#7374 <7374@debbugs.gnu.org> Date: Wed, 25 Jun 2025 05:34:19 +0000 retitle 7374 Automake bug when moving files to different directory reassign 7374 automake submitter 7374 T=C3=B6r=C3=B6k Edwin severity 7374 normal thanks From debbugs-submit-bounces@debbugs.gnu.org Thu Nov 11 07:57:24 2010 Received: (at submit) by debbugs.gnu.org; 11 Nov 2010 12:57:24 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1PGWiR-0002ID-L2 for submit@debbugs.gnu.org; Thu, 11 Nov 2010 07:57:24 -0500 Received: from eggs.gnu.org ([140.186.70.92]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1PGVvs-0001FW-8o for submit@debbugs.gnu.org; Thu, 11 Nov 2010 07:07:12 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1PGW0T-00031f-Dg for submit@debbugs.gnu.org; Thu, 11 Nov 2010 07:11:58 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,T_DKIM_INVALID,T_TO_NO_BRKTS_FREEMAIL autolearn=unavailable version=3.3.1 Received: from lists.gnu.org ([199.232.76.165]:35420) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1PGW0T-00031b-97 for submit@debbugs.gnu.org; Thu, 11 Nov 2010 07:11:57 -0500 Received: from [140.186.70.92] (port=55156 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1PGW0S-0008Bl-Bq for bug-automake@gnu.org; Thu, 11 Nov 2010 07:11:57 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1PGW0N-000304-B5 for bug-automake@gnu.org; Thu, 11 Nov 2010 07:11:56 -0500 Received: from mail-bw0-f41.google.com ([209.85.214.41]:50302) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1PGW0N-0002zp-62 for bug-automake@gnu.org; Thu, 11 Nov 2010 07:11:51 -0500 Received: by bwz16 with SMTP id 16so1925381bwz.0 for ; Thu, 11 Nov 2010 04:11:50 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:sender:date:from:to:subject :message-id:x-mailer:mime-version:content-type; bh=egAb6dcYVwtPZcaOzuIgGJRRNEwHLnj9yzhiL6KsRqE=; b=FmUKzLh0i5s7gIjvW3CRJZch8eSyYtf3c7CGmXp+BShNmDELiz7qYI533Eibup+tvx opaRhjEXZFEcegP1zUCs4TyHhFyg3v9lJ5y74j5+7JN+UX/C3JaKJO0TBnLW9QVRg3o1 S1U/yz4JTGLEeS8mlYNOllJKLHc0rF8q5UyUE= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=sender:date:from:to:subject:message-id:x-mailer:mime-version :content-type; b=Im002XymPADqomWgOqK2HAnUejzj04j1PMknZutcPx1JatLAJGvqphTWLzZIw+cXOb 7aVVbvPPmaWhFBI+0wo3x8wR1+C/vf0tKTeEuTtgxot8b+E+PnageTSUdNXgmfOsSPkI J/rondsrsdr05IqUtKw8zIaPGbjmWzWDNFVTA= Received: by 10.204.69.73 with SMTP id y9mr1211407bki.76.1289477509092; Thu, 11 Nov 2010 04:11:49 -0800 (PST) Received: from deb0 ([79.114.93.197]) by mx.google.com with ESMTPS id p22sm891695bkp.21.2010.11.11.04.11.47 (version=SSLv3 cipher=RC4-MD5); Thu, 11 Nov 2010 04:11:48 -0800 (PST) Date: Thu, 11 Nov 2010 14:11:44 +0200 From: =?UTF-8?B?VMO2csO2aw==?= Edwin To: bug-automake@gnu.org Subject: Automake bug when moving files to different directory Message-ID: <20101111141144.34e293d9@deb0> X-Mailer: Claws Mail 3.7.6 (GTK+ 2.20.1; x86_64-pc-linux-gnu) Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="MP_/qY3d5GWXXaxR.0x0hAL5kRJ" X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) X-Spam-Score: -5.9 (-----) X-Debbugs-Envelope-To: submit X-Mailman-Approved-At: Thu, 11 Nov 2010 07:57:22 -0500 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 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: -5.9 (-----) --MP_/qY3d5GWXXaxR.0x0hAL5kRJ Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Disposition: inline Hi, Whenever I move a C/C++ file from a directory to another (and update Makefile.am), a subsequent 'make' fails because it is looking for the file in the old place (the .Plo dependency file actually). For exampling moving test1/Foo.c to test2/Foo.c results in this error: make: *** No rule to make target `test1/Foo.c', needed by `Foo.lo'. Stop. Tried a 'make clean', but it doesn't fix it, rerunning configure doesn't fix it either. Only a 'make distclean' and rerunning configure fixes it. Versions: autoconf (GNU Autoconf) 2.67 automake (GNU automake) 1.11.1 ltmain.sh (GNU libtool) 2.2.6b gcc version 4.4.5 (Debian 4.4.5-6) Minimal example attached as automake-move-bug.tar.gz, here are the steps to reproduce the bug: # Build initially, all good autoreconf -fvi && ./configure && make # Clean and rebuild, all good make clean && make # Move file around mkdir test2 mv test1/Foo.c test2/Foo.c mv test1/foo1.h test2/foo1.h sed -ie 's/test1/test2/' Makefile.am # Regen, and rerun configure, good so far autoreconf -fvi && ./configure # This one fails, but should work: make || echo "Make failed, but should have worked!" # Lets try cleaning and making again, fails too # However I think 'make clean' should fix this as last resort, not # distcheck. make clean && make || echo "Make clean, and remake failed, but should have worked!" # Lets try distclean, this finally works make distclean && ./configure && make This is a bit annoying when it happens, because it breaks our buildbots, and have to login to each one and run make distclean manually (or zap the builddir) to fix it. Fortunately we don't move around files that much (this is only 2nd time it occured in a few years, and 1st time I wrote a testcase, but forgot to file the bugreport). I think that: - make clean should remove the dependency files if they're out of date/wrong - rerunning configure or config.status should regen the dependencies properly, and not rely on some old, out-of-date dependencies Best regards, --Edwin --MP_/qY3d5GWXXaxR.0x0hAL5kRJ Content-Type: application/x-gzip Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename=automake-move-bug.tar.gz H4sIACTb20wCA+2ZW2/iRhSAefavOM1KGyKBsY0Nalc8eIFkUSFsDVEf0AoN9gCjmJlobCeNuv3v nbG5peombSW82835JLA9czwXH5/LjK1G5eRYirbn6aPd9qzj446KbbutlhJym62KZVtO062AVymB LEmJBKjQ6IHxZ+Reqv+fYjU2buPb0b/rWU2tf89tof7L0f+CSDM8uf5brvtl/XvuXv/Ntta/unIq YKH+Tw7jKSyFqF68M/TphjBevTB+N0AhaZpJvqv+w6gg36H9pzRJ7cap7f8f+/+Wre3faTvo/8vU /6UQJ4sCL/v/9l7/rq3eE9ux1WuA/r8E3jAexllE4Uy5edtcnxn7iPA0Crg6AmAI+F7tv9D+V7J/ lewd7F/7f8dpe2j/5dq/aTZCsdkI/sQJvEOTfwX273wr+Z9nF+s/Rx0w/ytF/6HgS7bKJDVJeDr9 P+f/m3bzsP5vutr/e6oI/X8J+N35x6Af9H+pzhzT+/HThaFKBteDaXWmHcOn2swy7aK0O76+HFzN R343GM97g6A627i6ZpTLz/2b6Xjk/9yvzmzTtqH+K4lj9X8nZEoWLGbpo7qiUgoJSRrVxV3KBE9U lJGUrXjRxYe+3+sH88m01zWG07xd3f7IH1xP1U9Vjca9vpYc30w/3qhBjsgtXbKYqvvRmf9H+y+C /mn9/7P537H9ty3t/1sttP9S0InegkhM9F6t/e88qEk2X8n+Hcc6iv/tfP2H+z9lxf/huOsP5/7o cuhfTTr1AWxcY8G4SgvGV4E/mnR0HmDov/lkfBN0+xPoQP7RyOCCcVU8nA4H7wM/GPQnnZgttKgZ k+KWYc/v9Y5Lt6fzmOya6xztQKITKt3+k1Cyu/TU679n7N/Wxv70+7+6wPhfzv4PvM9YHAHjLGUq Y3+sgc7bV0JEBslSlZzr9SHUl/cM3r4F87Bc1JcbFTuMN9CNKeFAeASSLnRzR41oEQhzgcMNI3FP QQcdIFJkXEndRkxCvhVhbO7hyCMUhVvvsK8qtiu3dcWFkdAI6ozCebLd0yxqz+Eowqm+A7qivLYd rcw47GdUy0cMiYAlkS/MXjU0XbMEBFcTISxOarDIUkjWIlNP80HI25+KqX/+DDRcCzjTo8hFafRE dk3Us9A30OiHM9XskKYJpPKxeGiMr/Khqrby0xVhavB5j5AKoeQ/iAd6TyUMIF0zfgvnhyd+vutj yX7TtQmQBGKSpGrmiVqX1YCLFCKWpOGahrfm3yjrL+PP63YPb/NvZ5T3VLSQj2bJuH7lctmk6Hwv 8qW3DV02giAIgiAIgiAIgiAIgiAIgiAIgiAIgiAIgiAIgiAI8or5Ez+GmMkAUAAA --MP_/qY3d5GWXXaxR.0x0hAL5kRJ-- From debbugs-submit-bounces@debbugs.gnu.org Thu Nov 11 14:37:23 2010 Received: (at 7374) by debbugs.gnu.org; 11 Nov 2010 19:37:23 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1PGcxX-0005KB-Jf for submit@debbugs.gnu.org; Thu, 11 Nov 2010 14:37:23 -0500 Received: from mailout-de.gmx.net ([213.165.64.23] helo=mail.gmx.net) by debbugs.gnu.org with smtp (Exim 4.69) (envelope-from ) id 1PGcxV-0005K6-BR for 7374@debbugs.gnu.org; Thu, 11 Nov 2010 14:37:22 -0500 Received: (qmail invoked by alias); 11 Nov 2010 19:42:06 -0000 Received: from xdsl-89-0-146-206.netcologne.de (EHLO localhost.localdomain) [89.0.146.206] by mail.gmx.net (mp057) with SMTP; 11 Nov 2010 20:42:06 +0100 X-Authenticated: #13673931 X-Provags-ID: V01U2FsdGVkX1/GPE8kxazGdOIYf9vRvj30ix1QFuLoESPP+pMN0a lAWrXz6YayeD9y Received: from ralf by localhost.localdomain with local (Exim 4.69) (envelope-from ) id 1PGd25-0002gx-EE; Thu, 11 Nov 2010 20:42:05 +0100 Date: Thu, 11 Nov 2010 20:42:05 +0100 From: Ralf Wildenhues To: =?iso-8859-1?B?VPZy9ms=?= Edwin Subject: Re: bug#7374: Automake bug when moving files to different directory Message-ID: <20101111194205.GG5731@gmx.de> Mail-Followup-To: =?iso-8859-1?B?VPZy9ms=?= Edwin , 7374@debbugs.gnu.org References: <20101111141144.34e293d9@deb0> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20101111141144.34e293d9@deb0> Organization: Institute for Numerical Simulation, University of Bonn User-Agent: Mutt/1.5.20 (2010-08-04) X-Y-GMX-Trusted: 0 X-Spam-Score: -2.7 (--) X-Debbugs-Envelope-To: 7374 Cc: 7374@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 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.7 (--) Hi Török, thanks for the bug report. * Török Edwin wrote on Thu, Nov 11, 2010 at 01:11:44PM CET: > Whenever I move a C/C++ file from a directory to another (and update > Makefile.am), a subsequent 'make' fails because it is looking for the > file in the old place (the .Plo dependency file actually). > > For exampling moving test1/Foo.c to test2/Foo.c results in this error: > make: *** No rule to make target `test1/Foo.c', needed by `Foo.lo'. > Stop. Confirmed. This is the "deleted header file" problem (discussed in the list archives, and in the manual), except that for you it applies to the primary source file, not included headers. For the headers we work around the issue by adding header.h: lines in the .Po files for each included header (non-ancient gcc versions do this for us, for other compilers depcomp does it). We don't do this for the primary source files. I think this is so that we get a sensible error from make when some primary source file isn't present (haven't checked archives on this yet, though). > This is a bit annoying when it happens, because it breaks our > buildbots, and have to login to each one and run make distclean > manually (or zap the builddir) to fix it. How come this happens at all for your buildbots? Do they do incremental builds only, rather than full rebuilds from scratch? I'd expect bots to mostly do the latter, unlike developers while hacking. > Fortunately we don't move > around files that much (this is only 2nd time it occured in a few > years, and 1st time I wrote a testcase, but forgot to file the > bugreport). Good. So this isn't a pressing issue. > I think that: > - make clean should remove the dependency files if they're out of > date/wrong That is unfortunately not possible, because make will barf if files included from the Makefile are missing. GNU make has '-include' for this, but there is no equivalent of that for portable make. This is the reason that config.status produces stub .Po files when they are not present. > - rerunning configure or config.status should regen the dependencies > properly, and not rely on some old, out-of-date dependencies Oh, we really believe in tracking dependencies on the fly for compilation, i.e., we try to avoid extra invocations of the compiler in order to compute dependency information (at least with capable compilers). Hope that helps. Cheers, Ralf From debbugs-submit-bounces@debbugs.gnu.org Thu Nov 11 15:06:17 2010 Received: (at 7374) by debbugs.gnu.org; 11 Nov 2010 20:06:17 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1PGdPU-0005X3-TJ for submit@debbugs.gnu.org; Thu, 11 Nov 2010 15:06:17 -0500 Received: from mail-gy0-f172.google.com ([209.85.160.172]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1PGdPS-0005Wy-FZ for 7374@debbugs.gnu.org; Thu, 11 Nov 2010 15:06:15 -0500 Received: by gyh20 with SMTP id 20so1144539gyh.3 for <7374@debbugs.gnu.org>; Thu, 11 Nov 2010 12:11:01 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:sender:date:from:to:cc :subject:message-id:in-reply-to:references:x-mailer:mime-version :content-type:content-transfer-encoding; bh=dqfPBuaZLPpPTiwWHg4bsUztD7IDSodK7MVkh6l9JQM=; b=f/q4CvmkWw+hxEnBIaPL1Vxbt61D5f1/UZM7FhsmBf6K9Z17o2KjuUfu3/X2X5G+bc IRxWg9NRHiwlAlTMkiO8tGHWy5N3TjjmGyhn5N3ICjI2iLznmieYFOIj6X2K2lEbI4A3 w1/8dKsDsykr1DirzASmIzogEXR+JivUE4pGs= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=sender:date:from:to:cc:subject:message-id:in-reply-to:references :x-mailer:mime-version:content-type:content-transfer-encoding; b=iCgUHJE98s2LWiQA3P4csKOBZzhVmckdl/BqOGbFmQpzXCG3H4Uekz/PV5PcER1KtS nygtceK9CJLfVa1WKE8GYVz4mR/hNDdrj8YvMArYM/qf1V+VeZ3opJIHKqnFP92aPIV4 pUuTtPjB21aCRWR0mWbNy9QRb1IbVtIAmSRUQ= Received: by 10.204.115.73 with SMTP id h9mr1867562bkq.52.1289506260390; Thu, 11 Nov 2010 12:11:00 -0800 (PST) Received: from deb0 ([79.114.93.197]) by mx.google.com with ESMTPS id f21sm1152858bkf.12.2010.11.11.12.10.58 (version=SSLv3 cipher=RC4-MD5); Thu, 11 Nov 2010 12:10:59 -0800 (PST) Date: Thu, 11 Nov 2010 22:10:56 +0200 From: =?UTF-8?B?VMO2csO2aw==?= Edwin To: Ralf Wildenhues Subject: Re: bug#7374: Automake bug when moving files to different directory Message-ID: <20101111221056.4ba7a1ce@deb0> In-Reply-To: <20101111194205.GG5731@gmx.de> References: <20101111141144.34e293d9@deb0> <20101111194205.GG5731@gmx.de> X-Mailer: Claws Mail 3.7.6 (GTK+ 2.20.1; x86_64-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -4.3 (----) X-Debbugs-Envelope-To: 7374 Cc: 7374@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 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: -3.7 (---) On Thu, 11 Nov 2010 20:42:05 +0100 Ralf Wildenhues wrote: > Hi T=C3=B6r=C3=B6k, >=20 > thanks for the bug report. >=20 > * T=C3=B6r=C3=B6k Edwin wrote on Thu, Nov 11, 2010 at 01:11:44PM CET: > > Whenever I move a C/C++ file from a directory to another (and update > > Makefile.am), a subsequent 'make' fails because it is looking for > > the file in the old place (the .Plo dependency file actually). > >=20 > > For exampling moving test1/Foo.c to test2/Foo.c results in this > > error: make: *** No rule to make target `test1/Foo.c', needed by > > `Foo.lo'. Stop. >=20 > Confirmed. This is the "deleted header file" problem (discussed in > the list archives, and in the manual), except that for you it applies > to the primary source file, not included headers. >=20 > For the headers we work around the issue by adding > header.h: >=20 > lines in the .Po files for each included header (non-ancient gcc > versions do this for us, for other compilers depcomp does it). We > don't do this for the primary source files. I think this is so that > we get a sensible error from make when some primary source file isn't > present (haven't checked archives on this yet, though). >=20 > > This is a bit annoying when it happens, because it breaks our > > buildbots, and have to login to each one and run make distclean > > manually (or zap the builddir) to fix it. >=20 > How come this happens at all for your buildbots? Do they do > incremental builds only, rather than full rebuilds from scratch? I'd > expect bots to mostly do the latter, unlike developers while hacking. They do incremental builds to save some time, there are parts of the code that rarely change. Bots aren't the only ones affected, team members and some git users too. Have to tell them "automake bug, run 'make distclean'". Some people know to retry running 'make clean', or rerunning configure. distclean is not very popular. >=20 > > Fortunately we don't move > > around files that much (this is only 2nd time it occured in a few > > years, and 1st time I wrote a testcase, but forgot to file the > > bugreport). >=20 > Good. So this isn't a pressing issue. >=20 > > I think that: > > - make clean should remove the dependency files if they're out of > > date/wrong >=20 > That is unfortunately not possible, because make will barf if files > included from the Makefile are missing. GNU make has '-include' for > this, but there is no equivalent of that for portable make. >=20 > This is the reason that config.status produces stub .Po files when > they are not present. OK, then how about: - make clean deletes .Po/.Plo files, and invokes config.status with proper flags to produce the stub .Po files? Having the old .Po files around after a make clean isn't going to help speed up the build anyway since all the obj files are gone. >=20 > > - rerunning configure or config.status should regen the > > dependencies properly, and not rely on some old, out-of-date > > dependencies >=20 > Oh, we really believe in tracking dependencies on the fly for > compilation, i.e., we try to avoid extra invocations of the compiler > in order to compute dependency information (at least with capable > compilers). See above, it could just generate the dummy .Po files. But of course that would mean that updating Makefile.am/configure could result in rebuild of entire project, which is not good. If there was some way to check that .Po files are still valid, then config.status could do that, and replace them with dummy ones if they're not valid.=20 Like checking if the source file declared in the .Po file still exists. Not sure how easy or hard that would be to do in portable shell programming. Probably not impossible though ;) Best regards, --Edwin From debbugs-submit-bounces@debbugs.gnu.org Thu Nov 11 15:33:19 2010 Received: (at 7374) by debbugs.gnu.org; 11 Nov 2010 20:33:19 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1PGdpf-0005is-BA for submit@debbugs.gnu.org; Thu, 11 Nov 2010 15:33:19 -0500 Received: from mailout-de.gmx.net ([213.165.64.23] helo=mail.gmx.net) by debbugs.gnu.org with smtp (Exim 4.69) (envelope-from ) id 1PGdpc-0005im-Ix for 7374@debbugs.gnu.org; Thu, 11 Nov 2010 15:33:17 -0500 Received: (qmail invoked by alias); 11 Nov 2010 20:38:02 -0000 Received: from xdsl-89-0-146-206.netcologne.de (EHLO localhost.localdomain) [89.0.146.206] by mail.gmx.net (mp005) with SMTP; 11 Nov 2010 21:38:02 +0100 X-Authenticated: #13673931 X-Provags-ID: V01U2FsdGVkX18cvQ1fkYEc5dUcN/2TQVVxiLDOSwWIKOOtow1+wB uAAyTQfcMG8fXf Received: from ralf by localhost.localdomain with local (Exim 4.69) (envelope-from ) id 1PGduD-0004Q7-MZ; Thu, 11 Nov 2010 21:38:01 +0100 Date: Thu, 11 Nov 2010 21:38:01 +0100 From: Ralf Wildenhues To: =?iso-8859-1?B?VPZy9ms=?= Edwin Subject: Re: bug#7374: Automake bug when moving files to different directory Message-ID: <20101111203801.GL5731@gmx.de> Mail-Followup-To: =?iso-8859-1?B?VPZy9ms=?= Edwin , 7374@debbugs.gnu.org References: <20101111141144.34e293d9@deb0> <20101111194205.GG5731@gmx.de> <20101111221056.4ba7a1ce@deb0> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20101111221056.4ba7a1ce@deb0> Organization: Institute for Numerical Simulation, University of Bonn User-Agent: Mutt/1.5.20 (2010-08-04) X-Y-GMX-Trusted: 0 X-Spam-Score: -2.7 (--) X-Debbugs-Envelope-To: 7374 Cc: 7374@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 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.7 (--) * Török Edwin wrote on Thu, Nov 11, 2010 at 09:10:56PM CET: > On Thu, 11 Nov 2010 20:42:05 +0100 Ralf Wildenhues wrote: > > * Török Edwin wrote on Thu, Nov 11, 2010 at 01:11:44PM CET: > > > I think that: > > > - make clean should remove the dependency files if they're out of > > > date/wrong > > > > That is unfortunately not possible, because make will barf if files > > included from the Makefile are missing. GNU make has '-include' for > > this, but there is no equivalent of that for portable make. > > > > This is the reason that config.status produces stub .Po files when > > they are not present. > > OK, then how about: > - make clean deletes .Po/.Plo files, and invokes config.status with > proper flags to produce the stub .Po files? > > Having the old .Po files around after a make clean isn't going to help > speed up the build anyway since all the obj files are gone. True, but the above sounds quite ugly as well. Here's a better suggestion: use the subdir-objects automake option (you can add it to the options passed to AM_INIT_AUTOMAKE) and configure with --enable-maintainer-mode. That way the old .Po file will just not be read any more, and the maintainer mode will trigger the automake rerun that then causes the rules in Makefile to be successfully updated. Hope that is good enough for you. Cheers, Ralf From debbugs-submit-bounces@debbugs.gnu.org Thu Nov 11 15:45:00 2010 Received: (at 7374-done) by debbugs.gnu.org; 11 Nov 2010 20:45:00 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1PGe0x-0005nf-JP for submit@debbugs.gnu.org; Thu, 11 Nov 2010 15:45:00 -0500 Received: from mail-bw0-f44.google.com ([209.85.214.44]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1PGe0v-0005na-67 for 7374-done@debbugs.gnu.org; Thu, 11 Nov 2010 15:44:57 -0500 Received: by bwz12 with SMTP id 12so2352389bwz.3 for <7374-done@debbugs.gnu.org>; Thu, 11 Nov 2010 12:49:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:sender:date:from:to:cc :subject:message-id:in-reply-to:references:x-mailer:mime-version :content-type:content-transfer-encoding; bh=CNqYOYWUynFRx2UIrlqSbDs98IMEh1Ysql/X1Ss0WQk=; b=vJtjyNvAJRM3nYjrXQSam4iM+pXalHFao869IVWqG+yHD06kuqJXwhgxL8kySl0ziv Ng5XYBda5wjU6sh79nFKkfK5HOJRxK/9GevEIeRKgZVRfjkSaP2jT9YIVrzFGvOX7vdj U2w9FJqheR/9gvq2lY8PaakrqMBJsSn8JhYsQ= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=sender:date:from:to:cc:subject:message-id:in-reply-to:references :x-mailer:mime-version:content-type:content-transfer-encoding; b=xbsssYkI7DwzdW+g5yRDEuczXQlo+RVJYpVCI6rksSGXA5s3fWF/WRUpe0hjy+Cn2V B7hQmYWr8fImBeqJtx4ZO1l/UkKx1zdn3yckILwk00sy3J0zgoZcoPeHvbrV+qphvx1u DXofUKMJwMkN+Lh1zs2TtcBjC1OS8KmKDSgoY= Received: by 10.204.73.78 with SMTP id p14mr1908506bkj.154.1289508583378; Thu, 11 Nov 2010 12:49:43 -0800 (PST) Received: from deb0 ([79.114.93.197]) by mx.google.com with ESMTPS id v1sm1166293bkt.5.2010.11.11.12.49.41 (version=SSLv3 cipher=RC4-MD5); Thu, 11 Nov 2010 12:49:42 -0800 (PST) Date: Thu, 11 Nov 2010 22:49:39 +0200 From: =?UTF-8?B?VMO2csO2aw==?= Edwin To: Ralf Wildenhues Subject: Re: bug#7374: Automake bug when moving files to different directory Message-ID: <20101111224939.074c9306@deb0> In-Reply-To: <20101111203801.GL5731@gmx.de> References: <20101111141144.34e293d9@deb0> <20101111194205.GG5731@gmx.de> <20101111221056.4ba7a1ce@deb0> <20101111203801.GL5731@gmx.de> X-Mailer: Claws Mail 3.7.6 (GTK+ 2.20.1; x86_64-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -3.4 (---) X-Debbugs-Envelope-To: 7374-done Cc: 7374-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 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: -3.3 (---) On Thu, 11 Nov 2010 21:38:01 +0100 Ralf Wildenhues wrote: > * T=C3=B6r=C3=B6k Edwin wrote on Thu, Nov 11, 2010 at 09:10:56PM CET: > > On Thu, 11 Nov 2010 20:42:05 +0100 Ralf Wildenhues wrote: > > > * T=C3=B6r=C3=B6k Edwin wrote on Thu, Nov 11, 2010 at 01:11:44PM CET: > > > > I think that: > > > > - make clean should remove the dependency files if they're out > > > > of date/wrong > > >=20 > > > That is unfortunately not possible, because make will barf if > > > files included from the Makefile are missing. GNU make has > > > '-include' for this, but there is no equivalent of that for > > > portable make. > > >=20 > > > This is the reason that config.status produces stub .Po files when > > > they are not present. > >=20 > > OK, then how about: > > - make clean deletes .Po/.Plo files, and invokes config.status with > > proper flags to produce the stub .Po files? > >=20 > > Having the old .Po files around after a make clean isn't going to > > help speed up the build anyway since all the obj files are gone. >=20 > True, but the above sounds quite ugly as well. >=20 > Here's a better suggestion: use the subdir-objects automake option > (you can add it to the options passed to AM_INIT_AUTOMAKE) Excellent, that does exactly what I wanted! (and my testcase works now) > and > configure with --enable-maintainer-mode. > That way the old .Po file > will just not be read any more, and the maintainer mode will trigger > the automake rerun that then causes the rules in Makefile to be > successfully updated. Yes, I use maintainer-mode sometimes. For simple edits I tend to just run 'automake' though, and commit Makefile.in. >=20 > Hope that is good enough for you. Yes, thanks a lot! We are in code freeze right now, but I'll definetely make that change after we're done. We can close this bug now. Best regards, --Edwin From unknown Tue Jun 24 22:34:19 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Fri, 10 Dec 2010 12:24:04 +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