git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: Missing inversion in Makefile (ee9be06)

From
Johannes Sixt <j6t@kdbg.org>
Date
Dec 27, 2014, 19:07 UTC
Message-ID
<549F0355.5020805@kdbg.org>
In-Reply-To
<E3DB9AD2A8914C379FB3371494B0B816@PhilipOakley>
Am 27.12.2014 um 19:49 schrieb Philip Oakley:
Show 22 quoted lines
> Hi,
> 
> In ee9be06 (perl: detect new files in MakeMaker builds, 2012-07-27)
> there is a step to detect if there has been an update to the PM.* files,
> however it appears that the logic is inverted in the comparison.
> 
> I need some extra eye's on this to be sure I have it right (I'm trying
> to debug an old Windows breakage...).
> 
> The resultant output of a make dry run included (on my m/c)..:
> 
>  find perl -type f -name '*.pm' | sort >perl/PM.stamp+ && \
>   { cmp perl/PM.stamp+ perl/PM.stamp >/dev/null 2>/dev/null || mv
> perl/PM.stamp+ perl/PM.stamp; } && \
>   rm -f perl/PM.stamp+
>  make -C perl  PERL_PATH='/usr/bin/perl' prefix='/c/Documents and
> Settings/Philip' perl.mak
> 
> Shouldn't it be `{ ! cmp ` so that when the files are not identical, the
> move is performed?
> 
> https://github.com/git/git/blob/ee9be06770223238c6a22430eb874754dd22dfb0/Makefile#L2097

The existing code looks correct to me. cmp succeeds when the files are identical and fails when they are different: When it succeeds (files are equal), the mv is not executed. When it fails, either because a file does not exist or they are different, the mv is executed.

-- Hannes
-- 
-- 
*** Please reply-to-all at all times ***
*** (do not pretend to know who is subscribed and who is not) ***
*** Please avoid top-posting. ***
The msysGit Wiki is here: https://github.com/msysgit/msysgit/wiki - Github accounts are free.

You received this message because you are subscribed to the Google
Groups "msysGit" group.
To post to this group, send email to msysgit@googlegroups.com
To unsubscribe from this group, send email to
msysgit+unsubscribe@googlegroups.com
For more options, and view previous threads, visit this group at
http://groups.google.com/group/msysgit?hl=en_US?hl=en

--- 
You received this message because you are subscribed to the Google Groups "Git for Windows" group.
To unsubscribe from this group and stop receiving emails from it, send an email to msysgit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Previous: Philip OakleyNext: Philip Oakley
Message 2 of 4 in “Missing inversion in Makefile (ee9be06)”
  1. Philip OakleyDec 27, 2014
  2. Johannes SixtDec 27, 2014
  3. Philip OakleyDec 27, 2014
  4. Philip OakleyFeb 10, 2015

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.