bellard | 626df76 | 2003-08-10 21:39:31 +0000 | [diff] [blame] | 1 | include config-host.mak |
bellard | 766a487 | 2003-02-18 23:35:48 +0000 | [diff] [blame] | 2 | |
bellard | 7d13299 | 2003-03-06 23:23:54 +0000 | [diff] [blame] | 3 | CFLAGS=-Wall -O2 -g |
bellard | 67b915a | 2004-03-31 23:37:16 +0000 | [diff] [blame] | 4 | ifdef CONFIG_WIN32 |
| 5 | CFLAGS+=-fpack-struct |
| 6 | endif |
bellard | 31e31b8 | 2003-02-18 22:55:36 +0000 | [diff] [blame] | 7 | LDFLAGS=-g |
bellard | 766a487 | 2003-02-18 23:35:48 +0000 | [diff] [blame] | 8 | LIBS= |
bellard | 0ecfa99 | 2003-03-03 14:32:43 +0000 | [diff] [blame] | 9 | DEFINES+=-D_GNU_SOURCE |
bellard | 67b915a | 2004-03-31 23:37:16 +0000 | [diff] [blame] | 10 | ifndef CONFIG_WIN32 |
bellard | 47cea61 | 2004-05-17 20:06:42 +0000 | [diff] [blame] | 11 | TOOLS=qemu-mkcow vmdk2raw |
bellard | 67b915a | 2004-03-31 23:37:16 +0000 | [diff] [blame] | 12 | endif |
bellard | 1f50f8d | 2004-05-08 14:44:43 +0000 | [diff] [blame] | 13 | ifdef CONFIG_STATIC |
| 14 | LDFLAGS+=-static |
| 15 | endif |
bellard | 7d13299 | 2003-03-06 23:23:54 +0000 | [diff] [blame] | 16 | |
bellard | 1f67313 | 2004-04-04 15:21:17 +0000 | [diff] [blame] | 17 | all: dyngen$(EXESUF) $(TOOLS) qemu-doc.html qemu-tech.html qemu.1 |
bellard | 626df76 | 2003-08-10 21:39:31 +0000 | [diff] [blame] | 18 | for d in $(TARGET_DIRS); do \ |
bellard | 7d3505c | 2004-05-12 19:32:15 +0000 | [diff] [blame] | 19 | $(MAKE) -C $$d $@ || exit 1 ; \ |
bellard | 626df76 | 2003-08-10 21:39:31 +0000 | [diff] [blame] | 20 | done |
bellard | 33e3963 | 2003-07-06 17:15:21 +0000 | [diff] [blame] | 21 | |
bellard | 11d9f69 | 2004-04-02 20:55:59 +0000 | [diff] [blame] | 22 | qemu-mkcow: qemu-mkcow.c |
bellard | 1f50f8d | 2004-05-08 14:44:43 +0000 | [diff] [blame] | 23 | $(CC) $(CFLAGS) $(LDFLAGS) $(DEFINES) -o $@ $^ $(LIBS) |
bellard | 0824d6f | 2003-06-24 13:42:40 +0000 | [diff] [blame] | 24 | |
bellard | 47cea61 | 2004-05-17 20:06:42 +0000 | [diff] [blame] | 25 | vmdk2raw: vmdk2raw.c |
| 26 | $(CC) $(CFLAGS) $(LDFLAGS) $(DEFINES) -o $@ $^ $(LIBS) |
| 27 | |
bellard | 11d9f69 | 2004-04-02 20:55:59 +0000 | [diff] [blame] | 28 | dyngen$(EXESUF): dyngen.c |
| 29 | $(HOST_CC) $(CFLAGS) $(DEFINES) -o $@ $^ |
bellard | 31e31b8 | 2003-02-18 22:55:36 +0000 | [diff] [blame] | 30 | |
| 31 | clean: |
bellard | 2d80ae8 | 2003-08-11 23:01:33 +0000 | [diff] [blame] | 32 | # avoid old build problems by removing potentially incorrect old files |
| 33 | rm -f config.mak config.h op-i386.h opc-i386.h gen-op-i386.h op-arm.h opc-arm.h gen-op-arm.h |
bellard | 67b915a | 2004-03-31 23:37:16 +0000 | [diff] [blame] | 34 | rm -f *.o *.a $(TOOLS) dyngen$(EXESUF) TAGS qemu.pod |
bellard | 7d3505c | 2004-05-12 19:32:15 +0000 | [diff] [blame] | 35 | $(MAKE) -C tests clean |
bellard | 626df76 | 2003-08-10 21:39:31 +0000 | [diff] [blame] | 36 | for d in $(TARGET_DIRS); do \ |
bellard | 7d3505c | 2004-05-12 19:32:15 +0000 | [diff] [blame] | 37 | $(MAKE) -C $$d $@ || exit 1 ; \ |
bellard | 626df76 | 2003-08-10 21:39:31 +0000 | [diff] [blame] | 38 | done |
bellard | 31e31b8 | 2003-02-18 22:55:36 +0000 | [diff] [blame] | 39 | |
bellard | 7d13299 | 2003-03-06 23:23:54 +0000 | [diff] [blame] | 40 | distclean: clean |
bellard | 2d80ae8 | 2003-08-11 23:01:33 +0000 | [diff] [blame] | 41 | rm -f config-host.mak config-host.h |
bellard | 76bc683 | 2003-08-10 23:41:46 +0000 | [diff] [blame] | 42 | for d in $(TARGET_DIRS); do \ |
bellard | bc1b050 | 2003-10-28 00:12:52 +0000 | [diff] [blame] | 43 | rm -rf $$d || exit 1 ; \ |
bellard | 76bc683 | 2003-08-10 23:41:46 +0000 | [diff] [blame] | 44 | done |
bellard | 7d13299 | 2003-03-06 23:23:54 +0000 | [diff] [blame] | 45 | |
bellard | 626df76 | 2003-08-10 21:39:31 +0000 | [diff] [blame] | 46 | install: all |
bellard | 11d9f69 | 2004-04-02 20:55:59 +0000 | [diff] [blame] | 47 | mkdir -p "$(bindir)" |
| 48 | ifndef CONFIG_WIN32 |
| 49 | install -m 755 -s $(TOOLS) "$(bindir)" |
| 50 | endif |
bellard | 7efa438 | 2004-05-12 18:54:06 +0000 | [diff] [blame] | 51 | mkdir -p "$(datadir)" |
bellard | a735aa3 | 2004-02-25 23:54:25 +0000 | [diff] [blame] | 52 | install -m 644 pc-bios/bios.bin pc-bios/vgabios.bin \ |
bellard | 7efa438 | 2004-05-12 18:54:06 +0000 | [diff] [blame] | 53 | pc-bios/linux_boot.bin "$(datadir)" |
bellard | 1f50f8d | 2004-05-08 14:44:43 +0000 | [diff] [blame] | 54 | mkdir -p "$(docdir)" |
| 55 | install -m 644 qemu-doc.html qemu-tech.html "$(docdir)" |
bellard | 11d9f69 | 2004-04-02 20:55:59 +0000 | [diff] [blame] | 56 | ifndef CONFIG_WIN32 |
| 57 | mkdir -p "$(mandir)/man1" |
| 58 | install qemu.1 qemu-mkcow.1 "$(mandir)/man1" |
| 59 | endif |
bellard | 626df76 | 2003-08-10 21:39:31 +0000 | [diff] [blame] | 60 | for d in $(TARGET_DIRS); do \ |
bellard | 7d3505c | 2004-05-12 19:32:15 +0000 | [diff] [blame] | 61 | $(MAKE) -C $$d $@ || exit 1 ; \ |
bellard | 626df76 | 2003-08-10 21:39:31 +0000 | [diff] [blame] | 62 | done |
bellard | 612384d | 2003-03-22 17:31:19 +0000 | [diff] [blame] | 63 | |
bellard | 367e86e | 2003-03-01 17:13:26 +0000 | [diff] [blame] | 64 | # various test targets |
bellard | 82c7e2a | 2004-01-04 16:10:33 +0000 | [diff] [blame] | 65 | test speed test2: all |
bellard | 7d3505c | 2004-05-12 19:32:15 +0000 | [diff] [blame] | 66 | $(MAKE) -C tests $@ |
bellard | 31e31b8 | 2003-02-18 22:55:36 +0000 | [diff] [blame] | 67 | |
bellard | 367e86e | 2003-03-01 17:13:26 +0000 | [diff] [blame] | 68 | TAGS: |
bellard | b9adb4a | 2003-04-29 20:41:16 +0000 | [diff] [blame] | 69 | etags *.[ch] tests/*.[ch] |
bellard | 31e31b8 | 2003-02-18 22:55:36 +0000 | [diff] [blame] | 70 | |
bellard | 3ef693a | 2003-03-23 20:17:16 +0000 | [diff] [blame] | 71 | # documentation |
bellard | 1f67313 | 2004-04-04 15:21:17 +0000 | [diff] [blame] | 72 | %.html: %.texi |
bellard | 3ef693a | 2003-03-23 20:17:16 +0000 | [diff] [blame] | 73 | texi2html -monolithic -number $< |
| 74 | |
bellard | 5a67135 | 2003-10-01 00:13:48 +0000 | [diff] [blame] | 75 | qemu.1: qemu-doc.texi |
| 76 | ./texi2pod.pl $< qemu.pod |
| 77 | pod2man --section=1 --center=" " --release=" " qemu.pod > $@ |
| 78 | |
bellard | 1e43adf | 2003-09-30 20:54:24 +0000 | [diff] [blame] | 79 | FILE=qemu-$(shell cat VERSION) |
bellard | 586314f | 2003-03-03 15:02:29 +0000 | [diff] [blame] | 80 | |
bellard | 1e43adf | 2003-09-30 20:54:24 +0000 | [diff] [blame] | 81 | # tar release (use 'make -k tar' on a checkouted tree) |
bellard | 586314f | 2003-03-03 15:02:29 +0000 | [diff] [blame] | 82 | tar: |
| 83 | rm -rf /tmp/$(FILE) |
bellard | 1e43adf | 2003-09-30 20:54:24 +0000 | [diff] [blame] | 84 | cp -r . /tmp/$(FILE) |
bellard | 76b62fd | 2003-10-28 00:47:44 +0000 | [diff] [blame] | 85 | ( cd /tmp ; tar zcvf ~/$(FILE).tar.gz $(FILE) --exclude CVS ) |
bellard | 586314f | 2003-03-03 15:02:29 +0000 | [diff] [blame] | 86 | rm -rf /tmp/$(FILE) |
| 87 | |
bellard | 76b62fd | 2003-10-28 00:47:44 +0000 | [diff] [blame] | 88 | # generate a binary distribution |
bellard | d691f66 | 2003-03-24 21:58:34 +0000 | [diff] [blame] | 89 | tarbin: |
bellard | 76b62fd | 2003-10-28 00:47:44 +0000 | [diff] [blame] | 90 | ( cd / ; tar zcvf ~/qemu-$(VERSION)-i386.tar.gz \ |
bellard | 7efa438 | 2004-05-12 18:54:06 +0000 | [diff] [blame] | 91 | $(bindir)/qemu $(bindir)/qemu-fast \ |
| 92 | $(bindir)/qemu-system-ppc \ |
| 93 | $(bindir)/qemu-i386 \ |
| 94 | $(bindir)/qemu-arm \ |
| 95 | $(bindir)/qemu-sparc \ |
| 96 | $(bindir)/qemu-ppc \ |
bellard | 47cea61 | 2004-05-17 20:06:42 +0000 | [diff] [blame] | 97 | $(bindir)/qemu-mkcow $(bindir)/vmdk2raw \ |
bellard | 7efa438 | 2004-05-12 18:54:06 +0000 | [diff] [blame] | 98 | $(datadir)/bios.bin \ |
| 99 | $(datadir)/vgabios.bin \ |
| 100 | $(datadir)/linux_boot.bin \ |
bellard | 1f50f8d | 2004-05-08 14:44:43 +0000 | [diff] [blame] | 101 | $(docdir)/qemu-doc.html \ |
| 102 | $(docdir)/qemu-tech.html \ |
| 103 | $(mandir)/man1/qemu.1 $(mandir)/man1/qemu-mkcow.1 ) |
bellard | d691f66 | 2003-03-24 21:58:34 +0000 | [diff] [blame] | 104 | |
bellard | 31e31b8 | 2003-02-18 22:55:36 +0000 | [diff] [blame] | 105 | ifneq ($(wildcard .depend),) |
| 106 | include .depend |
| 107 | endif |