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

Re: [PATCH 4/6] build: be clearer about order-only prerequisites

From
Junio C Hamano <gitster@pobox.com>
Date
May 26, 2013, 21:50 UTC
Message-ID
<7v1u8t76mo.fsf@alter.siamese.dyndns.org>
In-Reply-To
<1369449666-18879-5-git-send-email-felipe.contreras@gmail.com>
Felipe Contreras <felipe.contreras@gmail.com> writes:
> Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
> ---
This patch is wrong, I think.
The canonical example of order-only is something like
  http://www.kolpackov.net/pipermail/notes/2004-January/000001.html

where you want to make sure an output directory already exists, but you do not want to list that as prerequiste _input_ to produce output from the source. G-V-F has real information that is used to affect the output, which is quite a different animal.

Try applying this 6-patch series, "make clean; make git.spec", and then "git checkout HEAD~2" to come back to the commit for this patch. And then try running "make git.spec". I think Version line will not change and still claim you are building a version with the 6-patch series fully applied.

After a quick scan of the other 5 patches in the series, they looked all sensible, and I do not think any of them depends on the change in this patch, so I think we can safely drop this one.

Administrivia: as I said in the whats cooking message, I'll be
taking things slow til the beginning of next month, so if your (not
limited to Felipe) messages are not answered by me, it merely means
they were not yet read by me (as opposed to dismissed as not worth
reading without responding).
Show 33 quoted lines
>  Makefile | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/Makefile b/Makefile
> index 28b6117..97ff848 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -1787,7 +1787,7 @@ perl/PM.stamp: FORCE
>  perl/perl.mak: GIT-CFLAGS GIT-PREFIX perl/Makefile perl/Makefile.PL
>  	$(QUIET_SUBDIR0)perl $(QUIET_SUBDIR1) PERL_PATH='$(PERL_PATH_SQ)' prefix='$(prefix_SQ)' $(@F)
>  
> -$(patsubst %.perl,%,$(SCRIPT_PERL)): % : %.perl GIT-VERSION-FILE
> +$(patsubst %.perl,%,$(SCRIPT_PERL)): % : %.perl | GIT-VERSION-FILE
>  	$(QUIET_GEN)$(RM) $@ $@+ && \
>  	INSTLIBDIR=`MAKEFLAGS= $(MAKE) -C perl -s --no-print-directory instlibdir` && \
>  	sed -e '1{' \
> @@ -1850,7 +1850,7 @@ CONFIGURE_RECIPE = $(RM) configure configure.ac+ && \
>  		   autoconf -o configure configure.ac+ && \
>  		   $(RM) configure.ac+
>  
> -configure: configure.ac GIT-VERSION-FILE
> +configure: configure.ac | GIT-VERSION-FILE
>  	$(QUIET_GEN)$(CONFIGURE_RECIPE)
>  
>  ifdef AUTOCONFIGURED
> @@ -2415,7 +2415,7 @@ quick-install-html:
>  
>  ### Maintainer's dist rules
>  
> -git.spec: git.spec.in GIT-VERSION-FILE
> +git.spec: git.spec.in | GIT-VERSION-FILE
>  	sed -e 's/@@VERSION@@/$(GIT_VERSION)/g' < $< > $@+
>  	mv $@+ $@
Previous: Felipe ContrerasNext: Felipe Contreras
Message 6 of 8 in “build: cleanups”
  1. 0/6 build: cleanupsFelipe Contreras, May 25, 2013
  2. 1/6 build: trivial simplificationFelipe Contreras, May 25, 2013
  3. 2/6 build: cleanup using $^Felipe Contreras, May 25, 2013
  4. 3/6 build: cleanup using $<Felipe Contreras, May 25, 2013
  5. 4/6 build: be clearer about order-only prerequisitesFelipe Contreras, May 25, 2013
  6. Junio C HamanoMay 26, 2013
  7. 5/6 build: add NO_INSTALL variableFelipe Contreras, May 25, 2013
  8. 6/6 build: do not install git-remote-testpyFelipe Contreras, May 25, 2013

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.