Use hxtool to generate monitor documentation and C structures
[qemu] / Makefile
index f303aff..0e045bb 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,8 @@
 # Makefile for QEMU.
 
 ifneq ($(wildcard config-host.mak),)
+# Put the all: rule here so that config-host.mak can contain dependencies.
+all: build-all
 include config-host.mak
 include $(SRC_PATH)/rules.mak
 else
@@ -41,7 +43,7 @@ ifdef CONFIG_WIN32
 LIBS+=-lwinmm -lws2_32 -liphlpapi
 endif
 
-all: $(TOOLS) $(DOCS) recurse-all
+build-all: $(TOOLS) $(DOCS) recurse-all
 
 config-host.mak: configure
 ifneq ($(wildcard config-host.mak),)
@@ -63,7 +65,7 @@ recurse-all: $(SUBDIR_RULES)
 #######################################################################
 # BLOCK_OBJS is code used by both qemu system emulation and qemu-img
 
-BLOCK_OBJS=cutils.o cache-utils.o qemu-malloc.o module.o
+BLOCK_OBJS=cutils.o cache-utils.o qemu-malloc.o qemu-option.o module.o
 BLOCK_OBJS+=block/cow.o block/qcow.o aes.o block/vmdk.o block/cloop.o
 BLOCK_OBJS+=block/dmg.o block/bochs.o block/vpc.o block/vvfat.o
 BLOCK_OBJS+=block/qcow2.o block/parallels.o block/nbd.o
@@ -78,6 +80,10 @@ endif
 BLOCK_OBJS += block/raw-posix.o
 endif
 
+ifdef CONFIG_CURL
+BLOCK_OBJS += block/curl.o
+endif
+
 ######################################################################
 # libqemu_common.a: Target independent part of system emulation. The
 # long term path is to suppress *all* target specific code in case of
@@ -187,6 +193,15 @@ endif
 
 LIBS+=$(VDE_LIBS)
 
+# xen backend driver support
+XEN_OBJS := xen_backend.o xen_devconfig.o
+XEN_OBJS += xen_console.o xenfb.o xen_disk.o xen_nic.o
+ifdef CONFIG_XEN
+  OBJS += $(XEN_OBJS)
+endif
+
+LIBS+=$(CURL_LIBS)
+
 cocoa.o: cocoa.m
 
 keymaps.o: keymaps.c keymaps.h
@@ -237,14 +252,14 @@ clean:
        rm -f *.o *.d *.a $(TOOLS) TAGS cscope.* *.pod *~ */*~
        rm -f slirp/*.o slirp/*.d audio/*.o audio/*.d block/*.o block/*.d
        $(MAKE) -C tests clean
-       for d in $(TARGET_DIRS); do \
+       for d in $(TARGET_DIRS) libhw32 libhw64; do \
        $(MAKE) -C $$d $@ || exit 1 ; \
         done
 
 distclean: clean
        rm -f config-host.mak config-host.h $(DOCS) qemu-options.texi
        rm -f qemu-{doc,tech}.{info,aux,cp,dvi,fn,info,ky,log,pg,toc,tp,vr}
-       for d in $(TARGET_DIRS); do \
+       for d in $(TARGET_DIRS) libhw32 libhw64; do \
        rm -rf $$d || exit 1 ; \
         done
 
@@ -256,7 +271,7 @@ ifdef INSTALL_BLOBS
 BLOBS=bios.bin vgabios.bin vgabios-cirrus.bin ppc_rom.bin \
 video.x openbios-sparc32 openbios-sparc64 openbios-ppc \
 pxe-ne2k_pci.bin pxe-rtl8139.bin pxe-pcnet.bin pxe-e1000.bin \
-bamboo.dtb
+bamboo.dtb petalogix-s3adsp1800.dtb
 else
 BLOBS=
 endif
@@ -285,7 +300,7 @@ endif
 ifndef CONFIG_WIN32
        $(INSTALL_DIR) "$(DESTDIR)$(datadir)/keymaps"
        set -e; for x in $(KEYMAPS); do \
-               $(INSTALL_DATA) $(SRC_PATH)/keymaps/$$x "$(DESTDIR)$(datadir)/keymaps"; \
+               $(INSTALL_DATA) $(SRC_PATH)/pc-bios/keymaps/$$x "$(DESTDIR)$(datadir)/keymaps"; \
        done
 endif
        for d in $(TARGET_DIRS); do \
@@ -317,7 +332,10 @@ cscope:
 qemu-options.texi: $(SRC_PATH)/qemu-options.hx
        $(call quiet-command,sh $(SRC_PATH)/hxtool -t < $< > $@,"  GEN   $@")
 
-qemu.1: qemu-doc.texi qemu-options.texi
+qemu-monitor.texi: $(SRC_PATH)/qemu-monitor.hx
+       $(call quiet-command,sh $(SRC_PATH)/hxtool -t < $< > $@,"  GEN   $@")
+
+qemu.1: qemu-doc.texi qemu-options.texi qemu-monitor.texi
        $(call quiet-command, \
          perl -Ww -- $(SRC_PATH)/texi2pod.pl $< qemu.pod && \
          pod2man --section=1 --center=" " --release=" " qemu.pod > $@, \
@@ -341,7 +359,7 @@ dvi: qemu-doc.dvi qemu-tech.dvi
 
 html: qemu-doc.html qemu-tech.html
 
-qemu-doc.dvi qemu-doc.html qemu-doc.info: qemu-img.texi qemu-nbd.texi qemu-options.texi
+qemu-doc.dvi qemu-doc.html qemu-doc.info: qemu-img.texi qemu-nbd.texi qemu-options.texi qemu-monitor.texi
 
 VERSION ?= $(shell cat VERSION)
 FILE = qemu-$(VERSION)