On Tue, Aug 22, 2006 at 10:03:40AM +0100, Christian Limpach wrote:
> >Cowd and its associated plugins are a bit rough right now, but they work,
> >and
> >we plan on smoothing things out in the near future.
> >
> >This patch is broken up into 6 parts:
> >
> >[1/6]: A patch to the xen kernel in the patches/ directory. Also the
> >default
> >config files will build dm_userspace as a module.
> >
> >[2/6]: Adds the base for cowd, the userspace tool, to the tools directory.
>
> This needs to be changed to fail gracefully if the auto* tools are not
> installed.
> Is the use of auto* tools absolutely necessary? Could we checkin the
> generated files as well?
>
> Also, I think the tools/Makefile could do with a bit of cleanup where
> we define %-build, %-install and %-clean targets which do the default
> action and then override them with specific actions for ioemu and I
> guess cowd.
How about cleaning up the Makefile like this? Then, if we can get our
cowd tool in the tree, we can just add it to the SUBDIRS-y, define our
all, install, and clean, and ensure we exit gracefully.
Signed-off-by: Ryan Grimm <grimm@xxxxxxxxxx>
diff -r 9ebba79efbe9 -r 4c4b0563656d tools/Makefile
--- a/tools/Makefile Mon Aug 21 15:03:02 2006 -0500
+++ b/tools/Makefile Tue Aug 22 11:37:05 2006 -0500
@@ -19,33 +19,35 @@ SUBDIRS-y += libaio
SUBDIRS-y += libaio
SUBDIRS-y += blktap
+ifdef CONFIG_IOEMU
+SUBDIRS-y += ioemu
+export IOEMU_DIR ?= ioemu
+endif
+
# These don't cross-compile
ifeq ($(XEN_COMPILE_ARCH),$(XEN_TARGET_ARCH))
SUBDIRS-y += python
SUBDIRS-y += pygrub
endif
-.PHONY: all
+.PHONY: all
all: check
@set -e; for subdir in $(SUBDIRS-y); do \
- $(MAKE) -C $$subdir $@; \
+ $(MAKE) $$subdir-$@; \
done
- $(MAKE) ioemu
-.PHONY: install
+.PHONY: install
install: check
@set -e; for subdir in $(SUBDIRS-y); do \
- $(MAKE) -C $$subdir $@; \
+ $(MAKE) $$subdir-$@; \
done
- $(MAKE) ioemuinstall
$(INSTALL_DIR) -p $(DESTDIR)/var/xen/dump
.PHONY: clean
clean: check_clean
@set -e; for subdir in $(SUBDIRS-y); do \
- $(MAKE) -C $$subdir $@; \
+ $(MAKE) $$subdir-$@; \
done
- $(MAKE) ioemuclean
.PHONY: distclean
distclean: clean
@@ -58,16 +60,22 @@ check_clean:
check_clean:
$(MAKE) -C check clean
-.PHONY: ioemu ioemuinstall ioemuclean
-ifdef CONFIG_IOEMU
-export IOEMU_DIR ?= ioemu
-ioemu ioemuinstall:
+.PHONY: %-all
+%-all:
+ $(MAKE) -C $* all
+
+.PHONY: %-install
+%-install:
+ $(MAKE) -C $* install
+
+.PHONY: %-install
+%-clean:
+ $(MAKE) -C $* clean
+
+.PHONY: ioemu ioemu-all ioemu-install ioemu-clean
+ioemu ioemu-all ioemu-install:
[ -f $(IOEMU_DIR)/config-host.mak ] || \
(cd $(IOEMU_DIR) && sh configure --prefix=/usr)
- $(MAKE) -C $(IOEMU_DIR) $(patsubst ioemu%,%,$@)
-ioemuclean:
+ $(MAKE) -C $(IOEMU_DIR) $(patsubst ioemu-%,%,$@)
+ioemu-clean:
$(MAKE) -C $(IOEMU_DIR) distclean
-else
-ioemu ioemuinstall ioemuclean:
-endif
-
>
> >[3/6]: Adds internal libdmu support to cowd
>
> Is this there because libdevmapper doesn't support this yet? Is there
> any version of libdevmapper which supports this yet?
>
> >[4/6]: The dscow plugin for cowd
> >
> >[5/6]: The qcow plugin for cowd
> >
> >[6/6]: A script to start the dm-userspace backend as well as an xm example
> >configuration file.
>
> I don't think an extra example config file is needed for a single line
> change. Just add the example to the existing config files.
>
> Does this work for qemu domains? If so how, if not, what are your
> plans to make it work for qemu domains?
>
> christian
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxxxxxxxx
> http://lists.xensource.com/xen-devel
--
Thanks,
Ryan Grimm
IBM Linux Technology Center
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|