I could build wxWidgets 2.9 after doing the change from wsock32 to ws2_32.
The building of wxWidgets 2.8 has way too many errors for me to want to fix.
The build of Code::Blocks fails in the squirrel section.
Note: This is not because of wxWidgets 2.9; I have been building C::B with wx2.9 for over an week without errors.
Patched squirrel; now it has compiler errors in wxscintilla.
Patched wxscintilla; now it has compiler errors in SDK with errors pointing issues in squirrel sqPlus.
No idea if squirrel patch will work right, but here it is.
Index: src/sdk/scripting/sqplus/SquirrelVM.cpp
===================================================================
--- src/sdk/scripting/sqplus/SquirrelVM.cpp	(revision 5363)
+++ src/sdk/scripting/sqplus/SquirrelVM.cpp	(working copy)
@@ -1,4 +1,5 @@
 #include <stdio.h>
+#include <string.h>
 #include <stdarg.h>
 
 #define _DEBUG_DUMP
Index: src/include/scripting/include/squirrel.h
===================================================================
--- src/include/scripting/include/squirrel.h	(revision 5363)
+++ src/include/scripting/include/squirrel.h	(working copy)
@@ -40,8 +40,8 @@
 #endif
 
 // C::B patch: so it builds on 64bit
-#ifdef _LP64
-    #define _SQ64
+#if (defined(_WIN64) || defined(_LP64))
+#define _SQ64
 #endif
 
 #ifdef _SQ64
@@ -49,6 +49,10 @@
 typedef __int64 SQInteger;
 typedef unsigned __int64 SQUnsignedInteger;
 typedef unsigned __int64 SQHash; /*should be the same size of a pointer*/
+#elif defined(__MINGW64__)
+typedef int SQInteger;
+typedef unsigned int SQUnsignedInteger;
+typedef unsigned long long SQHash; /*should be the same size of a pointer*/
 #else
 typedef long SQInteger;
 typedef unsigned long SQUnsignedInteger;
Index: src/include/scripting/squirrel/sqtable.h
===================================================================
--- src/include/scripting/squirrel/sqtable.h	(revision 5363)
+++ src/include/scripting/squirrel/sqtable.h	(working copy)
@@ -10,7 +10,7 @@
 #include "sqstring.h"
 
 
-#define hashptr(p)  ((SQHash)(((SQInteger)p) >> 3))
+#define hashptr(p)  ((SQHash)(((SQHash)p) >> 3))
 
 inline SQHash HashObj(const SQObjectPtr &key)
 {
  Tim S