Sorry for the delay. Fixed in MR !2663.
It turns out that the *read* for $(file <...) did not occur until
gmake 4.2 so this bit me even on a (admittedly old) Linux dev box.
To enable the widest range of usage, I keep a modified version
of the current $(shell ...) usage, but have commented out
On Sat, 28 Mar 2020, Jed Brown wrote:
> Matthew Knepley writes:
>
> >> > IIRC, the $(file ...) function does not work with stock make in macOS.
> >>
> >> You're right; that is a make 4.0 feature. But developers who need
> >> globsearch should have the ability to evade Apple's anti-GNU smear.
>
Matthew Knepley writes:
>> > IIRC, the $(file ...) function does not work with stock make in macOS.
>>
>> You're right; that is a make 4.0 feature. But developers who need
>> globsearch should have the ability to evade Apple's anti-GNU smear.
>>
>
> Do we really have to make things hard on Mac t
On Fri, Mar 27, 2020 at 4:51 PM Jed Brown wrote:
> Lisandro Dalcin writes:
>
> > On Thu, 26 Mar 2020 at 00:48, Jed Brown wrote:
> >
> >> Scott, you can't pass '$(alltesttargets)' on the command line like this.
> >>
> >> TESTTARGETS := $(shell $(PYTHON) -c"import sys,fnmatch,itertools;
> >> m=
Lisandro Dalcin writes:
> On Thu, 26 Mar 2020 at 00:48, Jed Brown wrote:
>
>> Scott, you can't pass '$(alltesttargets)' on the command line like this.
>>
>> TESTTARGETS := $(shell $(PYTHON) -c"import sys,fnmatch,itertools;
>> m=[fnmatch.filter(sys.argv[2].split(),p) for p in sys.argv[1].split(
On Thu, 26 Mar 2020 at 00:48, Jed Brown wrote:
> Scott, you can't pass '$(alltesttargets)' on the command line like this.
>
> TESTTARGETS := $(shell $(PYTHON) -c"import sys,fnmatch,itertools;
> m=[fnmatch.filter(sys.argv[2].split(),p) for p in sys.argv[1].split()];
> print(' '.join(list(itertoo
The other strategy would be globsearch calls Python calls make to get the list
on stdout, which it filters and returns on its stdout.
An alternative would be to use $(guile ...) to do all the processing,
but that will only work when Make is built with Guile support. Check
make -f gmakefile prin
Ugh -- this is ugly.
Can't we just tell users to either use the '%' syntax or recompile their
linux kernel?
Just kidding. I'll take a look.
Scott
On 3/25/20 3:48 PM, Jed Brown wrote:
Scott, you can't pass '$(alltesttargets)' on the command line like this.
TESTTARGETS := $(shell $(P
Scott, you can't pass '$(alltesttargets)' on the command line like this.
TESTTARGETS := $(shell $(PYTHON) -c"import sys,fnmatch,itertools;
m=[fnmatch.filter(sys.argv[2].split(),p) for p in sys.argv[1].split()]; print('
'.join(list(itertools.chain.from_iterable(m" '$(globsearch)'
'$(alltes
>
>
> What do you have for
>
> getconf ARG_MAX
>
>
[szampini@localhost petsc]$ getconf ARG_MAX
2097152
> make -f gmakefile.test test search=dm%
>
>
works. This is on Fedora 30
> > make: execvp: /usr/bin/sh: Argument list too long
> > Using MAKEFLAGS: -- globsearch=dm*
> > # No tests run
> >
What platform?
On 3/25/20 3:20 PM, Stefano Zampini wrote:
This was working before..
[szampini@localhost petsc]$ make -f gmakefile.test test globsearch='dm*'
make: execvp: /usr/bin/sh: Argument list too long
Using MAKEFLAGS: -- globsearch=dm*
# No tests run
# No tests run
# No tests run
[sza
Stefano Zampini writes:
> This was working before..
>
> [szampini@localhost petsc]$ make -f gmakefile.test test globsearch='dm*'
What do you have for
getconf ARG_MAX
make -f gmakefile.test test search=dm%
> make: execvp: /usr/bin/sh: Argument list too long
> Using MAKEFLAGS: -- globsearch
12 matches
Mail list logo