[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#310796: breaks dpkg in unstable



severity 310796 critical
# Justification: breaks unrelated packages
tags 310796 - experimental
tags 310796 + patch
thanks

Recent update of dpkg in unstable renders type-handling totaly unusable, and
thus breaking packages using it.

There are two problems, the first one (#310796) is dpkg-architecture not
providing a list of cpus and systems anymore.  This is fixed in the attached
patch.

The other one is the change in DEB_*_GNU_CPU from "i386" to "i486".  Since many
packages (including t-h itself in debian/rules, IIRC) used "i386", this is
broken now.  I suggest adding a transitional s/i.86/i486/g regexp somewhere.

-- 
Robert Millan
--- type-handling-0.2.11.old/type-handling	2005-03-17 11:46:45.000000000 +0100
+++ type-handling-0.2.11/type-handling	2005-06-13 11:08:48.000000000 +0200
@@ -1,10 +1,7 @@
 #!/bin/sh -e
 
-all_types=`dpkg-architecture --help 2>&1 | grep "^Known GNU" | \
-  cut -d " " -f 6- | sed "s/, / /g"`
-
-all_cpus=`echo ${all_types} | tr " " "\n" | cut -d "-" -f 1 | sort | uniq`
-all_systems=`echo ${all_types} | tr " " "\n" | cut -d "-" -f 2-  | sort | uniq`
+all_cpus=`grep -v ^# /usr/share/dpkg/cputable | (while read debian gnu regex ; do echo ${gnu} ; done)`
+all_systems=`grep -v ^# /usr/share/dpkg/ostable | (while read debian gnu regex ; do echo ${gnu} ; done)`
 
 if [ "$#" = "0" ] ; then
   echo "Known cpus: `for i in ${all_cpus} ; do echo -n $i\  ; done`"
@@ -32,9 +29,6 @@
   shift
 done
 
-# linux-gnu is an alias for linux, normalise it first of all.
-systems="`echo ${systems} | sed "s/linux-gnu/linux/g"`"
-
 # check if we have a cached result for this
 if test -e "/usr/share/type-handling/${cpus}:${systems}" \
   && [ ":${TYPE_HANDLING_BOOTSTRAP}" = ":" ] \

Reply to: