summaryrefslogtreecommitdiff
path: root/debian/scripts/link-headers
diff options
context:
space:
mode:
authorJohn Rigby <john.rigby@linaro.org>2010-09-03 00:03:56 -0600
committerPhilippe Langlais <philippe.langlais@stericsson.com>2012-06-04 19:46:56 +0800
commitf472fbe0319f3417c16d98b1df1b7b88b3a78151 (patch)
treed6bae1bafe1ca21e8062a10072f54aaa3ada2956 /debian/scripts/link-headers
parentd9357d6650ce38ca31d0cfdbcb041ebc32f10f26 (diff)
LINARO: Add generic linaro packaging
Signed-off-by: John Rigby <john.rigby@linaro.org>
Diffstat (limited to 'debian/scripts/link-headers')
-rwxr-xr-xdebian/scripts/link-headers42
1 files changed, 42 insertions, 0 deletions
diff --git a/debian/scripts/link-headers b/debian/scripts/link-headers
new file mode 100755
index 00000000000..fb42dbd12e4
--- /dev/null
+++ b/debian/scripts/link-headers
@@ -0,0 +1,42 @@
+#!/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