Files
xen/unmodified_drivers/linux-2.6/mkbuildtree
T
Ian Campbell 0d7658072a PV-on-HVM: Use ln -nsf in mkbuildtree to avoid creating a symlink loop
if include/xen/interfaces already exists.

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2006-11-02 11:56:26 +00:00

69 lines
2.2 KiB
Bash
Executable File

#! /bin/sh
if [ $1 ]; then
uname="$1"
else
uname=`uname -m`
echo "Defaulting to this machine's architecture, $uname, for linking."
echo "This may be overridden on the command line (i386,x86_64,ia64)."
fi
C=$PWD
XEN=$C/../../xen
XL=$C/../../linux-2.6-xen-sparse
for d in $(find ${XL}/drivers/xen/ -maxdepth 1 -type d | sed -e 1d); do
if ! echo $d | egrep -q back; then
lndir $d $(basename $d) > /dev/null 2>&1
fi
done
ln -sf ${XL}/drivers/xen/core/gnttab.c platform-pci
ln -sf ${XL}/drivers/xen/core/features.c platform-pci
ln -sf ${XL}/drivers/xen/core/xen_proc.c xenbus
ln -sf ${XL}/drivers/xen/core/reboot.c util
mkdir -p include
mkdir -p include/xen
mkdir -p include/public
mkdir -p include/asm
mkdir -p include/asm/xen
lndir -silent ${XL}/include/xen include/xen
ln -nsf ${XEN}/include/public include/xen/interface
# Need to be quite careful here: we don't want the files we link in to
# risk overriding the native Linux ones (in particular, system.h must
# be native and not xenolinux).
case "$uname"
in
"x86_64")
ln -sf ${XL}/include/asm-x86_64/mach-xen/asm/hypervisor.h include/asm
ln -sf ${XL}/include/asm-x86_64/mach-xen/asm/hypercall.h include/asm
ln -sf ${XL}/include/asm-x86_64/mach-xen/asm/synch_bitops.h include/asm
ln -sf ${XL}/include/asm-x86_64/mach-xen/asm/maddr.h include/asm
ln -sf ${XL}/include/asm-i386 include/asm-i386
;;
i[34567]86)
ln -sf ${XL}/include/asm-i386/mach-xen/asm/hypervisor.h include/asm
ln -sf ${XL}/include/asm-i386/mach-xen/asm/hypercall.h include/asm
ln -sf ${XL}/include/asm-i386/mach-xen/asm/synch_bitops.h include/asm
ln -sf ${XL}/include/asm-i386/mach-xen/asm/maddr.h include/asm
;;
"ia64")
ln -sf ${XL}/include/asm-ia64/hypervisor.h include/asm
ln -sf ${XL}/include/asm-ia64/hypercall.h include/asm
ln -sf ${XL}/include/asm-ia64/synch_bitops.h include/asm
ln -sf ${XL}/include/asm-ia64/maddr.h include/asm
ln -sf ${XL}/include/asm-ia64/xen/xcom_hcall.h include/asm/xen
ln -sf ${XL}/include/asm-ia64/xen/xencomm.h include/asm/xen
ln -sf ${XL}/arch/ia64/xen/xcom_mini.c platform-pci
ln -sf ${XL}/arch/ia64/xen/xencomm.c platform-pci
;;
*)
echo unknown architecture $uname
exit 1
;;
esac