qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] Windows build broken


From: Stefan Weil
Subject: Re: [Qemu-devel] Windows build broken
Date: Wed, 12 Dec 2007 21:54:17 +0100
User-agent: IceDove 1.5.0.14pre (X11/20071018)

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 <address@hidden
> <mailto:address@hidden>>:
>
>     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) {
>





reply via email to

[Prev in Thread] Current Thread [Next in Thread]