#!/bin/sh # © 2011 Cyril Brulebois # # Usage: # Call this script from debian/rules, before dh_gencontrol is run, # to get all needed variables computed in debian/$p.substvars for # each package $p found through dh_listpackages. # . # This script has support for udebs. set -e # Sanity check. All drivers build-depend on debhelper: if ! which dh_listpackages >/dev/null 2>&1; then echo "E: dh_listpackages not found, debhelper package missing?" exit 1 fi # Read the dependencies once: INPUTDEP=$(cat /usr/share/xserver-xorg/xinputdep 2>/dev/null) VIDEODEP=$(cat /usr/share/xserver-xorg/videodrvdep 2>/dev/null) # Iterate on the packages: for package in $(dh_listpackages); do case $package in *-udeb) # udebs depend on udebs, tweak the dependency on the server: inputdep=$(echo "$INPUTDEP"|sed 's/xserver-xorg-core/&-udeb/') videodep=$(echo "$VIDEODEP"|sed 's/xserver-xorg-core/&-udeb/') ;; *) # just copy the dependencies read previously: inputdep="$INPUTDEP" videodep="$VIDEODEP" esac # To avoid having "unused substitution variable" warnings from # dpkg-gencontrol, only set variables which make sense: case $package in *-dbg|*-dev|*-all) # debug, devel, or meta package, no need for Depends/Provides. : ;; xserver-xorg-input-*) # input driver: echo "xinpdriver:Depends=$inputdep" >> debian/$package.substvars echo "xinpdriver:Provides=xorg-driver-input" >> debian/$package.substvars ;; xserver-xorg-video-*) # video driver: echo "xviddriver:Depends=$videodep" >> debian/$package.substvars echo "xviddriver:Provides=xorg-driver-video" >> debian/$package.substvars esac done