#!/bin/bash -e . debian/debian.env hdrdir="$1" symdir="$2" flavour="$3" echo "Symlinking and copying headers for $flavour..." excludes="( -path ./debian -prune -o -path ./${DEBIAN} -prune -o -path ./.git ) -prune -o" ( find . $excludes -type f \ \( -name 'Makefile*' -o -name 'Kconfig*' -o -name 'Kbuild*' -o \ -name '*.sh' -o -name '*.pl' -o -name '*.lds' \) -print find ./include ./scripts -name .gitignore -prune -o -type f -print find ./include -mindepth 1 -maxdepth 1 $excludes -type d -print ) | ( while read file; do dir=$file lastdir=$file if [ -e "$hdrdir/$file" -o -L "$hdrdir/$file" ]; then continue fi while [ ! -e "$hdrdir/$dir" -a ! -L "$hdrdir/$dir" ]; do lastdir=$dir dir=`dirname $dir` done # If the last item to exist is a symlink we assume all is good if [ ! -L "$hdrdir/$dir" ]; then # Turns things like "./foo" into "../" deref="`echo -n $lastdir | sed -e 's/^\.//' -e's,/[^/]*,../,g'`" item="`echo -n $lastdir | sed -e 's/^\.\///'`" ln -s $deref$symdir/$item $hdrdir/$item fi done ) exit