From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 8508 invoked by alias); 13 Jul 2012 16:20:37 -0000 Received: (qmail 8479 invoked by uid 22791); 13 Jul 2012 16:20:31 -0000 X-SWARE-Spam-Status: No, hits=-1.0 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,KHOP_THREADED,RCVD_IN_DNSWL_NONE,RCVD_IN_HOSTKARMA_NO,RCVD_IN_HOSTKARMA_YE,T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from qmta09.emeryville.ca.mail.comcast.net (HELO qmta09.emeryville.ca.mail.comcast.net) (76.96.30.96) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Fri, 13 Jul 2012 16:20:13 +0000 Received: from omta23.emeryville.ca.mail.comcast.net ([76.96.30.90]) by qmta09.emeryville.ca.mail.comcast.net with comcast id ZsHo1j0041wfjNsA9sLBRE; Fri, 13 Jul 2012 16:20:11 +0000 Received: from ahallpc ([98.234.249.161]) by omta23.emeryville.ca.mail.comcast.net with comcast id ZsLA1j00B3Vh3xN8jsLAXa; Fri, 13 Jul 2012 16:20:11 +0000 From: "Andy Hall" To: References: <92B65842B4224F3FA65CE40F3608F7DF@multiplay.co.uk> <20120712010353.GB14112@ednor.casa.cgf.cx> <447894CEE2E7427F8E0AFC5A206BAD92@multiplay.co.uk> <981681190.20120712160313@mtu-net.ru> <4FFED62A.7060106@cygwin.com> <4FFEFE4B.5060107@sister-shadow.de> Subject: RE: tar won't extract all files when a file with exe extension precedes the same without extension inside the archive Date: Fri, 13 Jul 2012 16:20:00 -0000 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit In-Reply-To: <4FFEFE4B.5060107@sister-shadow.de> X-IsSubscribed: yes Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner@cygwin.com Mail-Followup-To: cygwin@cygwin.com X-SW-Source: 2012-07/txt/msg00285.txt.bz2 > > > 2. Since this is a "Windows thing", is there some reason why the > execution > > of "file" or "file.exe" isn't handled as a special case in the exec call > > (and all its flavors) and no place else? > > make, for example? If you have a rule that creates "foo" from foo.c, > gcc will actually create "foo.exe". The next time you run make, it > won't see "foo" and recreate "foo.exe", even if "foo.exe" is still > up to date. > > With the special handling of .exe, when make checks for "foo", cygwin > checks "foo" first, doesn't find anything, and then checks "foo.exe", > returning its result to make and make is happy. > > Anothen example: A script tries to execute "foo" from . , cygwin > executes "foo.exe" instead and the script thinks "foo" exists, > but a subsequent "touch foo" (or "rm foo" or whatever) fails, which > is massively inconsistent. > > I consider the current handling of .exe files quite consistent. > > Or, in other words, when forced to choose between the two pains, > I'd rather endure this. > > Otto > Well, this seems to be something that has to be addressed specifically in make and gcc (and other similar places). If make has a rule to create "foo" from foo.c, then that is what it should do! Dennis Ritchie would turn over in his grave is he heard that commands like tar, rsync, zip, ... were not idempotent WRT at least filenames and contents, let alone permissions. Andy -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple