Okay this is scary but it is just adding a configure option to disable

* HTMLtree.c SAX2.c c14n.c catalog.c configure.in debugXML.c
  encoding.c entities.c nanoftp.c nanohttp.c parser.c relaxng.c
  testAutomata.c testC14N.c testHTML.c testRegexp.c testRelax.c
  testSchemas.c testXPath.c threads.c tree.c valid.c xmlIO.c
  xmlcatalog.c xmllint.c xmlmemory.c xmlreader.c xmlschemas.c
  example/gjobread.c include/libxml/HTMLtree.h include/libxml/c14n.h
  include/libxml/catalog.h include/libxml/debugXML.h
  include/libxml/entities.h include/libxml/nanohttp.h
  include/libxml/relaxng.h include/libxml/tree.h
  include/libxml/valid.h include/libxml/xmlIO.h
  include/libxml/xmlschemas.h include/libxml/xmlversion.h.in
  include/libxml/xpathInternals.h python/libxml.c:
  Okay this is scary but it is just adding a configure option
  to disable output, this touches most of the files.
Daniel
diff --git a/threads.c b/threads.c
index c646449..b51caa2 100644
--- a/threads.c
+++ b/threads.c
@@ -99,7 +99,9 @@
 #endif /* HAVE_WIN32_THREADS */
 
 static xmlRMutexPtr	xmlLibraryLock = NULL;
+#ifdef LIBXML_THREAD_ENABLED
 static void xmlOnceInit(void);
+#endif
 
 /**
  * xmlNewMutex:
@@ -527,6 +529,7 @@
 #endif
 }
 
+#ifdef LIBXML_THREAD_ENABLED
 /**
  * xmlOnceInit
  *
@@ -550,6 +553,7 @@
     mainthread = GetCurrentThreadId();
 #endif
 }
+#endif
 
 /**
  * DllMain: