Re: [PATCH] t/Makefile: Use $(sort ...) explicitly where needed

2 messages, 2 authors, 2016-06-15 · open the first message on its own page

Re: [PATCH] t/Makefile: Use $(sort ...) explicitly where needed

From: Junio C Hamano <hidden>
Date: 2016-06-15 22:52:50

Kirill Smelkov [off-list ref] writes:
Starting from GNU Make 3.82 $(wildcard ...) no longer sorts the result
(from NEWS):

    * WARNING: Backward-incompatibility!
      Wildcards were not documented as returning sorted values, but the results
      have been sorted up until this release..  If your makefiles require sorted
      results from wildcard expansions, use the $(sort ...)  function to request
      it explicitly.

    http://repo.or.cz/w/make.git/commitdiff/2a59dc32aaf0681dec569f32a9d7ab88a379d34f

so we have to sort tests list or else they are executed in seemingly
random order even for -j1.
I do not necessarily buy your "so we HAVE TO, OR ELSE".

Even though I can understand "We can sort the list of tests _if_ we do not
want them executed in seemingly random order when running 'make -j1'", I
tend to think that *if* is a big one.  Aren't these tests designed not to
depend on each other anyway?

Re: [PATCH] t/Makefile: Use $(sort ...) explicitly where needed

From: Kirill Smelkov <hidden>
Date: 2016-06-15 22:52:50

On Thu, Jan 19, 2012 at 02:01:51PM -0800, Junio C Hamano wrote:
Kirill Smelkov [off-list ref] writes:
quoted
Starting from GNU Make 3.82 $(wildcard ...) no longer sorts the result
(from NEWS):

    * WARNING: Backward-incompatibility!
      Wildcards were not documented as returning sorted values, but the results
      have been sorted up until this release..  If your makefiles require sorted
      results from wildcard expansions, use the $(sort ...)  function to request
      it explicitly.

    http://repo.or.cz/w/make.git/commitdiff/2a59dc32aaf0681dec569f32a9d7ab88a379d34f

so we have to sort tests list or else they are executed in seemingly
random order even for -j1.
I do not necessarily buy your "so we HAVE TO, OR ELSE".

Even though I can understand "We can sort the list of tests _if_ we do not
want them executed in seemingly random order when running 'make -j1'", I
tend to think that *if* is a big one.  Aren't these tests designed not to
depend on each other anyway?
Yes, they don't depend on each other, but what's the point in not
sorting them? I usually watch test progress visually, and if tests are
sorted, even with make -j4 they go more or less incrementally by their t
number.

On my netbook, adding $(sort ...) adds approximately 0.008s to make
startup, so imho there is no performance penalty to adding that sort.


Thanks,
Kirill
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help