sim: fix compilation on mingw64 [PR sim/28476]
authorOrgad Shaneh <orgads@gmail.com>
Thu, 28 Oct 2021 09:07:46 +0000 (09:07 +0000)
committerMike Frysinger <vapier@gentoo.org>
Sun, 31 Oct 2021 03:50:09 +0000 (23:50 -0400)
...by reordering includes.

1. sim-utils.c

sim/mips/sim-main.h defines UserMode, while there is a struct in winnt.h
which has UserMode as a member. So if sim-main.h is included before winnt.h,
compilation fails.

2. ppc

registers.h defines CR, which is used as a member in winnt.h.

winsock2.h is included by sys/time.h, so sys/time.h has to be included
before registers.h.

Bug: https://sourceware.org/PR28476

sim/common/sim-utils.c
sim/ppc/emul_netbsd.c
sim/ppc/emul_unix.c
sim/ppc/mon.c

index 380afd0493fc9d34870a4cfa07e4d891e4d94484..88fd20e8876762c137252242805c94e08923ed7d 100644 (file)
@@ -20,9 +20,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 /* This must come before any other includes.  */
 #include "defs.h"
 
-#include "sim-main.h"
-#include "sim-assert.h"
-
 #include <stdlib.h>
 #include <time.h>
 #include <sys/time.h> /* needed by sys/resource.h */
@@ -34,6 +31,8 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 
 #include "libiberty.h"
 #include "bfd.h"
+#include "sim-main.h"
+#include "sim-assert.h"
 #include "sim-utils.h"
 
 /* Allocate zero filled memory with xcalloc - xcalloc aborts if the
index a97fc3b64609d0d32ce9191462849363e4b6e57f..d1595c5985f16c6db5be4f92e8162f82e12560d4 100644 (file)
@@ -25,8 +25,7 @@
 /* Note: this module is called via a table.  There is no benefit in
    making it inline */
 
-#include "emul_generic.h"
-#include "emul_netbsd.h"
+#include "defs.h"
 
 #include <string.h>
 #include <sys/types.h>
@@ -38,6 +37,9 @@
 #include <sys/param.h>
 #include <sys/time.h>
 
+#include "emul_generic.h"
+#include "emul_netbsd.h"
+
 #ifdef HAVE_GETRUSAGE
 #ifndef HAVE_SYS_RESOURCE_H
 #undef HAVE_GETRUSAGE
index cfcb4691247630bc3c18460872ffc8086df046b0..191e26abd8eee7a6facd1eee8579cb56f8e489bb 100644 (file)
@@ -25,8 +25,7 @@
 /* Note: this module is called via a table.  There is no benefit in
    making it inline */
 
-#include "emul_generic.h"
-#include "emul_unix.h"
+#include "defs.h"
 
 #include <string.h>
 #ifdef HAVE_SYS_TYPES_H
@@ -124,6 +123,9 @@ int getrusage();
 #include <stdlib.h>
 #include <time.h>
 
+#include "emul_generic.h"
+#include "emul_unix.h"
+
 #ifndef STATIC_INLINE_EMUL_UNIX
 #define STATIC_INLINE_EMUL_UNIX STATIC_INLINE
 #endif
index 966f86c040e2d72a1986b94002be0042c4c05f93..4e29ec998798c04b633b1e4fbd3f8bb6a86478bd 100644 (file)
@@ -21,9 +21,8 @@
 #ifndef _MON_C_
 #define _MON_C_
 
-#include "basics.h"
-#include "cpu.h"
-#include "mon.h"
+#include "defs.h"
+
 #include <stdio.h>
 
 #include <string.h>
 int getrusage();
 #endif
 
+#include "basics.h"
+#include "cpu.h"
+#include "mon.h"
+
 #define MAX_BYTE_READWRITE 9
 #define MAX_SHIFT_READWRITE 3