]> git.saurik.com Git - apt.git/commitdiff
vendor/getinfo: Accept --vendor VENDOR option
authorJulian Andres Klode <jak@debian.org>
Sun, 7 Aug 2016 01:32:12 +0000 (03:32 +0200)
committerJulian Andres Klode <jak@debian.org>
Wed, 10 Aug 2016 14:10:41 +0000 (16:10 +0200)
This can be used to query a field for a specific vendor. It
also speeds up things a lot if we can cache the current vendor
in cmake and pass it to further getinfo invocations.

Gbp-Dch: ignore

vendor/getinfo

index 504b086af1dd5f93e73976fb8746e8112e4deb92..37e0c1480f86ab11a6a8da1b9b4f682889e280bb 100755 (executable)
@@ -36,7 +36,13 @@ getcurrent() {
        return 0
 }
 
-INFO="$(readlink -f "${BASEDIR}/$(getcurrent)/apt-vendor.ent")"
+if [ "$1" = "--vendor" ]; then
+       CURRENT_VENDOR="$2"
+       shift 2
+else
+       CURRENT_VENDOR=$(getcurrent)
+fi
+INFO="$(readlink -f "${BASEDIR}/$CURRENT_VENDOR/apt-vendor.ent")"
 VERBATIM="${BASEDIR}/../doc/apt-verbatim.ent"
 
 if [ -z "$INFO" ] || [ ! -e "$INFO" ]; then
@@ -59,7 +65,7 @@ debian-stable-codename|debian-oldstable-codename|debian-testing-codename|ubuntu-
        getrawfield "$1" "$VERBATIM"
        ;;
 sourceslist-list-format|keyring-package|keyring-filename|keyring-master-filename|keyring-removed-filename|keyring-uri|current-codename)
-       exec $0 'vendor' "$@"
+       exec $0 --vendor $CURRENT_VENDOR 'vendor' "$@"
        ;;
 vendor)
        getfield "$2"
@@ -67,9 +73,8 @@ vendor)
 verbatim)
        getfield "$2" "$VERBATIM"
        ;;
-
 current)
-       getcurrent
+       echo $CURRENT_VENDOR
        ;;
 *)
        echo >&2 "Unknown data field $1 requested"