Package: libxml2 / 2.9.4+dfsg1-7

0001-modify-xml2-config-and-pkgconfig-behaviour.patch Patch series | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
From: Aron Xu <aron@debian.org>
Date: Sun, 26 Oct 2014 06:02:29 +0800
Subject: modify xml2-config and pkgconfig behaviour

---
 configure.ac                 |  2 +-
 libxml-2.0-uninstalled.pc.in |  3 ++-
 xml2-config.1                |  4 ++++
 xml2-config.in               | 22 ++++++++++------------
 4 files changed, 17 insertions(+), 14 deletions(-)

diff --git a/configure.ac b/configure.ac
index 911984e..6681b27 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1555,7 +1555,7 @@ else
         WITH_ICU=1
     fi
 fi
-XML_LIBS="-lxml2 $Z_LIBS $LZMA_LIBS $THREAD_LIBS $ICONV_LIBS $ICU_LIBS $M_LIBS $LIBS"
+XML_LIBS="-lxml2"
 XML_LIBTOOLLIBS="libxml2.la"
 AC_SUBST(WITH_ICU)
 
diff --git a/libxml-2.0-uninstalled.pc.in b/libxml-2.0-uninstalled.pc.in
index 60b886b..0d5d6cb 100644
--- a/libxml-2.0-uninstalled.pc.in
+++ b/libxml-2.0-uninstalled.pc.in
@@ -8,5 +8,6 @@ Name: libXML
 Version: @VERSION@
 Description: libXML library version2.
 Requires:
-Libs: -L${libdir} -lxml2 @ICU_LIBS@ @THREAD_LIBS@ @Z_LIBS@ @LZMA_LIBS@ @ICONV_LIBS@ @M_LIBS@ @LIBS@
+Libs: -L${libdir} -lxml2
+Libs.private: @ICU_LIBS@ @THREAD_LIBS@ @Z_LIBS@ @LZMA_LIBS@ @ICONV_LIBS@ @M_LIBS@ @LIBS@
 Cflags: -I${includedir} @XML_INCLUDEDIR@ @XML_CFLAGS@
diff --git a/xml2-config.1 b/xml2-config.1
index 8cf9858..7b4195d 100644
--- a/xml2-config.1
+++ b/xml2-config.1
@@ -8,11 +8,15 @@ xml-config - script to get information about the installed version of GNOME-XML
 \fIxml-config\fP is a tool that is used to determine the compile and
 linker flags that should be used to compile and link programs that use
 \fIGNOME-XML\fP.
+It is highly recommended to use pkg-config instead because building in a
+multi-arch environment is not well supported in this script.
 .SH OPTIONS
 \fIxml-config\fP accepts the following options:
 .TP 8
 .B  \-\-version
 Print the currently installed version of \fIGNOME-XML\fP on the standard output.
+Add the \fB\-\-static\fP option to print the linker flags that are necessary
+to \fBstatically\fP link a \fIGNOME-XML\fP program.
 .TP 8
 .B  \-\-libs
 Print the linker flags that are necessary to link a \fIGNOME-XML\fP program.
diff --git a/xml2-config.in b/xml2-config.in
index 1957486..b764d83 100644
--- a/xml2-config.in
+++ b/xml2-config.in
@@ -15,6 +15,8 @@ Known values for OPTION are:
   --prefix=DIR		change libxml prefix [default $prefix]
   --exec-prefix=DIR	change libxml exec prefix [default $exec_prefix]
   --libs		print library linking information
+                        add --static to print static library linking
+                        information
   --cflags		print pre-processor and compiler flags
   --modules		module support enabled
   --help		display this help and exit
@@ -82,18 +84,14 @@ while test $# -gt 0; do
        	;;
 
     --libs)
-        if [ "`uname`" = "Linux" ]
-	then
-	    if [ "@XML_LIBDIR@" = "-L/usr/lib" -o "@XML_LIBDIR@" = "-L/usr/lib64" ]
-	    then
-		echo @XML_LIBS@ @MODULE_PLATFORM_LIBS@
-	    else
-		echo @XML_LIBDIR@ @XML_LIBS@ @MODULE_PLATFORM_LIBS@
-	    fi
-	else
-	    echo @XML_LIBDIR@ @XML_LIBS@ @MODULE_PLATFORM_LIBS@ @WIN32_EXTRA_LIBADD@
-	fi
-       	;;
+        LIBS="@XML_LIBS@ @WIN32_EXTRA_LIBADD@"
+        if [ "$2" = "--static" ]
+        then
+                shift
+                LIBS="${LIBS} @Z_LIBS@ @BASE_THREAD_LIBS@@THREAD_LIBS@ @ICONV_LIBS@ @M_LIBS@ @LIBS@"
+        fi
+        echo ${LIBS}
+        ;;
 
     *)
 	usage