Module Name: src Committed By: christos Date: Tue May 28 16:20:34 UTC 2024
Modified Files: src/lib: checkoldver Log Message: handle library names that contain a period. To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 src/lib/checkoldver Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/lib/checkoldver diff -u src/lib/checkoldver:1.3 src/lib/checkoldver:1.4 --- src/lib/checkoldver:1.3 Wed Apr 30 09:10:50 2008 +++ src/lib/checkoldver Tue May 28 12:20:34 2024 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: checkoldver,v 1.3 2008/04/30 13:10:50 martin Exp $ +# $NetBSD: checkoldver,v 1.4 2024/05/28 16:20:34 christos Exp $ # # Copyright (c) 2002 The NetBSD Foundation, Inc. # All rights reserved. @@ -51,33 +51,31 @@ delete() { } comparelib() { + local name="${1%.so.*}" + local version=${1#*.so.} OIFS="$IFS" IFS="$IFS." - set -- $1 + set -- $version IFS="$OIFS" - if [ "$3" = "[0-9]*" ] - then - return - fi if [ -z "$libmajor" ] then - libname="$1" - libmajor="$3" - libminor="$4" - libtiny="$5" + libname="$name" + libmajor="$1" + libminor="$2" + libtiny="$3" return fi - if [ "$libmajor" -lt "$3" ] + if [ "$libmajor" -lt "$1" ] then delete "$libname" "$libmajor" "$libminor" "$libtiny" - libmajor="$3" - libminor="$4" - libtiny="$5" + libmajor="$1" + libminor="$2" + libtiny="$3" return - elif [ "$3" -lt "$libmajor" ] + elif [ "$1" -lt "$libmajor" ] then - delete "$libname" "$3" "$4" "$5" + delete "$libname" "$1" "$2" "$3" return fi @@ -85,16 +83,16 @@ comparelib() { then return fi - if [ "$libminor" -lt "$4" ] + if [ "$libminor" -lt "$2" ] then delete "$libname" "$libmajor" "$libminor" "$libtiny" - libmajor="$3" - libminor="$4" - libtiny="$5" + libmajor="$1" + libminor="$2" + libtiny="$3" return - elif [ "$4" -lt "$libminor" ] + elif [ "$2" -lt "$libminor" ] then - delete "$libname" "$3" "$4" "$5" + delete "$libname" "$1" "$2" "$3" return fi @@ -102,16 +100,16 @@ comparelib() { then return fi - if [ "$libtiny" -lt "$5" ] + if [ "$libtiny" -lt "$3" ] then delete "$libname" "$libmajor" "$libminor" "$libtiny" - libmajor="$3" - libminor="$4" - libtiny="$5" + libmajor="$1" + libminor="$2" + libtiny="$3" return elif [ "$5" -lt "$libminor" ] then - delete "$libname" "$3" "$4" "$5" + delete "$libname" "$1" "$2" "$3" return fi }