11c7386f4Smrg#!/bin/sh 21c7386f4Smrg 31c7386f4Smrgcase "$AM_SRCDIR" in 41c7386f4Smrg"") 51c7386f4Smrg AM_SRCDIR="." 61c7386f4Smrg ;; 71c7386f4Smrg*) 81c7386f4Smrg ;; 91c7386f4Smrgesac 101c7386f4Smrg 111c7386f4Smrgfix=n 121c7386f4Smrgstatus=0 131c7386f4Smrgcase "$1" in 141c7386f4Smrg"-fix") 151c7386f4Smrg fix=y 161c7386f4Smrg ;; 171c7386f4Smrgesac 181c7386f4Smrg 191c7386f4Smrgfor inc in src/*.h; do 201c7386f4Smrg package=xcb-`basename $inc .h` 211c7386f4Smrg pcin="$AM_SRCDIR"/$package.pc.in 221c7386f4Smrg if [ -f $pcin ]; then 231c7386f4Smrg included=`grep '# *include' $inc | 241c7386f4Smrg sed -e 's/[^<"]*[<"]//' -e 's/[>"]//' | 251c7386f4Smrg grep -v 'xcb.h\|xproto.h'` 267204935cSmrg requires=`grep '^Requires.private:' $pcin` 271c7386f4Smrg missing="" 281c7386f4Smrg for i in $included; do 291c7386f4Smrg ibase=`basename $i .h` 301c7386f4Smrg r="xcb-$ibase" 311c7386f4Smrg rpcin="$AM_SRCDIR"/$r.pc.in 321c7386f4Smrg if [ -f $rpcin ]; then 331c7386f4Smrg m="$r" 341c7386f4Smrg for has in $requires; do 351c7386f4Smrg if [ $has = $r ]; then 361c7386f4Smrg m="" 371c7386f4Smrg fi 381c7386f4Smrg done 391c7386f4Smrg case "$m" in 401c7386f4Smrg "") 411c7386f4Smrg ;; 421c7386f4Smrg *) 431c7386f4Smrg case "$missing" in 441c7386f4Smrg "") 451c7386f4Smrg missing=$m 461c7386f4Smrg ;; 471c7386f4Smrg *) 481c7386f4Smrg missing="$missing $m" 491c7386f4Smrg ;; 501c7386f4Smrg esac 511c7386f4Smrg ;; 521c7386f4Smrg esac 531c7386f4Smrg fi 541c7386f4Smrg done 551c7386f4Smrg case "$missing" in 561c7386f4Smrg "") 571c7386f4Smrg ;; 581c7386f4Smrg *) 591c7386f4Smrg if [ "$fix" = "y" ]; then 601c7386f4Smrg echo $package adding dependency on $missing 617204935cSmrg sed -i '/^Requires.private:/s/$/ '"$missing"'/' $pcin 621c7386f4Smrg else 631c7386f4Smrg echo $package missing $missing 641c7386f4Smrg status=1 651c7386f4Smrg fi 661c7386f4Smrg ;; 671c7386f4Smrg esac 681c7386f4Smrg fi 691c7386f4Smrgdone 701c7386f4Smrgexit $status 71