Provided by: emdebian-crush_2.2.20_all bug

Name

       emvendor - anbieterspezifische Paketkonfigurationszeichenketten abrufen

Übersicht

        emvendor -V|--vendor ANBIETER -p|--package PAKET -k|--key SCHLÜSSEL
        emvendor -?|-h|--help|--version

Befehle

        -v|--vendor ANBIETER:  der Anbietername aus dpkg-vendor
        -p|--package PAKET:    der Paketname (normalerweise Quelle)
        -k|--key SCHLÜSSEL:    beliebige Zeichenkette für den Schlüssel der Daten

       Alle Befehle müssen jedesmal angegeben werden.

       Bei Erfolg wird die Zeichenkette ausgegeben und emvendor mit dem Rückgabewert Null
       beendet.

       Im Fall eines Fehlers wird emvendor mit einer leeren Zeichenkette auf der
       Standardfehlerausgabe und mit einem Rückgabewert ungleich Null beendet.

Beschreibung

       emvendor stellt eine Möglichkeit für debian/rules bereit, eine Zeichenkette für ein
       bestimmtes Paket abzurufen, die in die Regeln dieses Pakets passt und den Anforderungen
       des Anbieters entspricht.

       http://wiki.debian.org/EmdebianAuditDetail#Vendor

       Es ist ziemlich offensichtlich, dass die Angabe jedes Anbieters in der Datei debian/rules
       von jedem Paket nicht besonders flexibel sein wird.

        DEB_VENDOR=$(shell dpkg-vendor --query vendor)
        ifeq (Debian,$(DEB_VENDOR))
         # Debian-Build
         EXCONFARGS=--disable-mono --disable-monodoc
        else
         # Build aller Anbieter
         EXCONFARGS=$(shell emvendor --vendor $(DEB_VENDOR) --package avahi --key EXCONFARGS)
        endif

       oder benutzen Sie die Kurzoptionen:

        EXCONFARGS=$(shell foo-bar -V $(DEB_VENDOR) -p avahi -k EXCONFARGS)

       Die Werte selbst liegen in einer anbieterspezifischen Konfigurationsdatei in
       /etc/emvendor.d/

        $ cat /etc/foo-bar.d/emdebian-crush
        [avahi]
        EXCONFARGS=--disable-mono --disable-monodoc --disable-python
        --disable-doxygen-doc --disable-pygtk --disable-python-dbus
        --disable-core-docs --disable-qt3 --disable-qt4 --disable-gobject
        --with-distro debian

        [busybox]
        foo=

       (Beachten Sie, dass der Wert ganz in einer Zeile stehen muss, was etwas ungeschickt ist –
       beachten Sie außerdem, dass Werte nicht das Gleichheitszeichen enthalten dürfen, was eher
       ein Problem sein könnte.)

       Pakete, die zwei Zeichenketten benötigen, können das so tun – die Schlüsselzeichenkette
       ist völlig beliebig, solange sie in den Stil einer typischen Ini-Datei passt.

       Daher kann der Schlüssel an die Bedürfnisse des maßgeblichen Pakets angepasst werden.

       "emdebian-buildsupport" stellt /etc/emvendor.d/emdebian-crush mit all dem Inhalt allen
       Paketen bereit, die solche Einzelheiten benötigen.

emvendor und dpkg-vendor

       dpkg-vendor unterstützt Anbieterfunktionalität, aber emvendor fügt eine zusätzliche
       Hierarchie ein, die nach Debian-Quellpaketnamen organisiert wird. Es wäre möglich, alle
       maßgeblichen Zeichenketten in /etc/dpkg/origins/vendor einzufügen, aber jeder Bezeichner
       müsste über alle Pakete hinweg für jeden Anbieter einmalig sein, was eine unrealistische
       Einschränkung ist.