tests: drop bc dependency

Message ID 1424368848-92186-1-git-send-email-martin@martin.st
State Superseded
Headers show

Commit Message

Martin Storsjö Feb. 19, 2015, 6 p.m.
From: Clément Bœsch <u@pkh.me>

We already have a dependency on awk and bc is sometimes not found in the
base system.
---
 doc/platform.texi | 4 +---
 tests/fate-run.sh | 2 +-
 2 files changed, 2 insertions(+), 4 deletions(-)

Comments

Luca Barbato Feb. 19, 2015, 8:32 p.m. | #1
On 19/02/15 19:00, Martin Storsjö wrote:

>  If you want to build Libav with additional libraries, download Cygwin
> diff --git a/tests/fate-run.sh b/tests/fate-run.sh
> index 91de177..e7590bd 100755
> --- a/tests/fate-run.sh
> +++ b/tests/fate-run.sh
> @@ -38,7 +38,7 @@ target_path(){
>  # $1=value1, $2=value2, $3=threshold
>  # prints 0 if absolute difference between value1 and value2 is <= threshold
>  compare(){
> -    echo "scale=2; v = $1 - $2; if (v < 0) v = -v; if (v > $3) r = 1; r" | bc

scale=2 is never useful?

The awk line should be formatted.

lu
Martin Storsjö Feb. 20, 2015, 8:33 p.m. | #2
On Thu, 19 Feb 2015, Luca Barbato wrote:

> On 19/02/15 19:00, Martin Storsjö wrote:
>
>>  If you want to build Libav with additional libraries, download Cygwin
>> diff --git a/tests/fate-run.sh b/tests/fate-run.sh
>> index 91de177..e7590bd 100755
>> --- a/tests/fate-run.sh
>> +++ b/tests/fate-run.sh
>> @@ -38,7 +38,7 @@ target_path(){
>>  # $1=value1, $2=value2, $3=threshold
>>  # prints 0 if absolute difference between value1 and value2 is <= threshold
>>  compare(){
>> -    echo "scale=2; v = $1 - $2; if (v < 0) v = -v; if (v > $3) r = 1; r" | bc
>
> scale=2 is never useful?

I'm not quite sure what it does here - since we do a subtraction, bc 
should keep as many decimals of precision as the operands have initially - 
in my (possibly limited) experience, scale in bc is mostly useful when 
doing divisions.

> The awk line should be formatted.

Sure.

// Martin

Patch

diff --git a/doc/platform.texi b/doc/platform.texi
index 300c9ad..edd7577 100644
--- a/doc/platform.texi
+++ b/doc/platform.texi
@@ -130,8 +130,6 @@  You will need the following prerequisites:
 @item @uref{http://msys2.github.io/, MSYS2}
 @item @uref{http://yasm.tortall.net/, YASM}
 (Also available via MSYS2's package manager.)
-@item @uref{http://gnuwin32.sourceforge.net/packages/bc.htm, bc for Windows} if
-you want to run @uref{fate.html, FATE}.
 @end itemize
 
 To set up a proper environment in MSYS2, you need to run @code{msys_shell.bat} from
@@ -278,7 +276,7 @@  binutils, gcc4-core, make, git, mingw-runtime, texi2html
 
 In order to run FATE you will also need the following "Utils" packages:
 @example
-bc, diffutils
+diffutils
 @end example
 
 If you want to build Libav with additional libraries, download Cygwin
diff --git a/tests/fate-run.sh b/tests/fate-run.sh
index 91de177..e7590bd 100755
--- a/tests/fate-run.sh
+++ b/tests/fate-run.sh
@@ -38,7 +38,7 @@  target_path(){
 # $1=value1, $2=value2, $3=threshold
 # prints 0 if absolute difference between value1 and value2 is <= threshold
 compare(){
-    echo "scale=2; v = $1 - $2; if (v < 0) v = -v; if (v > $3) r = 1; r" | bc
+    awk "BEGIN { v=$1-$2; printf ((v<0?-v:v) > $3) }"
 }
 
 do_tiny_psnr(){