]> err.no Git - dpkg/commitdiff
Update to dpkg 1.4.1.5
authorWichert Akkerman <wakkerma@debian.org>
Mon, 27 Sep 1999 00:25:40 +0000 (00:25 +0000)
committerWichert Akkerman <wakkerma@debian.org>
Mon, 27 Sep 1999 00:25:40 +0000 (00:25 +0000)
16 files changed:
ChangeLog
configure.in
debian/50dpkg-dev.el
debian/changelog
debian/control
debian/rules
doc/manuals-version
po/en.po
po/fr.po
scripts/Makefile.am
scripts/controllib.pl
scripts/dpkg-buildpackage.sh
scripts/dpkg-gencontrol.pl
scripts/dpkg-source.1
scripts/install-info.pl
scripts/update-alternatives.pl

index 399500d98e5d8db5c29b51c464484e6a4c977019..35c2db917b110401981fdbb8a861a87e00ea7ce3 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,37 @@
+dpkg (1.4.1.5) unstable; urgency=low
+
+  * Non-maintainer release.
+  * (dpkg-dev): Use emacsen-common for debian-changelog-mode.el
+    (closes:Bug#20776,#31030).
+  * Removed references to the packaging and policy manuals from debian/control.
+  * Put debian-changelog-mode.el in dpkg-dev and remove from dpkg (closes:Bug#29271).
+  * Fix paths in 50dpkg-dev.el using Roderick Schertler's patch
+    (closes:Bug#28270,#29702,#26876,#29184,and others).
+  * Note that bug number 17367 was fixed in 1.4.0.26.
+  * Add Zack Weinberg's install-info patch for GNU install-info
+    compatibility (closes:Bug#28965).
+  * Add dpkg-architecture stuff from Marcus Brinkmann.
+  * Remove debian-keyring suggests from dpkg.
+  * Add -k<keyid> flag to dpkg-buildpackage.
+  * --textmode works in gpg, remove kluge from dpkg-buildpackage.
+  * Cleanup configure.in slightly (stop using tl_ macros, fix gettext stuff).
+  * Attempt to make Debian source useful for non-Debian systems
+    (i.e. distclean tree instead of maintainer-clean tree).
+  * Sync with wichert's 1.4.1.4.
+  * Add my ltconfig-1.3.2.diff (RPATH workaround).
+  * Add dpkg-scansources program and man page.
+  * Man pages in /usr/share/man.
+
+ -- Joel Klecker <espy@debian.org>  Tue, 13 Jul 1999 18:12:15 -0700
+
+dpkg (1.4.1.4) unstable; urgency=low
+
+  * Also change developer-keyring to debian-keyring for dpkg-dev package
+  * Include spanish translation from Nicolás Lichtmaier <nick@debian.org>
+  * Depend on perl5 instead of perl
+
+ -- Wichert Akkerman <wakkerma@debian.org>  Mon,  5 Jul 1999 00:04:14 +0200
+
 dpkg (1.4.1.3) unstable; urgency=low
 
   * Modify tarobject() so it does not complain if we are creating a
index 536ce54aa6f5fb97956df34dc52e6c56a7c92b38..ea9dae8b59a329185da046e45710e3d532a519f6 100644 (file)
@@ -5,17 +5,17 @@ AC_PREREQ([2.12])
 AC_INIT(include/dpkg.h.in)
 AM_CONFIG_HEADER(config.h)
 
-tl_CHECK_TOOL_PREFIX
+AC_CHECK_TOOL_PREFIX
 
-tl_PROG_CC
-tl_CANONICAL_SYSTEM
-tl_CHECK_TOOL_PREFIX
+AC_PROG_CC
+AC_CANONICAL_SYSTEM
+AC_CHECK_TOOL_PREFIX
 
-tl_PROG_CXX
+dnl tl_PROG_CXX
 AC_PROG_CXX
 AM_CONDITIONAL(HAVE_CPLUSPLUS, [test "$CXX" != ""])
 
-tl_CHECK_TOOL(LD, ld, ld)
+AC_CHECK_TOOL(LD, ld, ld)
 
 AM_INIT_AUTOMAKE(dpkg,[`sed -n '1s/dpkg (\([0-9.]\+\)).*/\1/p' ${srcdir}/debian/changelog`])
 ACLOCAL="$ACLOCAL -I automake"
@@ -92,8 +92,6 @@ dnl gettext
 
 ALL_LINGUAS="en fr es"
 AM_GNU_GETTEXT
-AC_LINK_FILES($nls_cv_header_libgt, $nls_cv_header_intl)
-AC_OUTPUT_COMMANDS([sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile])
 
 dnl Other stuff
 
index 41a0b15ec02125e791d880616adcec235a30b87f..64e18c86f8f9ecff9f4660e701508a7a32f6144c 100644 (file)
@@ -4,5 +4,11 @@
 ;; Copyright (C) 1997, Klee Dienes <klee@mit.edu>
 ;; I hereby release this progam into the public domain.
 
-(autoload 'debian-changelog-mode "/usr/share/emacs/site-lisp/debian-changelog-mode.el"
+(autoload 'debian-changelog-mode "debian-changelog-mode"
         "Major mode for editing Debian-style change logs." t)
+
+; Automatically set mode for debian/changelog and debian/rules files.
+(setq auto-mode-alist (cons '("/debian/changelog\\'" . debian-changelog-mode)
+                           auto-mode-alist)
+      interpreter-mode-alist (cons '("make" . makefile-mode)
+                                  interpreter-mode-alist))
index fc0dd5bc163201d42c946c0278ea2506edbeaa51..35c2db917b110401981fdbb8a861a87e00ea7ce3 100644 (file)
@@ -1,3 +1,29 @@
+dpkg (1.4.1.5) unstable; urgency=low
+
+  * Non-maintainer release.
+  * (dpkg-dev): Use emacsen-common for debian-changelog-mode.el
+    (closes:Bug#20776,#31030).
+  * Removed references to the packaging and policy manuals from debian/control.
+  * Put debian-changelog-mode.el in dpkg-dev and remove from dpkg (closes:Bug#29271).
+  * Fix paths in 50dpkg-dev.el using Roderick Schertler's patch
+    (closes:Bug#28270,#29702,#26876,#29184,and others).
+  * Note that bug number 17367 was fixed in 1.4.0.26.
+  * Add Zack Weinberg's install-info patch for GNU install-info
+    compatibility (closes:Bug#28965).
+  * Add dpkg-architecture stuff from Marcus Brinkmann.
+  * Remove debian-keyring suggests from dpkg.
+  * Add -k<keyid> flag to dpkg-buildpackage.
+  * --textmode works in gpg, remove kluge from dpkg-buildpackage.
+  * Cleanup configure.in slightly (stop using tl_ macros, fix gettext stuff).
+  * Attempt to make Debian source useful for non-Debian systems
+    (i.e. distclean tree instead of maintainer-clean tree).
+  * Sync with wichert's 1.4.1.4.
+  * Add my ltconfig-1.3.2.diff (RPATH workaround).
+  * Add dpkg-scansources program and man page.
+  * Man pages in /usr/share/man.
+
+ -- Joel Klecker <espy@debian.org>  Tue, 13 Jul 1999 18:12:15 -0700
+
 dpkg (1.4.1.4) unstable; urgency=low
 
   * Also change developer-keyring to debian-keyring for dpkg-dev package
index 9b4ba3b17e2e16107fee8da447499929b08882ba..9b61915a367833093df42df1f2b02ae25766e1f7 100644 (file)
@@ -8,8 +8,7 @@ Package: dpkg
 Architecture: any
 Essential: yes
 Pre-Depends: ${shlibs:Pre-Depends}
-Suggests: debian-keyring
-Description: Package maintenance system for Debian Linux
+Description: Package maintenance system for Debian
  This package contains the programs which handle the installation and
  removal of packages on your system.
  .
@@ -29,11 +28,9 @@ Recommends: cpio (>= 2.4.2-2), patch (>= 2.2-1), gcc, make
 Suggests: gnupg, debian-keyring
 Conflicts: dpkgname
 Replaces: dpkgname, dpkg (<< 1.4.0)
-Description: Package building tools for Debian Linux
+Description: Package building tools for Debian
  This package contains the tools (including dpkg-source) required to
- unpack, build and upload Debian source packages.  It also contains
- the programmers' and Debian policy manuals, which are the
- documentation for package developers.
+ unpack, build and upload Debian source packages.
  .
  `cpio' and `patch' are also required to manipulate source packages.
  Some older cpios are insufficient - use at least 2.4.2-2.
index bf698c2e6d1035a024e8cd80261a334d111e7af9..379020a060ccb8ac58c98a22389740201265a1f7 100755 (executable)
@@ -11,63 +11,40 @@ arch=$(shell dpkg --print-architecture)
 mcidir=debian/tmp-main/DEBIAN
 
 
-Makefile.in: Makefile.am
+maintainer-configure: Makefile.am configure.in
        $(checkdir)
-       $(RM) config.status
        mkdir -p automake
        aclocal -I ./automake
        autoheader
+       gettextize --copy --force
+       libtoolize --copy --force
+       patch -p0 < debian/ltconfig-1.3.2.diff
+       automake --copy --add-missing --foreign
        autoconf
-       gettextize --force
-       libtoolize --automake --copy --force
-       $(RM) config.sub config.guess 
-       ln -s /usr/share/automake/config.sub .
-       automake --add-missing
 
-$(BUILD)/Makefile: Makefile.in
+$(BUILD)/config.status:
        $(checkdir)
        $(RM) -r debian/build
        install -d debian/build
        cd $(BUILD) && ../../configure \
-               --enable-shared --with-included-gettext \
+               --enable-shared \
                --prefix=/usr \
                --datadir=/usr/share \
+               --mandir=/usr/share/man \
                --sysconfdir=/etc \
                --sharedstatedir=/var/lib \
                --localstatedir=/var/lib
-# libtool -rpath workaround based on a suggestion by Yann Dirson
-# <dirson@debian.org>
-#
-# It is supposed to be inserted in configure.in, but I didn't want
-# to re-run autoconf (since that bloats the Debian diff unnecessarily),
-# so I just patch libtool after running configure.  -- Richard Braakman
-# <dark@xs4all.nl>
-#
-# The version of libtool included with LessTif unfortunately insists on
-# linking with -rpath, i.e. hardwiring locations. This is not desirable.
-#
-# The dummy define is improbable enough not to conflict with anything; it is
-# just here to fool libtool by making it believe it gave some useful info to
-# gcc.
-       sed < $(BUILD)/libtool > $(BUILD)/libtool.foo \
-               's/^hardcode_libdir_flag_spec.*$$/hardcode_libdir_flag_spec=" -D__LIBTOOL_IS_A_FOOL__ "/'
-       mv $(BUILD)/libtool.foo $(BUILD)/libtool
-# More hackery: this will also patch the generated libtool to explicitly
-# link libraries against the libraries they depend on.  (particularly libc)
-       sed < $(BUILD)/libtool > $(BUILD)/libtool.foo '/^archive_cmds="/s/"$$/ \\$$deplibs"/'
-       mv $(BUILD)/libtool.foo $(BUILD)/libtool
-       chmod 755 $(BUILD)/libtool
 
-clean: $(BUILD)/Makefile
+clean:
        $(checkdir)
-       $(MAKE) -C $(BUILD) -i maintainer-clean
+       -$(MAKE) -C $(BUILD) -i distclean
        $(RM) -r debian/{build,files,substvars,tmp*}
        $(RM) $(BUILD)/dpkg-*.tar.gz
        $(RM) po/*.gmo
        $(RM) config.log
        find . \( -name '*~' -o -name '#*#' \) -print0 | xargs -r0 $(RM) --
 
-build: $(BUILD)/Makefile
+build: $(BUILD)/config.status
        $(checkdir)
        $(MAKE) -C $(BUILD)
 
@@ -77,7 +54,8 @@ binary-trees: build
        $(checkdir)
        -$(RM) -r debian/tmp-{main,dev}
        install -d debian/tmp-{main,dev}/{DEBIAN,etc/dpkg,usr/doc/dpkg}
-       install -d debian/tmp-dev/usr/{lib/dpkg,doc/dpkg-dev,man/man1,man/man8,sbin,bin}
+       install -d debian/tmp-dev/usr/{lib/dpkg,doc/dpkg-dev,share/man/man1,share/man/man8,sbin,bin}
+       install -d debian/tmp-dev/usr/share/emacs/site-lisp/dpkg-dev
        install -d debian/tmp-main/sbin
        set -e; if [ $(arch) = i386 ]; then \
                sed -e 's/^# i386elf: //' <debian/preinst >$(mcidir)/preinst ; \
@@ -90,28 +68,35 @@ binary-trees: build
                        debian/tmp-dev/etc/dpkg/shlibs.default ; \
        fi
        cp debian/{prerm,postinst} $(mcidir)/.
-       install -d debian/tmp-dev/etc/emacs/site-start.d
-       install -p -m 644 debian/50dpkg-dev.el \
-               debian/tmp-dev/etc/emacs/site-start.d/
-       install -d debian/tmp-dev/etc/xemacs/site-start-19.d
-       install -p -m 644 debian/50dpkg-dev.el \
-               debian/tmp-dev/etc/xemacs/site-start-19.d/
-       chmod +x $(mcidir)/{postinst,prerm,preinst}
        $(MAKE) -C $(BUILD) top_distdir=. dist 
        $(MAKE) -C $(BUILD) \
                prefix=$(DIR)/debian/tmp-main/usr \
                sysconfdir=$(DIR)/debian/tmp-main/etc \
                datadir=$(DIR)/debian/tmp-main/usr/share \
+               mandir=$(DIR)/debian/tmp-main/usr/share/man \
                sharedstatedir=$(DIR)/debian/tmp-main/var/lib \
                localstatedir=$(DIR)/debian/tmp-main/var/lib \
                install
-       find debian/tmp-main/usr/man -type f | xargs gzip -9vf
+       install -m 755 debian/dev-postinst debian/tmp-dev/DEBIAN/postinst
+       install -m 755 debian/dev-prerm debian/tmp-dev/DEBIAN/prerm
+       install -d debian/tmp-dev/etc/emacs/site-start.d
+       install -c debian/50dpkg-dev.el debian/tmp-dev/etc/emacs/site-start.d/.
+       install -d debian/tmp-dev/usr/lib/emacsen-common/packages/{install,remove}
+       install -m 755 debian/emacsen-common-remove \
+       debian/tmp-dev/usr/lib/emacsen-common/packages/remove/dpkg-dev
+       install -m 755 debian/emacsen-common-install \
+       debian/tmp-dev/usr/lib/emacsen-common/packages/install/dpkg-dev
+       cp scripts/debian-changelog-mode.el \
+       debian/tmp-dev/usr/share/emacs/site-lisp/dpkg-dev
+       rm -f debian/tmp-main/usr/share/{x,}emacs/site-lisp/debian-changelog-mode.el*
+       chmod +x $(mcidir)/{postinst,prerm,preinst}
+       find debian/tmp-main/usr/share/man -type f | xargs gzip -9vf
        set -e; for f in dpkg-buildpackage dpkg-gencontrol dpkg-distaddfile \
                  dpkg-parsechangelog dpkg-genchanges dpkg-shlibdeps; do \
-               rm debian/tmp-main/usr/man/man1/$$f.1; \
-               ln -s dpkg-source.1.gz debian/tmp-main/usr/man/man1/$$f.1.gz ; \
+               rm debian/tmp-main/usr/share/man/man1/$$f.1; \
+               ln -s dpkg-source.1.gz debian/tmp-main/usr/share/man/man1/$$f.1.gz ; \
        done
-       ln -s ../man7/undocumented.7.gz debian/tmp-main/usr/man/man1/dpkg-divert.1.gz
+       ln -s ../man7/undocumented.7.gz debian/tmp-main/usr/share/man/man1/dpkg-divert.1.gz
        gzip -9vf debian/tmp-main/usr/doc/dpkg/changelog*
        cp debian/copyright debian/tmp-main/usr/doc/dpkg/copyright
        cp debian/copyright debian/tmp-dev/usr/doc/dpkg-dev/copyright
@@ -119,10 +104,10 @@ binary-trees: build
        set -e; for f in \
  usr/doc/dpkg/{internals.html,changelog.manuals.gz} \
  usr/bin/dpkg-{source,genchanges,gencontrol,shlibdeps,buildpackage,parsechangelog} \
- usr/bin/{dpkg-distaddfile,822-date,dpkg-scanpackages,dpkg-name} \
- usr/man/man1/dpkg-{source,genchanges,gencontrol,shlibdeps,buildpackage}.1.gz \
- usr/man/man1/{dpkg-parsechangelog,dpkg-distaddfile,822-date,dpkg-name}.1.gz \
- usr/man/man5 usr/man/man8/dpkg-scanpackages.8.gz \
+ usr/bin/{dpkg-distaddfile,822-date,dpkg-scanpackages,dpkg-name,dpkg-architecture} \
+ usr/share/man/man1/dpkg-{source,genchanges,gencontrol,shlibdeps,buildpackage,architecture}.1.gz \
+ usr/share/man/man1/{dpkg-parsechangelog,dpkg-distaddfile,822-date,dpkg-name}.1.gz \
+ usr/share/man/man5 usr/share/man/man8/dpkg-scanpackages.8.gz \
  usr/lib/dpkg/parsechangelog usr/lib/dpkg/controllib.pl \
                ; do mv debian/tmp-main/$$f debian/tmp-dev/$$f; done
 
index 0de45ccea47ae94362c82713a4656e8f29f802af..be925a5bc7c82d462cfaaa18562582bf8fbf3542 100644 (file)
@@ -1,2 +1,2 @@
-<!entity manuals-version "1.4.1.3">
-<!entity dpkg-version "1.4.1.3">
+<!entity manuals-version "1.4.1.5">
+<!entity dpkg-version "1.4.1.5">
index 6143b5ef4f7fb274c58f7ef0ef3a5b68a6a8cfa2..d652532c4eb71413d940ec57c502ab5a2bc5866b 100644 (file)
--- a/po/en.po
+++ b/po/en.po
@@ -6,7 +6,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 1999-06-01 00:29+0200\n"
+"POT-Creation-Date: 1999-07-06 16:05-0700\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
index c7aac29dbf7445011aae28f6524ffd343ee9c54f..20fc5fdba156d1008e67b14fd1672f890d8a8d78 100644 (file)
--- a/po/fr.po
+++ b/po/fr.po
@@ -17,7 +17,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: Debian dpkg 1.4.0.14\n"
-"POT-Creation-Date: 1999-06-01 00:29+0200\n"
+"POT-Creation-Date: 1999-07-06 16:05-0700\n"
 "PO-Revision-Date: 1997-05-13 22:07 EDT\n"
 "Last-Translator: Christophe Le Bars <clebars@debian.org>\n"
 "Language-Team: French\n"
index 85e8bdf15e1f45b0d868f9a94749af2d13bbe4ca..39aeeeac3fc007235823456191084fac801f3cdc 100644 (file)
@@ -19,7 +19,8 @@ altssysconfdir                = $(sysconfdir)/alternatives
 
 bin_SCRIPTS            = dpkg-name dpkg-source dpkg-genchanges dpkg-gencontrol \
                          dpkg-shlibdeps dpkg-buildpackage dpkg-parsechangelog \
-                         dpkg-distaddfile 822-date dpkg-scanpackages
+                         dpkg-distaddfile 822-date dpkg-scanpackages \
+                         dpkg-scansources dpkg-architecture
 
 sbin_PROGRAMS          = start-stop-daemon
 start_stop_daemon_SOURCES      = start-stop-daemon.c
@@ -34,7 +35,8 @@ ELCFILES              = debian-changelog-mode.elc
 
 man_MANS               = dpkg-name.1 dpkg-source.1 822-date.1 update-rc.d.8 \
                          start-stop-daemon.8 update-alternatives.8 \
-                         install-info.8 dpkg-scanpackages.8
+                         install-info.8 dpkg-scanpackages.8 \
+                         dpkg-scansources.1 dpkg-architecture.1
 
 EXTRA_DIST             = update-rc.d.pl \
                          dpkg-name.sh dpkg-source.pl dpkg-genchanges.pl \
@@ -43,7 +45,7 @@ EXTRA_DIST            = update-rc.d.pl \
                          dpkg-distaddfile.pl 822-date.pl dpkg-scanpackages.pl \
                          update-alternatives.pl install-info.pl dpkg-divert.pl \
                          cleanup-info.pl controllib.pl debian-changelog-mode.el \
-                         cl-debian.pl \
+                         cl-debian.pl dpkg-architecture.pl dpkg-scansources.pl \
                          $(man_MANS)
 
 noinst_DATA            = cl-debian
index a4df97ae464f5cfd685e05cb0d7e2833134c0ac1..0a084fae4d1d50a60d22e50fb242d5b8dd0a3cd6 100755 (executable)
@@ -62,9 +62,13 @@ sub capit {
 }
 
 sub findarch {
-    $arch=`dpkg --print-architecture`;
-    $? && &subprocerr("dpkg --print-architecture");
-    $arch =~ s/\n$//;
+   if (exists $ENV{DEB_HOST_ARCH}) {
+      $arch=$ENV{DEB_HOST_ARCH};
+   } else {
+      $arch=`dpkg --print-architecture`;
+      $? && &subprocerr("dpkg --print-architecture");
+       chomp $arch;
+   }
     $substvar{'Arch'}= $arch;
 }
 
index e4fb94fc9911991efbb3bba0d3a5764ff7c2f950..18d1a43dbdebf10a76ca4cafef70457985aaae04 100755 (executable)
@@ -14,11 +14,12 @@ version 2 or later for copying conditions.  There is NO warranty.
 Usage: dpkg-buildpackage [options]
 Options: -r<gain-root-command>
          -p<sign-command>
+        -k<keyid>     the key to use for signing
          -sgpg         the sign-command is called like GPG
          -spgp         the sign-command is called like PGP 
          -us           unsigned source
          -uc           unsigned changes
-         -a<arch>      architecture field of the changes _file_name_
+         -a<arch>      Debian architecture we build for
          -b            binary-only, do not build source } also passed to
          -B            binary-only, no arch-indep files } dpkg-genchanges
          -v<version>   changes since version <version>      }
@@ -64,6 +65,7 @@ do
        -h)     usageversion; exit 0 ;;
        -r*)    rootcommand="$value" ;;
        -p*)    signcommand="$value"; warnpgp='' ;;
+       -k*)    signkey="$value" ;;
        -sgpg)  signinterface=gpg ;;
        -spgp)  signinterface=pgp ;;
        -us)    signsource=: ; warnpgp='' ;;
@@ -73,6 +75,7 @@ do
        -sa)    sourcestyle=-sa ;;
        -sd)    sourcestyle=-sd ;;
        -tc)    cleansource=true ;;
+       -t*)    targetgnusystem="$value" ;;          # Order DOES matter!
        -nc)    noclean=true; binaryonly=-b ;;
        -b)     binaryonly=-b ;;
        -B)     binaryonly=-B; binarytarget=binary-arch ;;
@@ -109,7 +112,10 @@ mustsetvar package "`dpkg-parsechangelog | sed -n 's/^Source: //p'`" "source pac
 mustsetvar version "`dpkg-parsechangelog | sed -n 's/^Version: //p'`" "source version"
 if [ -n "$maint" ]; then maintainer="$maint"; 
 else mustsetvar maintainer "`dpkg-parsechangelog | sed -n 's/^Maintainer: //p'`" "source maintainer"; fi
+command -v dpkg-architecture > /dev/null 2>&1 && eval `dpkg-architecture -a${arch} -t${targetgnusystem} -s`
+archlist=`dpkg-architecture -a${arch} -t${targetgnusystem} -f 2> /dev/null`
 test "${opt_a}" \
+       || arch=`dpkg-architecture -a${arch} -t${targetgnusystem} -qDEB_HOST_ARCH 2> /dev/null` && test "${arch}" \
        || mustsetvar arch "`dpkg --print-architecture`" "build architecture"
 
 sversion=`echo "$version" | perl -pe 's/^\d+://'`
@@ -118,14 +124,11 @@ pva="${package}_${sversion}${arch:+_${arch}}"
 
 signfile () {
        if test $signinterface = gpg ; then
-               # --textmode doesn't seem to work; we use perl to filter ^M;
-               # this doesn't affect the actual signature.
                (cat "../$1" ; echo "") | \
-               $signcommand --local-user "$maintainer" --clearsign --armor \
-                       --textmode --output - - | \
-                       perl -n -p -e 's/\r$//' > "../$1.asc" 
+               $signcommand --local-user "${signkey:-$maintainer}" --clearsign --armor \
+                       --textmode  > "../$1.asc" 
        else
-               $signcommand -u "$maintainer" +clearsig=on -fast <"../$1" \
+               $signcommand -u "${signkey:-$maintainer}" +clearsig=on -fast <"../$1" \
                        >"../$1.asc"
        fi
        echo
@@ -143,13 +146,13 @@ if [ -n "$since"  ]; then set -- "$@" "-v$since"          ; fi
 if [ -n "$desc"                ]; then set -- "$@" "-C$desc"           ; fi
 
 if [ x$noclean != xtrue ]; then
-       withecho $rootcommand debian/rules clean
+       withecho $rootcommand debian/rules clean $archlist
 fi
 if [ x$binaryonly = x ]; then
        cd ..; withecho dpkg-source -b "$dirn"; cd "$dirn"
 fi
-withecho debian/rules build
-withecho $rootcommand debian/rules $binarytarget
+withecho debian/rules build $archlist
+withecho $rootcommand debian/rules $binarytarget $archlist
 if [ x$binaryonly = x ]; then
         $signsource "$pv.dsc"
 fi
@@ -177,7 +180,7 @@ fi
 $signchanges "$pva.changes"
 
 if $cleansource; then
-       withecho $rootcommand debian/rules clean
+       withecho $rootcommand debian/rules clean $archlist
 fi
 
 echo "dpkg-buildpackage: $srcmsg"
index 8d58ffe8df98197d86b10bdb9edd591ade39779d..3f296d1d47fad84db426143ae5c105e0089cd2d5 100755 (executable)
@@ -88,10 +88,14 @@ while (@ARGV) {
 }
 
 $arch = $override{Architecture} or do {
+    if (exists $ENV{DEB_HOST_ARCH}) {
+      $arch=$ENV{DEB_HOST_ARCH};
+    } else {
        $arch=`dpkg --print-architecture`;
        $? && &subprocerr("dpkg --print-architecture");
+    }
 };
-$arch =~ s/\n$//;
+chomp $arch;
 
 &parsechangelog;
 &parsecontrolfile;
index cd6ce7c1a49f2b17ce4ed240e1694224a1f52bda..eeb5ba88a5efd47caccff4148577e2ab10d6c542 100644 (file)
@@ -552,6 +552,11 @@ after the package has been built.
 .TP
 .BR -us ", " -uc
 Do not sign the source package or the changelog, respectively.
+.TP
+.BI -a architecture
+Specify the Debian architecture we build for. The architecture of the
+machine we build on is determined automatically, and is also the default
+for the host machine.
 .SH DPKG-DISTADDFILE ARGUMENTS
 .B dpkg-distaddfile
 does not take any non-common options.  It takes three non-option
index cc2994fb8a7f7a417cbc796aab172fcac4945bfa..e61d645802e6e4ce260d20da95da16f0f2ebe761 100755 (executable)
@@ -114,7 +114,13 @@ if (!$remove) {
         
         open(IF,"$filename") || die "$name: read $filename: $!\n";
         $asread='';
-        while(<IF>) { last if m/^START-INFO-DIR-ENTRY$/; }
+        while(<IF>) {
+           m/^START-INFO-DIR-ENTRY$/ && last;
+           m/^INFO-DIR-SECTION (.+)$/ && do {
+               $sectiontitle = $1              unless defined($sectiontitle);
+               $sectionre = '^'.quotemeta($1)  unless defined($sectionre);
+           }
+       }
         while(<IF>) { last if m/^END-INFO-DIR-ENTRY$/; $asread.= $_; }
         close(IF); &checkpipe;
         if ($asread =~ m/(\* *[^:]+: *\([^\)]+\).*\. *.*\n){2,}/) {
@@ -348,7 +354,7 @@ sub ulquit {
 }
 
 sub checkpipe {
-    return if !$pipeit || !$? || $?==0x8D00;
+    return if !$pipeit || !$? || $?==0x8D00 || $?==0x0D;
     die "$name: read $filename: $?\n";
 }
 
index 4add41c9df740007787cc50c085cc3522929a44e..e9a9bc4f2977f277296bfccccb8156659492192c 100755 (executable)
@@ -111,14 +111,14 @@ if (open(AF,"$admindir/$name")) {
     while (($version= &gl("version")) ne '') {
         defined($versionnum{$version}) && &badfmt("duplicate path $tver");
        if ( -r $version ) {
-        push(@versions,$version);
-        $versionnum{$version}= $i= $#versions;
-        $priority= &gl("priority");
-        $priority =~ m/^[-+]?\d+$/ || &badfmt("priority $version $priority");
-        $priorities[$i]= $priority;
-        for ($j=0; $j<=$#slavenames; $j++) {
-            $slavepath{$i,$j}= &gl("spath");
-        }
+           push(@versions,$version);
+           $versionnum{$version}= $i= $#versions;
+           $priority= &gl("priority");
+           $priority =~ m/^[-+]?\d+$/ || &badfmt("priority $version $priority");
+           $priorities[$i]= $priority;
+           for ($j=0; $j<=$#slavenames; $j++) {
+               $slavepath{$i,$j}= &gl("spath");
+           }
        } else {
            # File not found - remove
             &pr("Alternative for $name points to $version - which wasn't found.  Removing from list of alternatives.");