xref: /OK3568_Linux_fs/external/xserver/debian/local/dh_xsf_substvars (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun#!/bin/sh
2*4882a593Smuzhiyun# © 2011 Cyril Brulebois <kibi@debian.org>
3*4882a593Smuzhiyun#
4*4882a593Smuzhiyun# Usage:
5*4882a593Smuzhiyun#   Call this script from debian/rules, before dh_gencontrol is run,
6*4882a593Smuzhiyun#   to get all needed variables computed in debian/$p.substvars for
7*4882a593Smuzhiyun#   each package $p found through dh_listpackages.
8*4882a593Smuzhiyun#   .
9*4882a593Smuzhiyun#   This script has support for udebs.
10*4882a593Smuzhiyunset -e
11*4882a593Smuzhiyun
12*4882a593Smuzhiyun# Sanity check. All drivers build-depend on debhelper:
13*4882a593Smuzhiyunif ! which dh_listpackages >/dev/null 2>&1; then
14*4882a593Smuzhiyun  echo "E: dh_listpackages not found, debhelper package missing?"
15*4882a593Smuzhiyun  exit 1
16*4882a593Smuzhiyunfi
17*4882a593Smuzhiyun
18*4882a593Smuzhiyun# Read the dependencies once:
19*4882a593SmuzhiyunINPUTDEP=$(cat /usr/share/xserver-xorg/xinputdep 2>/dev/null)
20*4882a593SmuzhiyunVIDEODEP=$(cat /usr/share/xserver-xorg/videodrvdep 2>/dev/null)
21*4882a593Smuzhiyun
22*4882a593Smuzhiyun# Iterate on the packages:
23*4882a593Smuzhiyunfor package in $(dh_listpackages); do
24*4882a593Smuzhiyun  case $package in
25*4882a593Smuzhiyun    *-udeb)
26*4882a593Smuzhiyun      # udebs depend on udebs, tweak the dependency on the server:
27*4882a593Smuzhiyun      inputdep=$(echo "$INPUTDEP"|sed 's/xserver-xorg-core/&-udeb/')
28*4882a593Smuzhiyun      videodep=$(echo "$VIDEODEP"|sed 's/xserver-xorg-core/&-udeb/')
29*4882a593Smuzhiyun    ;;
30*4882a593Smuzhiyun    *)
31*4882a593Smuzhiyun      # just copy the dependencies read previously:
32*4882a593Smuzhiyun      inputdep="$INPUTDEP"
33*4882a593Smuzhiyun      videodep="$VIDEODEP"
34*4882a593Smuzhiyun  esac
35*4882a593Smuzhiyun
36*4882a593Smuzhiyun  # To avoid having "unused substitution variable" warnings from
37*4882a593Smuzhiyun  # dpkg-gencontrol, only set variables which make sense:
38*4882a593Smuzhiyun  case $package in
39*4882a593Smuzhiyun    *-dbg|*-dev|*-all)
40*4882a593Smuzhiyun      # debug, devel, or meta package, no need for Depends/Provides.
41*4882a593Smuzhiyun      :
42*4882a593Smuzhiyun    ;;
43*4882a593Smuzhiyun    xserver-xorg-input-*)
44*4882a593Smuzhiyun      # input driver:
45*4882a593Smuzhiyun      echo "xinpdriver:Depends=$inputdep" >> debian/$package.substvars
46*4882a593Smuzhiyun      echo "xinpdriver:Provides=xorg-driver-input" >> debian/$package.substvars
47*4882a593Smuzhiyun    ;;
48*4882a593Smuzhiyun    xserver-xorg-video-*)
49*4882a593Smuzhiyun      # video driver:
50*4882a593Smuzhiyun      echo "xviddriver:Depends=$videodep" >> debian/$package.substvars
51*4882a593Smuzhiyun      echo "xviddriver:Provides=xorg-driver-video" >> debian/$package.substvars
52*4882a593Smuzhiyun  esac
53*4882a593Smuzhiyundone
54