|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 8/8] raisin: RFC Add blktap2 as an external tree
On Thu, 16 Apr 2015, George Dunlap wrote:
> Until we start hosting the blktap repo on xenbits, use the one from github.
>
> Also, we need to pass in the directories where to find the
> libblktapctl headers in the Xen build.
>
> Signed-off-by: George Dunlap <george.dunlap@xxxxxxxxxxxxx>
> ---
> Note: For now use the "upstream" XenServer repo.
>
> Also, to build with this you need the patches to allow Xen to use an
> out-of-tree blktap,
> which can be found here:
>
> git://xenbits.xen.org/people/gdunlap/xen.git out/blktap25/rfc-v2
>
> CC: Stefano Stabellini <stefano.stabellini@xxxxxxxxxx>
> ---
> components/blktap | 47 +++++++++++++++++++++++++++++++++++++++++++++++
> components/series | 1 +
> components/xen | 5 +++++
> defconfig | 9 ++++++---
> 4 files changed, 59 insertions(+), 3 deletions(-)
> create mode 100644 components/blktap
>
> diff --git a/components/blktap b/components/blktap
> new file mode 100644
> index 0000000..3062b2a
> --- /dev/null
> +++ b/components/blktap
> @@ -0,0 +1,47 @@
> +#!/usr/bin/env bash
> +
> +function blktap_check_package() {
> + local DEP_Debian_common="build-essential autoconf libtool tar libaio-dev
> uuid-dev openssl-dev"
> + local DEP_Debian_x86_32="$DEP_Debian_common"
> + local DEP_Debian_x86_64="$DEP_Debian_x86_32"
> + local DEP_Debian_arm32="$DEP_Debian_common"
> + local DEP_Debian_arm64="$DEP_Debian_arm32"
> +
> + local DEP_Fedora_common="make gcc python-devel autoconf libtool tar file
> libaio-devel libuuid-devel openssl-devel"
> + local DEP_Fedora_x86_32="$DEP_Fedora_common"
> + local DEP_Fedora_x86_64="$DEP_Fedora_x86_32"
> +
> + local DEP_CentOS_common="make gcc python-devel autoconf libtool tar file
> libaio-devel libuuid-devel openssl-devel"
DEP_CentOS_common="$DEP_Fedora_common"
> + local DEP_CentOS_x86_32="$DEP_Redhat_common"
> + local DEP_CentOS_x86_64="$DEP_Redhat_x86_32"
Redhat? I don't know no Redhat.
> + echo Checking blktap dependencies
> + eval check-package \$DEP_"$DISTRO"_"$ARCH"
> +}
> +
> +function blktap_build() {
> + cd "$BASEDIR"
> + git-checkout $BLKTAP_URL $BLKTAP_REVISION blktap-dir
> + cd blktap-dir
> + ./autogen.sh
> + ./configure --prefix=$PREFIX
> + $MAKE
> + $MAKE install DESTDIR="$INST_DIR"
> + cd "$BASEDIR"
> +}
> +
> +function blktap_clean() {
> + cd "$BASEDIR"
> + if [[ -d blktap-dir ]]
> + then
> + rm -rf blktap-dir
Stray tabs. Do we need the emacs config stanza somewhere in raisin?
> + fi
> +}
> +
> +function blktap_configure() {
> + :
> +}
> +
> +function blktap_unconfigure() {
> + :
> +}
Much better than my echo. Maybe submit a patch to replace useless echo
in configure and unconfigure functions with :
> diff --git a/components/series b/components/series
> index 8f614f0..953800a 100644
> --- a/components/series
> +++ b/components/series
> @@ -1,3 +1,4 @@
> +blktap
> xen
I take this is on purpose so that blktap is built before xen
> qemu
> grub
> diff --git a/components/xen b/components/xen
> index f2e1254..03a1970 100644
> --- a/components/xen
> +++ b/components/xen
> @@ -29,7 +29,12 @@ function xen_build() {
> cd "$BASEDIR"
> git-checkout $XEN_URL $XEN_REVISION xen-dir
> cd xen-dir
> + CFLAGS="-I$INST_DIR/$PREFIX/include/blktap
> -I$INST_DIR/$PREFIX/include/vhd" \
> + LDFLAGS="-L$INST_DIR/$PREFIX/lib -Wl,-rpath-link=$INST_DIR/$PREFIX/lib" \
> ./configure --prefix=$PREFIX --with-system-qemu=/usr/bin/qemu-system-i386
> + CFLAGS_libblktapctl="-I$INST_DIR/$PREFIX/include/blktap
> -I$INST_DIR/$PREFIX/include/vhd" \
> + LDLIBS_libblktapctl="-L$INST_DIR/$PREFIX/lib -lblktapctl" \
> + SHLIB_libblktapctl="-Wl,-rpath-link=$INST_DIR/$PREFIX/lib" \
Does this work even if blktap is actually disabled in the raisin build?
If so, then fine.
Actually I think that the xen configure script should be able to figure
out whether it can pick up blktap from an external location
automatically with the CFLAGS and LDFLAGS you set.
> $RAISIN_MAKE
> $RAISIN_MAKE install DESTDIR="$INST_DIR"
> cd "$BASEDIR"
> diff --git a/defconfig b/defconfig
> index 4ec8a0b..283e954 100644
> --- a/defconfig
> +++ b/defconfig
> @@ -1,9 +1,9 @@
> # Config variables for raisin
>
> # Components
> -# All components: xen grub libvirt
> -# Core xen functionality: xen
> -DEFAULT_COMPONENTS="xen grub libvirt"
> +# All components: blktap xen grub libvirt
> +# Core xen functionality: xen blktap
> +DEFAULT_COMPONENTS="blktap xen grub libvirt"
>
> # Build config
> ## Make command to run
> @@ -22,6 +22,8 @@ XEN_URL="git://xenbits.xen.org/xen.git"
> QEMU_URL="git://git.qemu.org/qemu.git"
> GRUB_URL="git://git.savannah.gnu.org/grub.git"
> LIBVIRT_URL="git://libvirt.org/libvirt.git"
> +BLKTAP_URL=https://github.com/xapi-project/blktap.git
> +#BLKTAP_URL=git://xenbits.xen.org/blktap.git
>
> # Software versions. Leave blank if you want to avoid the build, like
> # this: GRUB_REVISION=
> @@ -30,3 +32,4 @@ XEN_REVISION="master"
> QEMU_REVISION="master"
> GRUB_REVISION="master"
> LIBVIRT_REVISION="master"
> +BLKTAP_REVISION="blktap2"
> --
> 1.9.1
>
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |