From: Ian Jackson Date: Thu, 29 Aug 1996 13:05:02 +0000 (+0100) Subject: dpkg (1.3.11) unstable; urgency=low X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9a1f2f0a911c72ced2709aaf531de174be90def5;p=dpkg dpkg (1.3.11) unstable; urgency=low * EBUSY when dpkg removes a directory is only a warning. * dpkg-genchanges generates sensible warning (not confusing error about mismatch) for missing Section/Priority in binary packages. * Added dpkg --print-gnu-build-architecture option. * shlibs.default for m68k provided, as a copy of i386 version. -- Ian Jackson Thu, 29 Aug 1996 14:05:02 +0100 --- diff --git a/archtable b/archtable index a6aed81e..ffeb5548 100644 --- a/archtable +++ b/archtable @@ -10,13 +10,15 @@ # This is then looked up in the table below, to find out what to map # it to. If it isn't found then configure will print a warning and # continue. You can override configure's ideas using --with-arch. +# The third field is the GNU configure architecture to use with +# this build architecture. -i386 i386 -i486 i386 -i586 i386 -pentium i386 -sparc sparc -alpha alpha -m68k m68k -arm arm -ppc ppc +i386 i386 i486 +i486 i386 i486 +i586 i386 i486 +pentium i386 i486 +sparc sparc sparc +alpha alpha alpha +m68k m68k m68k +arm arm arm +ppc ppc ppc diff --git a/configure b/configure index d0764eab..0b3d8fbf 100755 --- a/configure +++ b/configure @@ -756,8 +756,7 @@ else dpkg_arch="" dpkg_archwhy=" (bad output from --print-libgcc-file-name)" else - dpkg_arch2="`sed -e '/^'$dpkg_arch'[ ]/!d; s/^[-0-9a-z]*[ ]*//' \ - $srcdir/archtable`" + dpkg_arch2="`awk '$1 == "'$dpkg_arch'" { print $2 }' $srcdir/archtable`" if test "x$dpkg_arch2" = "x$dpkg_arch"; then dpkg_archwhy=" (obtained from gcc)" elif test "x$dpkg_arch2" != x; then @@ -888,13 +887,13 @@ else # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. cat > conftest.$ac_ext < Syntax Error EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:898: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:897: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out` if test -z "$ac_err"; then : @@ -903,13 +902,13 @@ else rm -rf conftest* CPP="${CC-cc} -E -traditional-cpp" cat > conftest.$ac_ext < Syntax Error EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:913: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:912: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out` if test -z "$ac_err"; then : @@ -938,11 +937,11 @@ else ac_cv_c_cross=yes else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } +{ (eval echo configure:945: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } if test -s conftest && (./conftest; exit) 2>/dev/null; then ac_cv_c_cross=no else @@ -960,7 +959,7 @@ if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #include @@ -968,7 +967,7 @@ else #include EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:972: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:971: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out` if test -z "$ac_err"; then rm -rf conftest* @@ -983,7 +982,7 @@ rm -f conftest* if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. cat > conftest.$ac_ext < EOF @@ -1001,7 +1000,7 @@ fi if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. cat > conftest.$ac_ext < EOF @@ -1022,7 +1021,7 @@ if test "$cross_compiling" = yes; then : else cat > conftest.$ac_ext < #define ISLOWER(c) ('a' <= (c) && (c) <= 'z') @@ -1033,7 +1032,7 @@ if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2); exit (0); } EOF -{ (eval echo configure:1037: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } +{ (eval echo configure:1036: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } if test -s conftest && (./conftest; exit) 2>/dev/null; then : else @@ -1163,7 +1162,7 @@ if eval "test \"`echo '$''{'ac_cv_type_mode_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #if STDC_HEADERS @@ -1194,7 +1193,7 @@ if eval "test \"`echo '$''{'ac_cv_type_pid_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #if STDC_HEADERS @@ -1225,7 +1224,7 @@ if eval "test \"`echo '$''{'ac_cv_type_size_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #if STDC_HEADERS @@ -1256,7 +1255,7 @@ if eval "test \"`echo '$''{'ac_cv_func_vprintf'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; }; then +if { (eval echo configure:1283: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then rm -rf conftest* eval "ac_cv_func_vprintf=yes" else @@ -1306,7 +1305,7 @@ if eval "test \"`echo '$''{'ac_cv_func__doprnt'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; }; then +if { (eval echo configure:1333: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then rm -rf conftest* eval "ac_cv_func__doprnt=yes" else @@ -1357,7 +1356,7 @@ if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:1410: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_c_const=yes else @@ -1433,7 +1432,7 @@ else ac_cv_c_bigendian=unknown # See if sys/param.h defines the BYTE_ORDER macro. cat > conftest.$ac_ext < #include @@ -1445,11 +1444,11 @@ int t() { #endif ; return 0; } EOF -if { (eval echo configure:1449: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:1448: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* # It does; now see whether it defined to BIG_ENDIAN or not. cat > conftest.$ac_ext < #include @@ -1461,7 +1460,7 @@ int t() { #endif ; return 0; } EOF -if { (eval echo configure:1465: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:1464: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_c_bigendian=yes else @@ -1478,7 +1477,7 @@ if test "$cross_compiling" = yes; then { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; } else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } +{ (eval echo configure:1494: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } if test -s conftest && (./conftest; exit) 2>/dev/null; then ac_cv_c_bigendian=no else @@ -1518,7 +1517,7 @@ else { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; } else cat > conftest.$ac_ext < main() @@ -1529,7 +1528,7 @@ main() exit(0); } EOF -{ (eval echo configure:1533: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } +{ (eval echo configure:1532: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } if test -s conftest && (./conftest; exit) 2>/dev/null; then ac_cv_sizeof_unsigned_long=`cat conftestval` else @@ -1552,7 +1551,7 @@ else { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; } else cat > conftest.$ac_ext < main() @@ -1563,7 +1562,7 @@ main() exit(0); } EOF -{ (eval echo configure:1567: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } +{ (eval echo configure:1566: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } if test -s conftest && (./conftest; exit) 2>/dev/null; then ac_cv_sizeof_unsigned_int=`cat conftestval` else @@ -1585,7 +1584,7 @@ if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; }; then +if { (eval echo configure:1612: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -1639,12 +1638,12 @@ if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1648: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:1647: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out` if test -z "$ac_err"; then rm -rf conftest* @@ -1674,7 +1673,7 @@ if eval "test \"`echo '$''{'ac_cv_func_sysinfo'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; }; then +if { (eval echo configure:1701: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then rm -rf conftest* eval "ac_cv_func_sysinfo=yes" else @@ -1718,7 +1717,7 @@ else echo "$ac_t""no" 1>&6 echo $ac_n "checking __NR_sysinfo""... $ac_c" 1>&6 cat > conftest.$ac_ext < @@ -1763,7 +1762,7 @@ fi else cat > conftest.$ac_ext < int main() { return 0; } @@ -1771,7 +1770,7 @@ int t() { strcmp("a","b") ; return 0; } EOF -if { (eval echo configure:1775: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:1774: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* dpkg_cv_c_works=yes else @@ -1800,7 +1799,7 @@ fi else cat > conftest.$ac_ext < @@ -1811,7 +1810,7 @@ int t() { alphasort ; return 0; } EOF -if { (eval echo configure:1815: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:1814: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* dpkg_cv_header_alphasort=yes else @@ -1843,7 +1842,7 @@ EOF else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:1854: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* dpkg_cv_c_inline=yes else @@ -1883,7 +1882,7 @@ EOF else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:1894: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* dpkg_cv_c_attribute_supported=yes else @@ -1917,7 +1916,7 @@ EOF else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:1928: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* dpkg_cv_c_attribute_noreturn=yes else @@ -1956,7 +1955,7 @@ EOF else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:1967: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* dpkg_cv_c_attribute_const=yes else @@ -1995,7 +1994,7 @@ EOF else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2006: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* dpkg_cv_attribute_format=yes else @@ -2049,7 +2048,7 @@ else oldcflags="${CFLAGS-}" CFLAGS="${CFLAGS-} ${CWARNS} -Wall -Wno-implicit -Werror" cat > conftest.$ac_ext < @@ -2062,7 +2061,7 @@ int t() { ; return 0; } EOF -if { (eval echo configure:2066: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2065: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* dpkg_cv_c_gcc_warn_all=yes else @@ -2096,7 +2095,7 @@ else oldcflags="${CFLAGS-}" CFLAGS="${CFLAGS-} ${CWARNS} -Wwrite-strings -Werror" cat > conftest.$ac_ext < @@ -2109,7 +2108,7 @@ int t() { ; return 0; } EOF -if { (eval echo configure:2113: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2112: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* dpkg_cv_c_gcc_warn_writestrings=yes else @@ -2143,7 +2142,7 @@ else oldcflags="${CFLAGS-}" CFLAGS="${CFLAGS-} ${CWARNS} -Wpointer-arith -Werror" cat > conftest.$ac_ext < @@ -2156,7 +2155,7 @@ int t() { ; return 0; } EOF -if { (eval echo configure:2160: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2159: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* dpkg_cv_c_gcc_warn_pointerarith=yes else @@ -2190,7 +2189,7 @@ else oldcflags="${CFLAGS-}" CFLAGS="${CFLAGS-} ${CWARNS} -Wimplicit -Wnested-externs -Werror" cat > conftest.$ac_ext < @@ -2203,7 +2202,7 @@ int t() { ; return 0; } EOF -if { (eval echo configure:2207: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2206: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* dpkg_cv_c_gcc_warn_implicit=yes else diff --git a/configure.in b/configure.in index 6c6bd0ad..22921e20 100644 --- a/configure.in +++ b/configure.in @@ -33,10 +33,7 @@ changequote([, ])dnl dpkg_arch="" dpkg_archwhy=" (bad output from --print-libgcc-file-name)" else -changequote(, )dnl - dpkg_arch2="`sed -e '/^'$dpkg_arch'[ ]/!d; s/^[-0-9a-z]*[ ]*//' \ - $srcdir/archtable`" -changequote([, ])dnl + dpkg_arch2="`awk '$1 == "'$dpkg_arch'" { print $2 }' $srcdir/archtable`" if test "x$dpkg_arch2" = "x$dpkg_arch"; then dpkg_archwhy=" (obtained from gcc)" elif test "x$dpkg_arch2" != x; then diff --git a/debian/changelog b/debian/changelog index 7b9281da..0dce69a6 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,15 @@ +dpkg (1.3.11) unstable; urgency=low + + * EBUSY when dpkg removes a directory is only a warning. + + * dpkg-genchanges generates sensible warning (not confusing error + about mismatch) for missing Section/Priority in binary packages. + + * Added dpkg --print-gnu-build-architecture option. + * shlibs.default for m68k provided, as a copy of i386 version. + + -- Ian Jackson Thu, 29 Aug 1996 14:05:02 +0100 + dpkg (1.3.10) unstable; urgency=medium * dpkg-source(1) manpage alias symlinks are not dangling. diff --git a/debian/shlibs.default.m68k b/debian/shlibs.default.m68k new file mode 100644 index 00000000..602cb89b --- /dev/null +++ b/debian/shlibs.default.m68k @@ -0,0 +1,2 @@ +libc 5 libc5 (>= 5.2.18) +libncurses 3.0 ncurses3.0 diff --git a/main/Makefile.in b/main/Makefile.in index 0d7a9c7c..1b4adc18 100644 --- a/main/Makefile.in +++ b/main/Makefile.in @@ -61,13 +61,14 @@ filesdb.o: filesdb.c $(CC) $(ALL_CFLAGS_OPT) -c $< archtable.inc: ../archtable - perl -ne 'print " { \"$$1\",$$2\"$$3\" },\n" \ - if m/^\s*(\w+)(\s+)(\w+)\s*$$/' \ - ../archtable >archtable.inc.new + expand ../archtable | \ + perl -ne 'print " { \"$$1\",$$2\"$$3\",$$4\"$$5\" },\n" \ + if m/^\s*(\w+)(\s+)(\w+)(\s+)(\w+)\s*$$/' \ + >archtable.inc.new mv archtable.inc.new archtable.inc clean: - rm -f *.o core dpkg *.new + rm -f *.o core dpkg *.new archtable.inc distclean: clean rm -f Makefile *.orig *~ *.~* ./#*# diff --git a/main/archtable.inc b/main/archtable.inc deleted file mode 100644 index 6ee4a67d..00000000 --- a/main/archtable.inc +++ /dev/null @@ -1,9 +0,0 @@ - { "i386", "i386" }, - { "i486", "i386" }, - { "i586", "i386" }, - { "pentium", "i386" }, - { "sparc", "sparc" }, - { "alpha", "alpha" }, - { "m68k", "m68k" }, - { "arm", "arm" }, - { "ppc", "ppc" }, diff --git a/main/enquiry.c b/main/enquiry.c index 21a8b5c4..23b6231e 100644 --- a/main/enquiry.c +++ b/main/enquiry.c @@ -597,9 +597,9 @@ void printinstarch(const char *const *argv) { } void printarch(const char *const *argv) { - static const struct { const char *from, *to; } archtable[]= { + static const struct { const char *from, *to, *gnu; } archtable[]= { #include "archtable.inc" - { 0,0 } + { 0,0,0 } }, *archp; const char *ccompiler, *arch; @@ -638,7 +638,11 @@ void printarch(const char *const *argv) { for (archp=archtable; archp->from && !(strlen(archp->from) == ll && !strncmp(archp->from,p,ll)); archp++); - arch= archp->to; + switch (cipaction->arg) { + case act_printarch: arch= archp->to; break; + case act_printgnuarch: arch= archp->gnu; break; + default: internerr("unknown action in printarch"); + } if (!arch) { *q= 0; arch= p; fprintf(stderr,DPKG ": warning, architecture `%s' not in remapping table\n",arch); diff --git a/main/main.c b/main/main.c index a068730f..71e34544 100644 --- a/main/main.c +++ b/main/main.c @@ -73,6 +73,7 @@ Usage: \n\ " DPKG " -S|--search ... find package(s) owning file(s)\n\ " DPKG " -C|--audit check for broken package(s)\n\ " DPKG " --print-architecture print target architecture (uses GCC)\n\ + " DPKG " --print-gnu-build-architecture print GNU version of target arch\n\ " DPKG " --print-installation-architecture print host architecture (for inst'n)\n\ " DPKG " --compare-versions compare version numbers - see below\n\ " DPKG " --help | --version show this help / version number\n\ @@ -313,6 +314,7 @@ static const struct cmdinfo cmdinfos[]= { ACTION( "list", 'l', act_listpackages, listpackages ), ACTION( "search", 'S', act_searchfiles, searchfiles ), ACTION( "print-architecture", 0, act_printarch, printarch ), + ACTION( "print-gnu-build-architecture", 0, act_printgnuarch, printarch ), ACTION( "assert-support-predepends", 0, act_assertpredep, assertpredep ), ACTION( "print-installation-architecture", 0, act_printinstarch, printinstarch ), ACTION( "predep-package", 0, act_predeppackage, predeppackage ), diff --git a/main/main.h b/main/main.h index b7efa597..fb1e50e5 100644 --- a/main/main.h +++ b/main/main.h @@ -53,7 +53,7 @@ enum action { act_unset, act_install, act_unpack, act_avail, act_configure, act_unpackchk, act_status, act_searchfiles, act_audit, act_listfiles, act_assertpredep, act_printarch, act_predeppackage, act_cmpversions, act_printinstarch, act_compareversions, act_printavail, act_avclear, - act_forgetold, act_getselections, act_setselections }; + act_forgetold, act_getselections, act_setselections, act_printgnuarch }; enum conffopt { cfof_prompt = 001, diff --git a/main/remove.c b/main/remove.c index 993588d8..37e97438 100644 --- a/main/remove.c +++ b/main/remove.c @@ -247,11 +247,11 @@ void removal_bulk(struct pkginfo *pkg) { pkg->name, namenode->name); push_leftover(&leftover,namenode); continue; - } else if (errno == EPERM) { + } else if (errno == EBUSY || errno == EPERM) { fprintf(stderr, DPKG " - warning: while removing %.250s," " unable to remove directory `%.250s':" - " Operation not permitted - directory may be a mount point ?\n", - pkg->name, namenode->name); + " %s - directory may be a mount point ?\n", + pkg->name, namenode->name, strerror(errno)); push_leftover(&leftover,namenode); continue; } diff --git a/scripts/dpkg-genchanges.pl b/scripts/dpkg-genchanges.pl index a96cdee2..3429f692 100644 --- a/scripts/dpkg-genchanges.pl +++ b/scripts/dpkg-genchanges.pl @@ -180,9 +180,11 @@ for $p (keys %p2f) { for $p (keys %p2f) { $f= $p2f{$p}; $sec= $f2seccf{$f}; $sec= $sourcedefault{'Section'} if !length($sec); + if (!length($sec)) { $sec='-'; &warn("missing Section for binary package $p"); } $sec eq $f2sec{$f} || &error("package $p has section $sec in control file". " but $f2sec{$f} in files list"); $pri= $f2pricf{$f}; $pri= $sourcedefault{'Priority'} if !length($pri); + if (!length($pri)) { $pri='-'; &warn("missing Priority for binary package $p"); } $pri eq $f2pri{$f} || &error("package $p has priority $pri in control". " file but $f2pri{$f} in files list"); }