]> granicus.if.org Git - curl/commitdiff
curl-config.in: remove dependency on bc
authorDaniel Stenberg <daniel@haxx.se>
Thu, 25 Oct 2018 14:55:27 +0000 (16:55 +0200)
committerDaniel Stenberg <daniel@haxx.se>
Thu, 25 Oct 2018 22:06:19 +0000 (00:06 +0200)
Reported-by: Dima Pasechnik
Fixes #3143
Closes #3174

curl-config.in

index 2f958ca9424dacabda8950e4e79bd6884e26e606..0a7e0353fab2b3bfd58385a729690b0600308e87 100644 (file)
@@ -6,7 +6,7 @@
 #                            | (__| |_| |  _ <| |___
 #                             \___|\___/|_| \_\_____|
 #
-# Copyright (C) 2001 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 2001 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
 #
 # This software is licensed as described in the file COPYING, which
 # you should have received as part of this distribution. The terms
@@ -107,17 +107,29 @@ while test $# -gt 0; do
         # when extracting the patch part we strip off everything after a
         # dash as that's used for things like version 1.2.3-CVS
         cpatch=`echo $checkfor | cut -d. -f3 | cut -d- -f1`
-        checknum=`echo "$cmajor*256*256 + $cminor*256 + ${cpatch:-0}" | bc`
-        numuppercase=`echo @VERSIONNUM@ | tr 'a-f' 'A-F'`
-        nownum=`echo "obase=10; ibase=16; $numuppercase" | bc`
 
-        if test "$nownum" -ge "$checknum"; then
-          # silent success
-          exit 0
-        else
-          echo "requested version $checkfor is newer than existing @CURLVERSION@"
-          exit 1
+        vmajor=`echo @CURLVERSION@ | cut -d. -f1`
+        vminor=`echo @CURLVERSION@ | cut -d. -f2`
+        # when extracting the patch part we strip off everything after a
+        # dash as that's used for things like version 1.2.3-CVS
+        vpatch=`echo @CURLVERSION@ | cut -d. -f3 | cut -d- -f1`
+
+        if test "$vmajor" -gt "$cmajor"; then
+            exit 0;
+        fi
+        if test "$vmajor" -eq "$cmajor"; then
+            if test "$vminor" -gt "$cminor"; then
+                exit 0
+            fi
+            if test "$vminor" -eq "$cminor"; then
+                if test "$cpatch" -le "$vpatch"; then
+                    exit 0
+                fi
+            fi
         fi
+
+        echo "requested version $checkfor is newer than existing @CURLVERSION@"
+        exit 1
         ;;
 
     --vernum)