Index: src/CLucene/clucene-config.h.cmake
===================================================================
--- src/CLucene/clucene-config.h.cmake	(revision 2517)
+++ src/CLucene/clucene-config.h.cmake	(working copy)
@@ -89,6 +89,11 @@
 //todo: HACK
 #define _CL_HAVE_FLOAT_T  1 
 
+#ifdef __MINGW32__
+typedef float float_t;
+#endif 
+
+
 /* Define to 1 if the system has the type `intptr_t'. */
 //todo: HACK
 #define _CL_HAVE_INTPTR_T  1 
Index: src/CLucene/config/threadCSection.h
===================================================================
--- src/CLucene/config/threadCSection.h	(revision 2517)
+++ src/CLucene/config/threadCSection.h	(working copy)
@@ -14,7 +14,7 @@
 
 CL_NS_DEF(util)
 
-   #if !defined(LUCENE_USE_WINDOWS_H) && !defined(_WINDOWS_)
+   #if !defined(LUCENE_USE_WINDOWS_H) && !defined(_WINDOWS_) && !defined(__MINGW32__)
       //we have not explicity included windows.h and windows.h has
       //not been included (check _WINDOWS_), then we must define
       //our own definitions to the thread locking functions:
Index: src/CLucene/CMakeLists.txt
===================================================================
--- src/CLucene/CMakeLists.txt	(revision 2517)
+++ src/CLucene/CMakeLists.txt	(working copy)
@@ -210,12 +210,12 @@
 	./util/ThreadLocal.cpp
 	./StdHeader.cpp
 )
-IF( MSVC )
+IF( MSVC OR MINGW )
 	add_library(clucene-core STATIC 
 		${clucene_core_Files}
 	)
-ELSE( MSVC )
+ELSE( MSVC OR MINGW )
 	add_library(clucene-core SHARED 
 		${clucene_core_Files}
 	)
-ENDIF( MSVC )
+ENDIF( MSVC OR MINGW )
