Bug#379004: dpkg-cross: symlinks in linux-header packages are not converted
reopen 379004 found 379004 1.30 tag 379004 patch thanks Sorry, but that patch did NOT fix the problem. I don't know why I thought otherwise. The problem is this: # Non-existsing destination allowed only if it is .so link, # or if both source and destination is under /usr/src next unless (/.*\.so$/ || (/\/usr\/src\// $lv =~ /\/usr\/src\//)\ Now for the original symlink /usr/src/linux-headers-2.6.17-2-ixp4xx/arch/arm/Makefile the destination path $lv will be /usr/arm-linux-gnu/src/linux-headers-2.6.17-2/arch/arm/Makefile which is not under /usr/src. So the above condition should be relaxed a bit. The attached patch fixes the problem. Thanks, Marcus --- dpkg-cross +++ dpkg-cross @@ -609,7 +609,7 @@ # Non-existsing destination allowed only if it is .so link, # or if both source and destination is under /usr/src next unless (/.*\.so$/ || - (/\/usr\/src\// $lv =~ /\/usr\/src\//)); + (/\/usr\/src\// $lv =~ /\/usr\//)); } # Calculate corresponding SOURCE path
Bug#379004: dpkg-cross: symlinks in linux-header packages are not converted
The linux-headers packages have more interesting files in /usr/src that are stripped by dpkg-cross, including Makefiles and .config files. Here's a temporary fix for those that works for me: --- /home/marcus/dpkg-cross 2006-07-20 19:28:38.0 +0200 +++ dpkg-cross 2006-07-20 21:32:16.0 +0200 @@ -514,6 +514,9 @@ if (/^\/usr(\/X11R6)?\/include\//) { # regular file under /usr/include or /usr/X11R6/include link_file($src$_, $dst$crossinc/$') or goto fail; + } elsif (/^\/usr\/src\/(.*)/) { + # anything under /usr/src + link_file($src$_, $dst$crossdir/src/$1) or goto fail; } elsif (/^\/usr\/((src|lib)\/.*\.([hH]|[hH][hH]|[hH][pP][pP]))$/) { # regular .h, .hh, or .hpp file under /usr/lib or /usr/src link_file($src$_, $dst$crossdir/$1) or goto fail; -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Bug#379004: dpkg-cross: symlinks in linux-header packages are not converted
Hi, Could you please check if the attached patch fixes problem reported in this bug? Nikita Index: dpkg-cross === RCS file: /cvsroot/dpkg-cross/dpkg-cross/dpkg-cross,v retrieving revision 1.19 diff -u -r1.19 dpkg-cross --- dpkg-cross 20 Jul 2006 06:51:27 - 1.19 +++ dpkg-cross 23 Jul 2006 19:49:26 - @@ -600,11 +600,13 @@ # Check if destination object exists. # FIXME: this code is not correct for the case of symlink chains. - #If converting symlink will be ever needed, this should - #be rewritten + #If converting symlink chains will be ever needed, this + #should be rewritten if (! -e $dst$lv) { - # Non-existsing destination allowed only if it is .so link - /.*\.so$/ or next; + # Non-existsing destination allowed only if it is .so link, + # or if both source and destination is under /usr/src + next unless (!(/.*\.so$/ || + (/\/usr\/src\// $lv =~ /\/usr\/src\//))); } # Calculate corresponding SOURCE path pgpntxFXGKHpp.pgp Description: PGP signature
Bug#379004: dpkg-cross: symlinks in linux-header packages are not converted
Package: dpkg-cross Version: 1.28 Severity: normal I'm trying to install linux-headers-2.6.17-1-nslu2_2.6.17-2_arm.deb with dpkg-cross. The original deb contains lots of symlinks such as: lrwxrwxrwx root/root 0 2006-07-01 18:34 ./usr/src/linux-headers-2.6.17-1-nslu2/arch/arm/kernel/Makefile - ../../../../linux-headers-2.6.17-1/arch/arm/kernel/Makefile ~$ dpkg -c linux-headers-2.6.17-1-nslu2_2.6.17-2_arm.deb | grep -- -|wc 9737784 165399 These are critical for correct operation. But they are not in the converted deb: ~$ dpkg -c linux-headers-2.6.17-1-nslu2-arm-cross_2.6.17-2_all.deb | grep -- - lrwxrwxrwx root/root 0 2006-07-20 08:22 ./usr/arm-linux-gnu/lib/modules/2.6.17-1-nslu2/build - ../../../src/linux-headers-2.6.17-1-nslu2 lrwxrwxrwx root/root 0 2006-07-20 08:22 ./usr/arm-linux-gnu/src/linux-headers-2.6.17-1-nslu2/include/asm - asm-arm -- System Information: Debian Release: testing/unstable APT prefers testing APT policy: (990, 'testing'), (500, 'unstable'), (500, 'stable'), (1, 'experimental') Architecture: i386 (i686) Shell: /bin/sh linked to /bin/bash Kernel: Linux 2.6.16-2-686 Locale: LANG=sv_SE.UTF-8, LC_CTYPE=sv_SE.UTF-8 (charmap=UTF-8) Versions of packages dpkg-cross depends on: ii binutils 2.17-1 The GNU assembler, linker and bina ii dpkg-dev 1.13.21package building tools for Debian ii file 4.17-2 Determines file type using magic dpkg-cross recommends no packages. -- no debconf information -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]