On Tue, Jun 2, 2015 at 4:01 PM, Jeff King [off-list ref] wrote:
On Tue, Jun 02, 2015 at 03:57:44PM -0400, Eric Sunshine wrote:
quoted
quoted
Oops, I missed the trailing '.' in the regex there, and it probably
needs double-quotes in case the inner expr fails to match anything.
Which is messy considering the double quotes already surrounding
$(uname_R). Suggestions?
The shell should do the right thing with nested quotes inside backticks.
So just (untested):
$(shell expr "`expr "$(uname_R)" : '\([0-9][0-9]*\.\)'`" '>=' 11),1)
Right. Temporary brain derailment on my part.
quoted
I suppose the combination of `...` with built-in 'test' and built-in
'echo' would be the most efficient choice. Do you want it re-rolled?
I can live with it either way. It's all pretty horrible and ugly; the
saving grace is that we hopefully never have to touch that line again.
I'll re-roll, taking advantage of `...` and (typically, builtin)
'test' and 'echo'. This:
$(shell test "`expr "$(uname_R)" : '\([0-9][0-9]*\)\.'`" -ge 11 && echo 1)
Already tested on OS X 10.10 (Yosemite) and 10.5 (Leopard).