Bug#499292: dpkg-cross: cross package misses out libraries in sub-dirs
Package: dpkg-cross
Version: 2.3.0
Severity: important
Doing dpkg-cross -a arm -b libgsmd0_0.8-12_arm.deb
produces a cross-package libgsmd0-arm-cross_0.8-12_all.deb as
expected. However the cross package is missing most of the libraries
in the original - having only dangling symlinks:
$> dpkg-deb --contents libgsmd0_0.8-12_arm.deb
drwxr-xr-x root/root 0 2008-09-16 15:23 ./
drwxr-xr-x root/root 0 2008-09-16 15:23 ./usr/
drwxr-xr-x root/root 0 2008-09-16 15:23 ./usr/lib/
-rw-r--r-- root/root 21864 2008-09-16 15:23 ./usr/lib/libgsmd.so.0.0.0
drwxr-xr-x root/root 0 2008-09-16 15:23 ./usr/lib/gsmd/
-rw-r--r-- root/root 3160 2008-09-16 15:23 ./usr/lib/gsmd/libgsmd-machine_generic.so.0.0.0
-rw-r--r-- root/root 3492 2008-09-16 15:23 ./usr/lib/gsmd/libgsmd-machine_tihtc.so.0.0.0
-rw-r--r-- root/root 4412 2008-09-16 15:23 ./usr/lib/gsmd/libgsmd-vendor_bcm.so.0.0.0
-rw-r--r-- root/root 4096 2008-09-16 15:23 ./usr/lib/gsmd/libgsmd-vendor_qc.so.0.0.0
-rw-r--r-- root/root 5560 2008-09-16 15:23 ./usr/lib/gsmd/libgsmd-vendor_siemens.so.0.0.0
-rw-r--r-- root/root 6676 2008-09-16 15:23 ./usr/lib/gsmd/libgsmd-vendor_ti.so.0.0.0
-rw-r--r-- root/root 6244 2008-09-16 15:23 ./usr/lib/gsmd/libgsmd-vendor_tihtc.so.0.0.0
drwxr-xr-x root/root 0 2008-09-16 15:23 ./usr/share/
drwxr-xr-x root/root 0 2008-09-16 15:23 ./usr/share/doc/
drwxr-xr-x root/root 0 2008-09-16 15:23 ./usr/share/doc/libgsmd0/
-rw-r--r-- root/root 1514 2008-09-16 15:22 ./usr/share/doc/libgsmd0/copyright
-rw-r--r-- root/root 712 2008-09-16 15:22 ./usr/share/doc/libgsmd0/changelog.Debian.gz
drwxr-xr-x root/root 0 2008-09-16 15:23 ./usr/bin/
-rwxr-xr-x root/root 84928 2008-09-16 15:23 ./usr/bin/gsmd
lrwxrwxrwx root/root 0 2008-09-16 15:23 ./usr/lib/libgsmd.so -> libgsmd.so.0.0.0
lrwxrwxrwx root/root 0 2008-09-16 15:23 ./usr/lib/libgsmd.so.0 -> libgsmd.so.0.0.0
lrwxrwxrwx root/root 0 2008-09-16 15:23 ./usr/lib/gsmd/libgsmd-machine_generic.so -> libgsmd-machine_generic.so.0.0.0
lrwxrwxrwx root/root 0 2008-09-16 15:23 ./usr/lib/gsmd/libgsmd-machine_generic.so.0 -> libgsmd-machine_generic.so.0.0.0
lrwxrwxrwx root/root 0 2008-09-16 15:23 ./usr/lib/gsmd/libgsmd-machine_tihtc.so -> libgsmd-machine_tihtc.so.0.0.0
lrwxrwxrwx root/root 0 2008-09-16 15:23 ./usr/lib/gsmd/libgsmd-machine_tihtc.so.0 -> libgsmd-machine_tihtc.so.0.0.0
lrwxrwxrwx root/root 0 2008-09-16 15:23 ./usr/lib/gsmd/libgsmd-vendor_bcm.so -> libgsmd-vendor_bcm.so.0.0.0
lrwxrwxrwx root/root 0 2008-09-16 15:23 ./usr/lib/gsmd/libgsmd-vendor_bcm.so.0 -> libgsmd-vendor_bcm.so.0.0.0
lrwxrwxrwx root/root 0 2008-09-16 15:23 ./usr/lib/gsmd/libgsmd-vendor_qc.so -> libgsmd-vendor_qc.so.0.0.0
lrwxrwxrwx root/root 0 2008-09-16 15:23 ./usr/lib/gsmd/libgsmd-vendor_qc.so.0 -> libgsmd-vendor_qc.so.0.0.0
lrwxrwxrwx root/root 0 2008-09-16 15:23 ./usr/lib/gsmd/libgsmd-vendor_siemens.so -> libgsmd-vendor_siemens.so.0.0.0
lrwxrwxrwx root/root 0 2008-09-16 15:23 ./usr/lib/gsmd/libgsmd-vendor_siemens.so.0 -> libgsmd-vendor_siemens.so.0.0.0
lrwxrwxrwx root/root 0 2008-09-16 15:23 ./usr/lib/gsmd/libgsmd-vendor_ti.so -> libgsmd-vendor_ti.so.0.0.0
lrwxrwxrwx root/root 0 2008-09-16 15:23 ./usr/lib/gsmd/libgsmd-vendor_ti.so.0 -> libgsmd-vendor_ti.so.0.0.0
lrwxrwxrwx root/root 0 2008-09-16 15:23 ./usr/lib/gsmd/libgsmd-vendor_tihtc.so -> libgsmd-vendor_tihtc.so.0.0.0
lrwxrwxrwx root/root 0 2008-09-16 15:23 ./usr/lib/gsmd/libgsmd-vendor_tihtc.so.0 -> libgsmd-vendor_tihtc.so.0.0.0
$> dpkg-deb --contents ~/libgsmd0-arm-cross_0.8-12_arm.deb
drwxr-xr-x root/root 0 2008-09-17 14:41 ./
drwxr-xr-x root/root 0 2008-09-17 14:41 ./usr/
drwxr-xr-x root/root 0 2008-09-17 14:41 ./usr/arm-linux-gnu/
drwxr-xr-x root/root 0 2008-09-17 14:41 ./usr/arm-linux-gnu/lib/
-rw-r--r-- root/root 21864 2008-09-16 15:23 ./usr/arm-linux-gnu/lib/libgsmd.so.0.0.0
drwxr-xr-x root/root 0 2008-09-17 14:41 ./usr/arm-linux-gnu/lib/gsmd/
drwxr-xr-x root/root 0 2008-09-17 14:41 ./usr/share/
drwxr-xr-x root/root 0 2008-09-17 14:41 ./usr/share/doc/
drwxr-xr-x root/root 0 2008-09-17 14:41 ./usr/share/doc/libgsmd0-arm-cross/
-rw-r--r-- root/root 261 2008-09-17 14:41 ./usr/share/doc/libgsmd0-arm-cross/README
lrwxrwxrwx root/root 0 2008-09-17 14:41 ./usr/arm-linux-gnu/lib/gsmd/libgsmd-machine_generic.so -> libgsmd-machine_generic.so.0.0.0
lrwxrwxrwx root/root 0 2008-09-17 14:41 ./usr/arm-linux-gnu/lib/gsmd/libgsmd-machine_tihtc.so -> libgsmd-machine_tihtc.so.0.0.0
lrwxrwxrwx root/root 0 2008-09-17 14:41 ./usr/arm-linux-gnu/lib/gsmd/libgsmd-vendor_bcm.so -> libgsmd-vendor_bcm.so.0.0.0
lrwxrwxrwx root/root 0 2008-09-17 14:41 ./usr/arm-linux-gnu/lib/gsmd/libgsmd-vendor_qc.so -> libgsmd-vendor_qc.so.0.0.0
lrwxrwxrwx root/root 0 2008-09-17 14:41 ./usr/arm-linux-gnu/lib/gsmd/libgsmd-vendor_siemens.so -> libgsmd-vendor_siemens.so.0.0.0
lrwxrwxrwx root/root 0 2008-09-17 14:41 ./usr/arm-linux-gnu/lib/gsmd/libgsmd-vendor_ti.so -> libgsmd-vendor_ti.so.0.0.0
lrwxrwxrwx root/root 0 2008-09-17 14:41 ./usr/arm-linux-gnu/lib/gsmd/libgsmd-vendor_tihtc.so -> libgsmd-vendor_tihtc.so.0.0.0
lrwxrwxrwx root/root 0 2008-09-17 14:41 ./usr/arm-linux-gnu/lib/libgsmd.so -> libgsmd.so.0.0.0
lrwxrwxrwx root/root 0 2008-09-17 14:41 ./usr/arm-linux-gnu/lib/libgsmd.so.0 -> libgsmd.so.0.0.0
As you can see the top-level /lib/libgsmd is dealt with correctly, but
the libs in the lib/gsmd/ subdir are not.
-- Package-specific info:
-- /etc/dpkg-cross/cross-compile --
#
# /etc/dpkg-cross/cross-compile: configuration for dpkg-cross & Co.
#
# default architecture for dpkg-cross (to avoid always typing the -a option
# if you do cross installations only for one architecture)
# Note: default_arch is managed by debconf - it can be overridden
# if ~/.dpkg-cross/cross-compile exists or by specifying an
# architecture on the command line.
# Use '[sudo] dpkg-reconfigure dpkg-cross' to change this value.
default_arch = arm
#
# general section: paths of cross compiling environment
#
# you can set the following variables here:
# crossprefix: prefix for cross compiling binaries; default: $(DEB_HOST_GNU_SYSTEM)-
# crossbase : base prefix for the following; default: /usr
# crossdir : base directory for architecture; default:
# $(CROSSBASE)/$(DEB_HOST_GNU_TYPE)
# crossbin : dir for binaries; default: $(CROSSDIR)/bin
# crosslib : dir for libraries; default: $(CROSSDIR)/lib
# crossinc : dir for headers; default: $(CROSSDIR)/include
# maintainer : maintainer name to pass to original dpkg-buildpackage
# in -m option. If not set at all, don't pass a -m, thus
# dpkg-buildpackage will use the name from the changelog
# file. If set to the special string CURRENTUSER,
# dpkg-buildpackage will use the name from the
# changelog, too, but signing the .changes will be done
# as the current user (default key).
# removedeps : comma-separated list of package names that should be removed
# from depends/conflicts/etc fields
# keepdeps : comma-separated list of package names that should be kept
# in depends/conflicts/etc fields as is, without adding
# -arch-cross.
#
# Usually, you need only set crossbase, or maybe also crossdir
#
crossbase = /usr
# A crossroot definition is for the complete-Debian-system-mounted-somewhere
# approach, mainly used for Hurd.
#crossroot-hurd-i386 = /gnu
#
# This setting for maintainer is usually right:
#
maintainer = CURRENTUSER
#
# This list is no longer being updated - implement on the command line instead.
#
removedeps = gcc, binutils, gpm, cpp, debianutils, xfree86-common, libpam-runtime, xlibs-data, debconf, tzdata
keepdeps = gcc-3.3-base, gcc-3.4-base, gcc-4.0-base, gcc-4.1-base
#
# per-package sections: additional environment variables to set
#
# These are no longer updated - implement on the command line instead.
package e2fsprogs:
unset LD
# by Jorik Jonker <jorik@dnd.utwente.nl>
package glibc:
scope makeflags:
LINUX_SOURCE = $(CROSSDIR)
-- System Information:
Debian Release: lenny/sid
APT prefers testing
APT policy: (990, 'testing'), (600, 'unstable'), (500, 'stable')
Architecture: amd64 (x86_64)
Kernel: Linux 2.6.24-1-amd64 (SMP w/1 CPU core)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash
Versions of packages dpkg-cross depends on:
ii binutils-multiarch 2.18.1~cvs20080103-7 Binary utilities that support mult
ii debconf [debconf-2. 1.5.22 Debian configuration management sy
ii dpkg-dev 1.14.22 Debian package development tools
ii libdebian-dpkgcross 2.3.0 functions to aid cross-compiling D
ii perl 5.10.0-13 Larry Wall's Practical Extraction
Versions of packages dpkg-cross recommends:
ii fakeroot 1.9.5 Gives a fake root environment
dpkg-cross suggests no packages.
-- debconf information:
* dpkg-cross/default-arch: arm
______________________________________________________________________
This email has been scanned by the MessageLabs Email Security System.
For more information please visit http://www.messagelabs.com/email
______________________________________________________________________
Reply to: