Subject: pkg/23884: p5-XML-LibXML build failure
To: None <>
From: Adam C. Migus <>
List: netbsd-bugs
Date: 12/25/2003 15:45:36
>Number:         23884
>Category:       pkg
>Synopsis:       A warning generated by the compile causes a build failure
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Dec 25 20:47:00 UTC 2003
>Release:        NetBSD 1.6ZG
System: NetBSD 1.6ZG NetBSD 1.6ZG (MIGUS.ORG.MP) #0: Sat Dec 20 08:32:01 EST 2003 i386
Architecture: i386
Machine: i386
	Compilation of p5-XML-LibXML fails with more recent versions of
	libxml2 (2.6.x) with the following error:

	LibXML.xs:73: error: duplicate `extern'
	LibXML.xs:74: error: duplicate `extern'
	LibXML.xs:76: error: duplicate `extern'
	LibXML.xs:77: error: duplicate `extern'
	LibXML.xs:78: error: duplicate `extern'
	LibXML.xs:79: error: duplicate `extern'

	cd pkgsrc/textproc/p5-XML-LibXML; make install
	Note: I do _not_ make any claims to this patch being anything more
	than a work-around.  It simply removes the duplicate declarations.
	I also didn't test it on VMS.  I have contacted the maintainer
	seeking a more permanent fix.  None the less; the fix:
	Apply the folloing patch:
diff -Nru textproc/p5-XML-LibXML.orig/patches/patch-aa textproc/p5-XML-LibXML/patches/patch-aa
--- textproc/p5-XML-LibXML.orig/patches/patch-aa	1969-12-31 19:00:00.000000000 -0500
+++ textproc/p5-XML-LibXML/patches/patch-aa	2003-12-22 10:39:03.000000000 -0500
@@ -0,0 +1,23 @@
+--- LibXML.xs.orig	2003-12-22 10:38:06.000000000 -0500
++++ LibXML.xs	2003-12-22 10:38:12.000000000 -0500
+@@ -64,20 +64,6 @@
+ }
+ #endif
+-#ifdef VMS
+-extern int xmlDoValidityCheckingDefaultVal;
+-#define xmlDoValidityCheckingDefaultValue xmlDoValidityCheckingDefaultVal
+-extern int xmlSubstituteEntitiesDefaultVal;
+-#define xmlSubstituteEntitiesDefaultValue xmlSubstituteEntitiesDefaultVal
+-LIBXML_DLL_IMPORT extern int xmlDoValidityCheckingDefaultValue;
+-LIBXML_DLL_IMPORT extern int xmlSubstituteEntitiesDefaultValue;
+-LIBXML_DLL_IMPORT extern int xmlGetWarningsDefaultValue;
+-LIBXML_DLL_IMPORT extern int xmlKeepBlanksDefaultValue;
+-LIBXML_DLL_IMPORT extern int xmlLoadExtDtdDefaultValue;
+-LIBXML_DLL_IMPORT extern int xmlPedanticParserDefaultValue;
+ #define TEST_PERL_FLAG(flag) \
+     SvTRUE(perl_get_sv(flag, FALSE)) ? 1 : 0