Bug#646061: Please transition libcroco3 for multiarch
Steve Langasek
steve.langasek at canonical.com
Thu Oct 20 22:51:13 UTC 2011
Package: libcroco
Version: 0.6.2-1
Severity: normal
Tags: patch
User: ubuntu-devel at lists.ubuntu.com
Usertags: origin-ubuntu precise ubuntu-patch
Hi folks,
Please find attached a patch to libcroco to transition it to use the
multiarch library paths as described at
<http://wiki.debian.org/Multiarch/Implementation>. This patch is being
applied in Ubuntu precise.
Since libcroco3 is a dependency of librsvg2-2, it sits fairly low in the
desktop dependency tree, so this will help with the multiarch installability
of a number of relevant cases.
Please note that this patch also addresses bug #462349 about including a
binary in the shared library package. Even if the executable meets policy's
requirements by changing name for every soname change, it's still
incompatible with multiarch since two binaries from two different
architectures can't occupy the same path. (I'm also not sure this does meet
the policy requirement, because the library soname is libcroco-0.6.so.3 and
the executable is named csslint-0.6 - what happens when libcroco-0.6.so.4
comes out?)
The changelog entry for this Ubuntu upload is:
* Build for multiarch.
* Move csslint to a new libcroco-tools package, for multiarch cleanliness.
* croco-config.in: libdir is never used, so don't set it at all - this lets
the executable be the same across architectures and allows the -dev
package to be Multi-Arch: same.
Thanks for considering the patch.
--
Steve Langasek Give me a lever long enough and a Free OS
Debian Developer to set it on, and I can move the world.
Ubuntu Developer http://www.debian.org/
slangasek at ubuntu.com vorlon at debian.org
-------------- next part --------------
=== modified file 'croco-config.in'
--- croco-config.in 2004-07-29 23:30:57 +0000
+++ croco-config.in 2011-10-20 22:13:12 +0000
@@ -4,7 +4,6 @@
exec_prefix=@exec_prefix@
exec_prefix_set=no
includedir=@includedir@
-libdir=@libdir@
usage()
{
=== modified file 'debian/compat'
--- debian/compat 2009-11-04 10:22:19 +0000
+++ debian/compat 2011-10-20 21:08:34 +0000
@@ -1 +1 @@
-6
+9
=== modified file 'debian/control'
--- debian/control 2009-11-04 10:22:19 +0000
+++ debian/control 2011-10-20 22:14:42 +0000
@@ -1,10 +1,15 @@
+# This file is autogenerated. DO NOT EDIT!
+#
+# Modifications should be made to debian/control.in instead.
+# This file is regenerated automatically in the clean target.
+
Source: libcroco
Section: libs
Priority: optional
Maintainer: Sebastien Bacher <seb128 at debian.org>
Uploaders: Debian GNOME Maintainers <pkg-gnome-maintainers at lists.alioth.debian.org>, Josselin Mouette <joss at debian.org>, Kilian Krause <kilian at debian.org>, Loic Minier <lool at dooz.org>, Sebastian Dr?ge <slomo at debian.org>
-Build-Depends: cdbs,
- debhelper (>= 6),
+Build-Depends: cdbs (>= 0.4.93~),
+ debhelper (>= 8.1.3~),
gnome-pkg-tools (>= 0.7),
libxml2-dev (>= 2.4.23),
libglib2.0-dev (>= 2.0),
@@ -16,6 +21,7 @@
Package: libcroco3-dev
Section: libdevel
Architecture: any
+Multi-Arch: same
Depends: ${misc:Depends},
${shlibs:Depends},
libcroco3 (= ${binary:Version}),
@@ -47,6 +53,8 @@
Package: libcroco3
Section: libs
Architecture: any
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
Depends: ${shlibs:Depends},
${misc:Depends}
Description: a generic Cascading Style Sheet (CSS) parsing and manipulation toolkit
@@ -69,3 +77,30 @@
engine at the moment is libxml2.
.
This package contains the shared libraries.
+
+Package: libcroco-tools
+Section: libs
+Architecture: any
+Depends: ${shlibs:Depends},
+ ${misc:Depends}
+Description: Cascading Style Sheet (CSS) parsing and manipulation toolkit - utils
+ Services provided by Libcroco
+ * A parser module that provides
+ o A SAC like API. SAC stands for Simple API for CSS. SAC is an event driven
+ API wich resembles SAX in the xml world.
+ o A CSSOM like API. CSSOM stands for Cascading Style Sheet Object Model.
+ .
+ The libcroco parser implements the CSS Level 2 specification, the CSS
+ forward compatibility rules and the CSS cascading rules.
+ .
+ * A CSS2 selection engine
+ Given an xml element node (that obviously comes from an xml document) and
+ a stylesheet cascade, the Libcroco selection engine can evaluate the css
+ selectors of the cascade and return the style properties associated to
+ the xml element node.
+ .
+ Note that the xml manipulation toolkit used by the libcroco selection
+ engine at the moment is libxml2.
+ .
+ This package contains csslint, a standalone utility based on libcroco that
+ can be used for testing CSS correctness.
=== modified file 'debian/control.in'
--- debian/control.in 2009-11-04 10:22:19 +0000
+++ debian/control.in 2011-10-20 22:14:42 +0000
@@ -3,8 +3,8 @@
Priority: optional
Maintainer: Sebastien Bacher <seb128 at debian.org>
Uploaders: @GNOME_TEAM@
-Build-Depends: cdbs,
- debhelper (>= 6),
+Build-Depends: cdbs (>= 0.4.93~),
+ debhelper (>= 8.1.3~),
gnome-pkg-tools (>= 0.7),
libxml2-dev (>= 2.4.23),
libglib2.0-dev (>= 2.0),
@@ -16,6 +16,7 @@
Package: libcroco3-dev
Section: libdevel
Architecture: any
+Multi-Arch: same
Depends: ${misc:Depends},
${shlibs:Depends},
libcroco3 (= ${binary:Version}),
@@ -47,6 +48,8 @@
Package: libcroco3
Section: libs
Architecture: any
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
Depends: ${shlibs:Depends},
${misc:Depends}
Description: a generic Cascading Style Sheet (CSS) parsing and manipulation toolkit
@@ -69,3 +72,30 @@
engine at the moment is libxml2.
.
This package contains the shared libraries.
+
+Package: libcroco-tools
+Section: libs
+Architecture: any
+Depends: ${shlibs:Depends},
+ ${misc:Depends}
+Description: Cascading Style Sheet (CSS) parsing and manipulation toolkit - utils
+ Services provided by Libcroco
+ * A parser module that provides
+ o A SAC like API. SAC stands for Simple API for CSS. SAC is an event driven
+ API wich resembles SAX in the xml world.
+ o A CSSOM like API. CSSOM stands for Cascading Style Sheet Object Model.
+ .
+ The libcroco parser implements the CSS Level 2 specification, the CSS
+ forward compatibility rules and the CSS cascading rules.
+ .
+ * A CSS2 selection engine
+ Given an xml element node (that obviously comes from an xml document) and
+ a stylesheet cascade, the Libcroco selection engine can evaluate the css
+ selectors of the cascade and return the style properties associated to
+ the xml element node.
+ .
+ Note that the xml manipulation toolkit used by the libcroco selection
+ engine at the moment is libxml2.
+ .
+ This package contains csslint, a standalone utility based on libcroco that
+ can be used for testing CSS correctness.
=== added file 'debian/libcroco-tools.install'
--- debian/libcroco-tools.install 1970-01-01 00:00:00 +0000
+++ debian/libcroco-tools.install 2011-10-20 21:56:18 +0000
@@ -0,0 +1 @@
+usr/bin/csslint*
=== modified file 'debian/libcroco3-dev.install'
--- debian/libcroco3-dev.install 2009-11-04 10:22:19 +0000
+++ debian/libcroco3-dev.install 2011-10-20 21:09:04 +0000
@@ -1,6 +1,6 @@
-debian/tmp/usr/include
-debian/tmp/usr/lib/pkgconfig
-debian/tmp/usr/lib/*.so
-debian/tmp/usr/lib/*.la
-debian/tmp/usr/lib/*.a
-debian/tmp/usr/bin/croco*config
+usr/include
+usr/lib/*/pkgconfig
+usr/lib/*/*.so
+usr/lib/*/*.la
+usr/lib/*/*.a
+usr/bin/croco*config
=== modified file 'debian/libcroco3.install'
--- debian/libcroco3.install 2009-11-04 10:22:19 +0000
+++ debian/libcroco3.install 2011-10-20 22:02:29 +0000
@@ -1,2 +1 @@
-debian/tmp/usr/lib/*.so.*
-debian/tmp/usr/bin/csslint*
+usr/lib/*/*.so.*
=== modified file 'debian/rules'
--- debian/rules 2009-11-04 10:22:19 +0000
+++ debian/rules 2011-10-20 21:13:04 +0000
@@ -9,9 +9,9 @@
-include /usr/share/gnome-pkg-tools/1/rules/gnome-get-source.mk
DEB_DH_MAKESHLIBS_ARGS_ALL += -V
-DEB_CONFIGURE_EXTRA_FLAGS += --disable-gtk-doc
+DEB_CONFIGURE_EXTRA_FLAGS += --disable-gtk-doc \
+ --libdir=\$${prefix}/lib/$(DEB_HOST_MULTIARCH)
common-install-impl::
- chrpath -d debian/tmp/usr/lib/*.so*
+ chrpath -d debian/tmp/usr/lib/*/*.so*
chrpath -d debian/tmp/usr/bin/csslint*
-
More information about the pkg-gnome-maintainers
mailing list