Index: /trunk/config.m4
===================================================================
--- /trunk/config.m4	(revision 1005)
+++ /trunk/config.m4	(revision 1006)
@@ -24,19 +24,25 @@
   fi
 
-  xcache_sources=" \
-util/xc_stack.c \
-util/xc_trace.c \
-xcache.c \
-xcache/xc_const_string.c \
-xcache/xc_compatibility.c \
-xcache/xc_lock.c \
-xcache/xc_mem.c \
-xcache/xc_opcode_spec.c \
-xcache/xc_processor.c \
-xcache/xc_sandbox.c \
-xcache/xc_shm.c \
-xcache/xc_shm_mmap.c \
-xcache/xc_utils.c \
-"
+  xcache_sources="xcache.c"
+  for i in \
+xc_stack.c \
+xc_trace.c \
+; do
+  xcache_sources="$xcache_sources util/$i"
+done
+  for i in \
+xc_const_string.c \
+xc_compatibility.c \
+xc_lock.c \
+xc_mem.c \
+xc_opcode_spec.c \
+xc_processor.c \
+xc_sandbox.c \
+xc_shm.c \
+xc_shm_mmap.c \
+xc_utils.c \
+; do
+  xcache_sources="$xcache_sources xcache/$i"
+done
   XCACHE_MODULES="cacher"
   XCACHE_MODULE([optimizer],    [optimizer   ], [XCACHE_OPTIMIZER],    [(N/A)])
Index: /trunk/config.w32
===================================================================
--- /trunk/config.w32	(revision 1005)
+++ /trunk/config.w32	(revision 1006)
@@ -5,4 +5,5 @@
 
 if (PHP_XCACHE != "no") {
+	EXTENSION("xcache", "xcache.c", null, "/I " + configure_module_dirname);
 	// {{{ check for xcache-constant 
 	ARG_ENABLE("xcache-constant", "XCache: Handle new constants made by php compiler (e.g.: for __halt_compiler)", "yes");
@@ -12,19 +13,22 @@
 	// }}}
 
-	var xcache_sources = " \
-util/xc_stack.c \
-util/xc_trace.c \
-xcache.c \
-xcache/xc_const_string.c \
-xcache/xc_compatibility.c \
-xcache/xc_lock.c \
-xcache/xc_mem.c \
-xcache/xc_opcode_spec.c \
-xcache/xc_processor.c \
-xcache/xc_sandbox.c \
-xcache/xc_shm.c \
-xcache/xc_shm_mmap.c \
-xcache/xc_utils.c \
-";
+	ADD_SOURCES(configure_module_dirname + "/util", " \
+xc_stack.c \
+xc_trace.c \
+", "xcache");
+
+	ADD_SOURCES(configure_module_dirname + "/xcache", " \
+xc_const_string.c \
+xc_compatibility.c \
+xc_lock.c \
+xc_mem.c \
+xc_opcode_spec.c \
+xc_processor.c \
+xc_sandbox.c \
+xc_shm.c \
+xc_shm_mmap.c \
+xc_utils.c \
+", "xcache");
+
 	// {{{ add sources on enabled
 	ARG_ENABLE("xcache-optimizer",    "(N/A)", "no");
@@ -45,5 +49,5 @@
 		var withval = eval("PHP_XCACHE_" + uname);
 		if (withval != "no") {
-			xcache_sources += " mod_" + name + "/xc_" + name + ".c";
+			ADD_SOURCES(configure_module_dirname + "/mod_" + name, "xc_" + name + ".c", "xcache");
 			XCACHE_MODULES += " " + name;
 			STDOUT.WriteLine("Enabling XCache Module: " + name);
@@ -80,5 +84,5 @@
 	if (PHP_XCACHE_TEST != "no") {
 		ADD_FLAG("XCACHE_ENABLE_TEST", "-DXCACHE_ENABLE_TEST");
-		xcache_sources += " xcache/xc_malloc.c";
+		ADD_SOURCES(configure_module_dirname + "/xcache", "xc_malloc.c", "xcache");
 		AC_DEFINE("HAVE_XCACHE_TEST", 1, "Define to enable XCache self test");
 	}
@@ -93,6 +97,5 @@
 	}
 	// }}}
-	// {{{ create extension
-	EXTENSION("xcache", xcache_sources);
+	// {{{ get ccrule
 	var srcdir = configure_module_dirname;
 	// it's a bit harder to get builddir
Index: /trunk/devel/run
===================================================================
--- /trunk/devel/run	(revision 1005)
+++ /trunk/devel/run	(revision 1006)
@@ -87,4 +87,5 @@
 		--enable-xcache-decoder \
 		--enable-xcache-disassembler \
+		--enable-xcache-coverager \
 		--enable-xcache-test --enable-xcache-constant \
 	&& make clean all
Index: /trunk/mod_coverager/xc_coverager.c
===================================================================
--- /trunk/mod_coverager/xc_coverager.c	(revision 1005)
+++ /trunk/mod_coverager/xc_coverager.c	(revision 1006)
@@ -13,8 +13,10 @@
 #include <fcntl.h>
 
-#include "stack.h"
+#include "util/xc_stack.h"
+#include "util/xc_trace.h"
 #include "xcache_globals.h"
-#include "coverager.h"
-#include "utils.h"
+#include "xc_coverager.h"
+#include "xcache/xc_utils.h"
+
 typedef HashTable *coverager_t;
 #define PCOV_HEADER_MAGIC 0x564f4350
Index: /trunk/util/xc_trace.h
===================================================================
--- /trunk/util/xc_trace.h	(revision 1005)
+++ /trunk/util/xc_trace.h	(revision 1006)
@@ -5,4 +5,14 @@
 #pragma once
 #endif // _MSC_VER > 1000
+
+#ifdef ZEND_WIN32
+#	ifndef inline
+#		ifdef ZEND_WIN32_FORCE_INLINE
+#			define inline __forceinline
+#		else
+#			define inline
+#		endif
+#	endif
+#endif
 
 #ifdef XCACHE_DEBUG
Index: /trunk/xcache/xc_utils.h
===================================================================
--- /trunk/xcache/xc_utils.h	(revision 1005)
+++ /trunk/xcache/xc_utils.h	(revision 1006)
@@ -1,4 +1,4 @@
 #include "php.h"
-#include "xcache.h"
+#include "../xcache.h"
 
 typedef struct {
