Package: dpkg Version: 1.10.28 Severity: wishlist Tags: patch Hi,
attached are two patches to allow and include a 'Multi-Arch: yes|no|unknown' in debian/control and deb files. The field will be used by the multiarch support to recognise what packages support and need multiarch. I'm requesting this feature now so sources can already prepare for multiarch and adapt to the requirements for a "Multi-Arch: yes". This will help test and fine tune the actual dpkg multiarch support itself. This should be all that is required to build multiarch capable package without resorting to custom X... fields. MfG Goswin -- System Information: Debian Release: 3.1 Architecture: amd64 (x86_64) Kernel: Linux 2.6.8-frosties-2 Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968) Versions of packages dpkg depends on: ii dselect 1.10.28 a user tool to manage Debian packa ii libc6 2.3.2.ds1-22 GNU C Library: Shared libraries an -- no debconf information
diff -Nru /tmp/F3st3XICAV/dpkg-1.10.28/scripts/controllib.pl /tmp/mGBNgnErxX/dpkg-1.10.28/scripts/controllib.pl --- /tmp/F3st3XICAV/dpkg-1.10.28/scripts/controllib.pl 2004-11-11 03:16:35.000000000 +0000 +++ /tmp/mGBNgnErxX/dpkg-1.10.28/scripts/controllib.pl 2005-08-22 10:41:39.000000000 +0000 @@ -15,7 +15,8 @@ grep($capit{lc $_}=$_, qw(Pre-Depends Standards-Version Installed-Size Build-Depends Build-Depends-Indep - Build-Conflicts Build-Conflicts-Indep)); + Build-Conflicts Build-Conflicts-Indep + Multi-Arch)); @pkg_dep_fields = qw(Replaces Provides Depends Pre-Depends Recommends Suggests Conflicts Enhances); @src_dep_fields = qw(Build-Depends Build-Depends-Indep diff -Nru /tmp/F3st3XICAV/dpkg-1.10.28/scripts/dpkg-gencontrol.pl /tmp/mGBNgnErxX/dpkg-1.10.28/scripts/dpkg-gencontrol.pl --- /tmp/F3st3XICAV/dpkg-1.10.28/scripts/dpkg-gencontrol.pl 2004-11-11 03:16:35.000000000 +0000 +++ /tmp/mGBNgnErxX/dpkg-1.10.28/scripts/dpkg-gencontrol.pl 2005-08-22 10:44:48.000000000 +0000 @@ -50,7 +50,7 @@ Pre-Depends Depends Recommends Suggests Enhances Optional Conflicts Replaces Provides Installed-Size Origin Maintainer Bugs Source Description Build-Depends Build-Depends-Indep - Build-Conflicts Build-Conflicts-Indep )); + Build-Conflicts Build-Conflicts-Indep Multi-Arch )); while (@ARGV) { $_=shift(@ARGV); @@ -127,7 +127,7 @@ else { $_ = "C $_"; &unknown('general section of control info file'); } } elsif (s/^C$myindex //) { #print STDERR "P key >$_< value >$v<\n"; - if (m/^(Package|Description|Essential|Optional)$/) { + if (m/^(Package|Description|Essential|Optional|Multi-Arch)$/) { $f{$_}= $v; } elsif (exists($pkg_dep_fields{$_})) { } elsif (m/^Section$|^Priority$/) { @@ -180,7 +180,7 @@ $v= $fi{$_}; if (s/^C //) { } elsif (s/^C$myindex //) { - if (m/^(Package|Description|Essential|Optional)$/) { + if (m/^(Package|Description|Essential|Optional|Multi-Arch)$/) { } elsif (exists($pkg_dep_fields{$_})) { $f{$_}= showdep(parsedep(substvars($v)), 0); } elsif (m/^Section$|^Priority$/) {
Index: scripts/dpkg-genchanges.pl =================================================================== RCS file: /cvsroot/multiarch/dpkg/scripts/dpkg-genchanges.pl,v retrieving revision 1.1.1.1 diff -r1.1.1.1 dpkg-genchanges.pl 203c203 < } elsif (m/^(Package|Essential|Pre-Depends|Depends|Provides)$/ || --- > } elsif > (m/^(Package|Essential|Pre-Depends|Depends|Provides|Multi-Arch)$/ || Index: scripts/dpkg-source.pl =================================================================== RCS file: /cvsroot/multiarch/dpkg/scripts/dpkg-source.pl,v retrieving revision 1.1.1.1 diff -r1.1.1.1 dpkg-source.pl 191c191 < m/^(Description|Section|Priority)$/i || --- > m/^(Description|Section|Priority|Multi-Arch)$/i ||