Subject: Re: [PATCH 04/17] Makefile: a dry-run can error out if no perl. Document the issue

From: Junio C Hamano <[email-masked]>
Date: Thu, 25 Jun 2015 08:24:31 -0700

Philip Oakley <[email-masked]> writes:

> A 'make -n' dry-run is used as part of the /compat/vcbuild and
> /contrib/buildsystems code. The commit ee9be06 (perl: detect new files
> in MakeMaker builds, 2012-07-27) was not aware of that dry-run usage
> and thus would not execute the target.
>
> Add a comment to the make file stating the issue and the available
> solutions of either NO_PERL or a '+recipe'.

I am not sure what this patch is trying to achieve.

If you are not touching what this Makefile actually does, then I
would imagine that you are running the "buildsystems code" that
actually drives 'make -n' with some "available solution" (perhaps
you are running 'make -n NO_PERL=NoThanks' or something like that)?
Then instead of a command like this that nobody would read in this
file, the same command can instead go there to explain what the
"workaround" (e.g. unusual-looking 'make -n NO_PERL=NoThanks') is
doing?

I suspect you mean by +recipe that you modify this makefile to make
such a workaround unnecessary?  If that is the case, why isn't such
a change actually be done with this commit, instead of a comment?

I am not sure what this patch is trying to achieve.

Puzzled...

>
> Signed-off-by: Philip Oakley <[email-masked]>
> ---
>  Makefile | 3 +++
>  1 file changed, 3 insertions(+)
>
> diff --git a/Makefile b/Makefile
> index 149f1c7..22108bb 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -1746,6 +1746,9 @@ $(SCRIPT_PERL_GEN): perl/perl.mak
>  
>  perl/perl.mak: perl/PM.stamp
>  
> +# 'make -n' (dry-run) will not execute this target which creates/updates the PM.stamp file.
> +# To avoid the error of failing to find the target PM.stamp, either use NO_PERL=1 (YesPlease),
> +# or add a leading '+' to the recipe '+$(QUIET_GEN)$(FIND) perl ...' so that it is executed.
>  perl/PM.stamp: FORCE
>  	@$(FIND) perl -type f -name '*.pm' | sort >$@+ && \
>  	{ cmp $@+ $@ >/dev/null 2>/dev/null || mv $@+ $@; } && \
> -- 
> 2.3.1
>
> -- 

-- 
-- 
*** 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 [email-masked]
To unsubscribe from this group, send email to
[email-masked]
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 [email-masked].
For more options, visit https://groups.google.com/d/optout.