mirror of
https://github.com/xen-project/xen.git
synced 2026-10-29 18:50:05 +01:00
bitkeeper revision 1.1087 (40f56a0eJ3YluUqh_hXolLsP2iLy0w)
Add mkbuildtree script to prepare a Linux 2.6 build tree.
This commit is contained in:
1 parent
acaa280e11
commit
7bed7db3e8
2 files changed
+104
No files matched your search
@@ -246,6 +246,7 @@
|
||||
40f5623cndVUFlkxpf7Lfx7xu8madQ linux-2.6.7-xen-sparse/include/asm-xen/multicall.h
|
||||
40f5623cTZ80EwjWUBlh44A9F9i_Lg linux-2.6.7-xen-sparse/include/asm-xen/netif.h
|
||||
40f5623cBiQhPHILVLrl3xa6bDBaRg linux-2.6.7-xen-sparse/include/asm-xen/xen.h
|
||||
40f56a0ddHCSs3501MY4hRf22tctOw linux-2.6.7-xen-sparse/mkbuildtree
|
||||
40e1b09db5mN69Ijj0X_Eol-S7dXiw tools/Make.defs
|
||||
3f776bd1Hy9rn69ntXBhPReUFw9IEA tools/Makefile
|
||||
401d7e160vaxMBAUSLSicuZ7AQjJ3w tools/examples/Makefile
|
||||
|
||||
Executable
+103
@@ -0,0 +1,103 @@
|
||||
#!/bin/sh
|
||||
|
||||
# mkbuildtree <build tree>
|
||||
#
|
||||
# Creates symbolic links in <build tree> for the sparse tree
|
||||
# in the current directory.
|
||||
|
||||
# Script to determine the relative path between two directories.
|
||||
# Copyright (c) D. J. Hawkey Jr. 2002
|
||||
# Fixed for Xen project by K. Fraser in 2003.
|
||||
abs_to_rel ()
|
||||
{
|
||||
local CWD SRCPATH
|
||||
|
||||
if [ "$1" != "/" -a "${1##*[^/]}" = "/" ]; then
|
||||
SRCPATH=${1%?}
|
||||
else
|
||||
SRCPATH=$1
|
||||
fi
|
||||
if [ "$2" != "/" -a "${2##*[^/]}" = "/" ]; then
|
||||
DESTPATH=${2%?}
|
||||
else
|
||||
DESTPATH=$2
|
||||
fi
|
||||
|
||||
CWD=$PWD
|
||||
[ "${1%%[^/]*}" != "/" ] && cd $1 && SRCPATH=$PWD
|
||||
[ "${2%%[^/]*}" != "/" ] && cd $2 && DESTPATH=$PWD
|
||||
[ "$CWD" != "$PWD" ] && cd $CWD
|
||||
|
||||
BASEPATH=$SRCPATH
|
||||
|
||||
[ "$SRCPATH" = "$DESTPATH" ] && DESTPATH="." && return
|
||||
[ "$SRCPATH" = "/" ] && DESTPATH=${DESTPATH#?} && return
|
||||
|
||||
while [ "$BASEPATH/" != "${DESTPATH%${DESTPATH#$BASEPATH/}}" ]; do
|
||||
BASEPATH=${BASEPATH%/*}
|
||||
done
|
||||
|
||||
SRCPATH=${SRCPATH#$BASEPATH}
|
||||
DESTPATH=${DESTPATH#$BASEPATH}
|
||||
DESTPATH=${DESTPATH#?}
|
||||
while [ -n "$SRCPATH" ]; do
|
||||
SRCPATH=${SRCPATH%/*}
|
||||
DESTPATH="../$DESTPATH"
|
||||
done
|
||||
|
||||
[ -z "$BASEPATH" ] && BASEPATH="/"
|
||||
[ "${DESTPATH##*[^/]}" = "/" ] && DESTPATH=${DESTPATH%?}
|
||||
}
|
||||
|
||||
# relative_lndir <target_dir>
|
||||
# Creates a tree of symlinks in the current working directory that mirror
|
||||
# real files in <target_dir>. <target_dir> should be relative to the current
|
||||
# working directory. Symlinks in <target_dir> are ignored. Source-control files
|
||||
# are ignored.
|
||||
relative_lndir ()
|
||||
{
|
||||
local SYMLINK_DIR REAL_DIR pref i j
|
||||
SYMLINK_DIR=$PWD
|
||||
REAL_DIR=$1
|
||||
(
|
||||
cd $REAL_DIR
|
||||
for i in `find . -type d | grep -v SCCS`; do
|
||||
[ -d $SYMLINK_DIR/$i ] || mkdir -p $SYMLINK_DIR/$i
|
||||
(
|
||||
cd $i
|
||||
pref=`echo $i | sed -e 's#/[^/]*#../#g' -e 's#^\.##'`
|
||||
for j in `find . -type f -o -type l -maxdepth 1`; do
|
||||
ln -sf ${pref}${REAL_DIR}/$i/$j ${SYMLINK_DIR}/$i/$j
|
||||
done
|
||||
)
|
||||
done
|
||||
)
|
||||
}
|
||||
|
||||
[ "$1" == "" ] && { echo "Syntax: $0 <linux tree to xenify>"; exit 1; }
|
||||
|
||||
# Get absolute path to the destination directory
|
||||
pushd . >/dev/null
|
||||
cd ${1}
|
||||
AD=$PWD
|
||||
popd >/dev/null
|
||||
|
||||
# Get absolute path to the source directory
|
||||
AS=`pwd`
|
||||
|
||||
# Get path to source, relative to destination
|
||||
abs_to_rel ${AD} ${AS}
|
||||
RS=$DESTPATH
|
||||
|
||||
# Remove old copies of files and directories at the destination
|
||||
for i in `find . -type f -o -type l` ; do rm -f ${AD}/${i#./} ; done
|
||||
|
||||
# We now work from the destination directory
|
||||
cd ${AD}
|
||||
|
||||
# Remove old symlinks
|
||||
for i in `find . -type l`; do rm -f $i; done
|
||||
|
||||
# Create symlinks of files and directories which exist in the sparse source
|
||||
relative_lndir ${RS}
|
||||
rm -f mkbuildtree
|
||||