From: Stefan Weil <weil@mail.berlios.de>
To: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] Windows build broken
Date: Wed, 12 Dec 2007 21:54:17 +0100 [thread overview]
Message-ID: <47604A79.1010804@mail.berlios.de> (raw)
In-Reply-To: <83a4d4ca0712121150q6b7ec678yb64eb7a5f2dbb363@mail.gmail.com>
basetyps.h is included by windows.h / rpc.h. QEMU does not need it, so
you can avoid it like this:
#define WIN32_LEAN_AND_MEAN
#include <windows.h>
WIN32_LEAN_AND_MEAN reduces the number of includes in windows.h
and increases compilation speed. And you don't have to rename
variables like interface :-)
Regards,
Stefan
Eduardo Felipe schrieb:
>
> 2007/12/12, C.W. Betts <computers57@hotmail.com
> <mailto:computers57@hotmail.com>>:
>
> Could you perhaps give a patch? I don't feel like going through
> and changing every instance of BlockInterfaceType to something else.
>
>
> Having a closer look I think the underlying problem is a name conflict
> with a #define in Mingw's header file basetyps.h, so renaming
> variables looks right to me. Patch attached.
>
> Regards,
>
>
>
>
> ------------------------------------------------------------------------
>
>
> *** sysemu.h
> --- sysemu.h
> --- sysemu.h 2 Dec 2007 04:51:08 -0000 1.2
> +++ sysemu.h 12 Dec 2007 19:17:47 -0000
> @@ -122,7 +122,7 @@
>
> typedef struct DriveInfo {
> BlockDriverState *bdrv;
> - BlockInterfaceType interface;
> + BlockInterfaceType binterface;
> int bus;
> int unit;
> } DriveInfo;
> @@ -134,8 +134,8 @@
> int nb_drives;
> DriveInfo drives_table[MAX_DRIVES+1];
>
> -extern int drive_get_index(BlockInterfaceType interface, int bus, int
> unit);
> -extern int drive_get_max_bus(BlockInterfaceType interface);
> +extern int drive_get_index(BlockInterfaceType binterface, int bus,
> int unit);
> +extern int drive_get_max_bus(BlockInterfaceType binterface);
>
> /* serial ports */
>
>
> *** vl.c
> --- vl.c
> --- vl.c 10 Dec 2007 20:00:10 -0000 1.378
> +++ vl.c 12 Dec 2007 19:17:09 -0000
> @@ -4811,14 +4811,14 @@
> return nb_drives_opt++;
> }
>
> -int drive_get_index(BlockInterfaceType interface, int bus, int unit)
> +int drive_get_index(BlockInterfaceType binterface, int bus, int unit)
> {
> int index;
>
> /* seek interface, bus and unit */
>
> for (index = 0; index < nb_drives; index++)
> - if (drives_table[index].interface == interface &&
> + if (drives_table[index].binterface == binterface &&
> drives_table[index].bus == bus &&
> drives_table[index].unit == unit)
> return index;
> @@ -4826,14 +4826,14 @@
> return -1;
> }
>
> -int drive_get_max_bus(BlockInterfaceType interface)
> +int drive_get_max_bus(BlockInterfaceType binterface)
> {
> int max_bus;
> int index;
>
> max_bus = -1;
> for (index = 0; index < nb_drives; index++) {
> - if(drives_table[index].interface == interface &&
> + if(drives_table[index].binterface == binterface &&
> drives_table[index].bus > max_bus)
> max_bus = drives_table[index].bus;
> }
> @@ -4846,7 +4846,7 @@
> char file[1024];
> char devname[128];
> const char *mediastr = "";
> - BlockInterfaceType interface;
> + BlockInterfaceType binterface;
> enum { MEDIA_DISK, MEDIA_CDROM } media;
> int bus_id, unit_id;
> int cyls, heads, secs, translation;
> @@ -4875,11 +4875,11 @@
> !strcmp(machine->name, "SS-600MP") ||
> !strcmp(machine->name, "versatilepb") ||
> !strcmp(machine->name, "versatileab")) {
> - interface = IF_SCSI;
> + binterface = IF_SCSI;
> max_devs = MAX_SCSI_DEVS;
> strcpy(devname, "scsi");
> } else {
> - interface = IF_IDE;
> + binterface = IF_IDE;
> max_devs = MAX_IDE_DEVS;
> strcpy(devname, "ide");
> }
> @@ -4906,22 +4906,22 @@
> if (get_param_value(buf, sizeof(buf), "if", str)) {
> strncpy(devname, buf, sizeof(devname));
> if (!strcmp(buf, "ide")) {
> - interface = IF_IDE;
> + binterface = IF_IDE;
> max_devs = MAX_IDE_DEVS;
> } else if (!strcmp(buf, "scsi")) {
> - interface = IF_SCSI;
> + binterface = IF_SCSI;
> max_devs = MAX_SCSI_DEVS;
> } else if (!strcmp(buf, "floppy")) {
> - interface = IF_FLOPPY;
> + binterface = IF_FLOPPY;
> max_devs = 0;
> } else if (!strcmp(buf, "pflash")) {
> - interface = IF_PFLASH;
> + binterface = IF_PFLASH;
> max_devs = 0;
> } else if (!strcmp(buf, "mtd")) {
> - interface = IF_MTD;
> + binterface = IF_MTD;
> max_devs = 0;
> } else if (!strcmp(buf, "sd")) {
> - interface = IF_SD;
> + binterface = IF_SD;
> max_devs = 0;
> } else {
> fprintf(stderr, "qemu: '%s' unsupported bus type '%s'\n", str, buf);
> @@ -5036,7 +5036,7 @@
>
> if (unit_id == -1) {
> unit_id = 0;
> - while (drive_get_index(interface, bus_id, unit_id) != -1) {
> + while (drive_get_index(binterface, bus_id, unit_id) != -1) {
> unit_id++;
> if (max_devs && unit_id >= max_devs) {
> unit_id -= max_devs;
> @@ -5057,23 +5057,23 @@
> * ignore multiple definitions
> */
>
> - if (drive_get_index(interface, bus_id, unit_id) != -1)
> + if (drive_get_index(binterface, bus_id, unit_id) != -1)
> return 0;
>
> /* init */
>
> - if (interface == IF_IDE || interface == IF_SCSI)
> + if (binterface == IF_IDE || binterface == IF_SCSI)
> mediastr = (media == MEDIA_CDROM) ? "-cd" : "-hd";
> snprintf(buf, sizeof(buf), max_devs ? "%1$s%4$i%2$s%3$i" : "%s%s%i",
> devname, mediastr, unit_id, bus_id);
> bdrv = bdrv_new(buf);
> drives_table[nb_drives].bdrv = bdrv;
> - drives_table[nb_drives].interface = interface;
> + drives_table[nb_drives].binterface = binterface;
> drives_table[nb_drives].bus = bus_id;
> drives_table[nb_drives].unit = unit_id;
> nb_drives++;
>
> - switch(interface) {
> + switch(binterface) {
> case IF_IDE:
> case IF_SCSI:
> switch(media) {
>
next prev parent reply other threads:[~2007-12-12 20:54 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-12-12 3:05 [Qemu-devel] Windows build broken Balazs Attila-Mihaly (Cd-MaN)
2007-12-12 10:08 ` C.W. Betts
2007-12-12 10:41 ` Eduardo Felipe
2007-12-12 15:27 ` C.W. Betts
2007-12-12 19:50 ` Eduardo Felipe
2007-12-12 20:54 ` Stefan Weil [this message]
2007-12-13 0:47 ` JonY
2007-12-13 20:20 ` [Qemu-devel][Patch] " Stefan Weil
2007-12-14 1:39 ` JonY
2007-12-14 19:05 ` Stefan Weil
2007-12-16 13:54 ` Paul Brook
-- strict thread matches above, loose matches on Subject: below --
2005-07-12 6:05 [Qemu-devel] ^[$B!y!z0lK|1_J,%W%l%<%s%H!z!y^[(B info
2005-07-12 16:20 ` [Qemu-devel] Windows build broken Andreas Bollhalder
2005-07-13 20:14 ` Andreas Bollhalder
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=47604A79.1010804@mail.berlios.de \
--to=weil@mail.berlios.de \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).