mirror of
https://github.com/xen-project/xen.git
synced 2026-10-29 02:30:03 +01:00
linux-2.6.18-xen.hg as a last resort when searching for a Linux source tree. Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
70 lines
1.8 KiB
Bash
Executable File
70 lines
1.8 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
ME=$(basename $0)
|
|
|
|
if [ $# -lt 1 ] || [ $# -gt 2 ] ; then
|
|
echo "usage: $ME <repository-name> [search-path]" 1>&2
|
|
exit 1;
|
|
fi
|
|
|
|
REPO=$1
|
|
LINUX_SRC_PATH=$2
|
|
|
|
if [ X"${LINUX_SRC_PATH}" != X ] ; then
|
|
echo "$ME: Searching \`${LINUX_SRC_PATH}' for $REPO" 1>&2
|
|
IFS_saved="$IFS"
|
|
IFS=:
|
|
for i in $LINUX_SRC_PATH ; do
|
|
# Ignore current directory since we will almost certainly find
|
|
# the target directory there which breaks updating (there's no
|
|
# point updating from yourself!).
|
|
if [ X"." = X"${i}" ] ; then
|
|
echo "$ME: Ignoring \`.'" 1>&2
|
|
continue
|
|
fi
|
|
|
|
if [ -d "$i/$REPO/.hg" ] ; then
|
|
echo "$ME: Found $i/$REPO" 1>&2
|
|
echo "$i/$REPO"
|
|
exit 0
|
|
fi
|
|
done
|
|
IFS="$IFS_saved"
|
|
fi
|
|
|
|
if [ -d ${XEN_ROOT}/.hgxxx ] ; then
|
|
XEN=$(hg -R ${XEN_ROOT} path default)
|
|
if [ $? -ne 0 ] || [ X"$XEN" = "X" ] ; then
|
|
echo "$ME: Unable to determine Xen repository parent." 1>&2
|
|
exit 1;
|
|
fi
|
|
|
|
BASE=$(dirname ${XEN})
|
|
if [ $? -ne 0 ] || [ X"$BASE" = "X" ] ; then
|
|
echo "$ME: Unable to determine Xen repository base." 1>&2
|
|
exit 1;
|
|
fi
|
|
if [ -d "$XEN" ] && [ ! -d "$BASE/$REPO" ] ; then
|
|
echo "$ME: No such dir: $BASE/$REPO" 1>&2
|
|
exit 1
|
|
fi
|
|
|
|
echo "$ME: Found ${BASE}/${REPO}" 1>&2
|
|
|
|
# If ${BASE}/${REPO} is a local directory then prepend file:// so that
|
|
# the test in src.hg-clone will fail and we will clone instead of
|
|
# linking this repository. We only want to link repositories which
|
|
# were found via LINUX_SRC_PATH.
|
|
if [ -d "${BASE}/${REPO}" ] ; then
|
|
echo "file://${BASE}/${REPO}"
|
|
else
|
|
echo ${BASE}/${REPO}
|
|
fi
|
|
else
|
|
echo "Unable to determine path to Linux source tree." 1>&2
|
|
echo "Falling back to linux-2.6.18-xen Mercurial repository." 1>&2
|
|
echo http://xenbits.xensource.com/linux-2.6.18-xen.hg
|
|
fi
|
|
|
|
exit 0
|