fixing #61290 "namespace nodes have no parent" long standing divergence

* xpath.c: fixing #61290 "namespace nodes have no parent"
  long standing divergence from the XPath REC. NodeSets
  simply hold a copy of namespace nodes and those node ->next
  points to the parent (which may not be the node carrying the
  definition).
* include/libxml/xpath.h: flagged but didn't added a possible
  speedup
* DOCBparser.c HTMLparser.c: removed some warnings from push
  parser due to new state being added.
* tree.c: new fix from Boris Erdmann
* configure.in c14n.c include/libxml/c14n.h testC14N.c: added
  the XML Canonalization support from Aleksey Sanin
Daniel
diff --git a/configure.in b/configure.in
index 765f02a..2319c2c 100644
--- a/configure.in
+++ b/configure.in
@@ -420,6 +420,7 @@
 if test "$with_xpath" = "no" ; then
     echo Disabling XPATH support
     with_xptr="no"
+    with-c14n="no"
     WITH_XPATH=0
     XPATH_OBJ=
 else    
@@ -441,6 +442,18 @@
 AC_SUBST(WITH_XPTR)
 AC_SUBST(XPTR_OBJ)
 
+AC_ARG_WITH(c14n, [  --with-c14n             Add the Canonicalization support (on)])
+if test "$with_c14n" = "no" ; then
+    echo Disabling C14N support
+    WITH_C14N=0
+    C14N_OBJ=
+else    
+    WITH_C14N=1
+    C14N_OBJ="c14n.c"
+fi
+AC_SUBST(WITH_C14N)
+AC_SUBST(C14N_OBJ)
+
 AC_ARG_WITH(xinclude, [  --with-xinclude         Add the XInclude support (on)])
 if test "$with_xinclude" = "no" ; then
     echo Disabling XInclude support