]> err.no Git - dpkg/commitdiff
dpkg (1.4.0) unstable; urgency=low (HIGH for new source format)
authorIan Jackson <ian@chiark.greenend.org.uk>
Thu, 12 Sep 1996 00:13:33 +0000 (01:13 +0100)
committerIan Jackson <ian@chiark.greenend.org.uk>
Thu, 12 Sep 1996 00:13:33 +0000 (01:13 +0100)
  * Corrected buffer overrun when dpkg-deb generates filename.  (Bug#4467.)
  * dpkg-shlibdeps works with DEBIAN/shlibs (thanks Heiko Schlittermann).
  * Added libm.so.5 to shlibs.default for i386/m68k.

  * Split binary package into two: dpkg and dpkg-dev.
  * dpkg-source(1) documents mode and ownership setting during extraction.

  * dpkg-scanpackages moved to /usr/bin.
  * Include /usr/bin/dpkg-deb, not dpkg-deb.dist; don't rename in scripts.
  * Copyright file changed slightly.
  * debian-changelog-mode uses magic key substitution strings.  (Bug#4419.)
  * Changed email address in control file to <ian@chiark.greenend.org.uk>.
  * Manuals and own Standards-Version: updated to 2.1.1.0.

 -- Ian Jackson <ian@chiark.greenend.org.uk>  Thu, 12 Sep 1996 01:13:33 +0100

20 files changed:
Makefile.in
debian/changelog
debian/control
debian/copyright
debian/dev-README [new file with mode: 0644]
debian/postinst
debian/prerm [changed mode: 0644->0755]
debian/rules
debian/shlibs.default.i386
doc/changelog
doc/manuals-version
doc/policy.sgml
doc/programmer.sgml
dpkg-deb/build.c
lib/Makefile.in
scripts/Makefile.in
scripts/debian-changelog-mode.el
scripts/dpkg-shlibdeps.pl
scripts/dpkg-source.1
version.h

index 062c5bd61f41599875e69766286b5fd7a5779d8d..b69f3fcb8a1b57723888cabfb550d15954a71df9 100644 (file)
@@ -22,7 +22,7 @@ prefix = @prefix@
 exec_prefix = $(prefix)
 docdir = $(prefix)/doc
 devdocdir = $(docdir)/dpkg
-copyingfile = $(docdir)/copyright/dpkg
+copyingfile = $(docdir)/dpkg/copyright
 infodir = $(prefix)/info
 bindir = $(exec_prefix)/bin
 sbindir = $(exec_prefix)/sbin
index 3de336564205b4d20955b240bd24579a74122ce9..c0ccf5fb8db534b4ec7d4e411651557b2df4cad8 100644 (file)
@@ -1,3 +1,21 @@
+dpkg (1.4.0) unstable; urgency=low (HIGH for new source format)
+
+  * Corrected buffer overrun when dpkg-deb generates filename.  (Bug#4467.)
+  * dpkg-shlibdeps works with DEBIAN/shlibs (thanks Heiko Schlittermann).
+  * Added libm.so.5 to shlibs.default for i386/m68k.
+
+  * Split binary package into two: dpkg and dpkg-dev.
+  * dpkg-source(1) documents mode and ownership setting during extraction.
+
+  * dpkg-scanpackages moved to /usr/bin.
+  * Include /usr/bin/dpkg-deb, not dpkg-deb.dist; don't rename in scripts.
+  * Copyright file changed slightly.
+  * debian-changelog-mode uses magic key substitution strings.  (Bug#4419.)
+  * Changed email address in control file to <ian@chiark.greenend.org.uk>.
+  * Manuals and own Standards-Version: updated to 2.1.1.0.
+
+ -- Ian Jackson <ian@chiark.greenend.org.uk>  Thu, 12 Sep 1996 01:13:33 +0100
+
 dpkg (1.3.14) unstable; urgency=low
 
   * dpkg-buildpackage new -tc (clean source tree) option.
index e6da27bc76870c917583d785c6aada9058edc70c..fdc01ef706de62ecfd651c3e0eb5e385b50cea7c 100644 (file)
@@ -1,16 +1,13 @@
 Source: dpkg
 Section: base
 Priority: required
-Maintainer: Ian Jackson <ian@chiark.chu.cam.ac.uk>
-Standards-Version: 2.0.1.0
+Maintainer: Ian Jackson <ian@chiark.greenend.org.uk>
+Standards-Version: 2.1.0.0
 
 Package: dpkg
 Architecture: any
 Essential: yes
 Pre-Depends: ${shlibs:Pre-Depends}
-Suggests: cpio (>= 2.4.2-2), patch
-Conflicts: dpkgname
-Replaces: dpkgname
 Description: Package maintenance system for Debian Linux
  This package contains the programs which handle the installation and
  removal of packages on your system.
@@ -19,5 +16,24 @@ Description: Package maintenance system for Debian Linux
  a more low-level and less user-friendly interface is available in
  the form of the `dpkg' command.
  .
- In order to manipulate source packages using `dpkg-source' you will
- need to install the `cpio' and `patch' packages.
+ In order to unpack and build Debian source packages you will need to
+ install the developers' package `dpkg-dev' as well as this one.
+
+Package: dpkg-dev
+Section: devel
+Priority: important
+Architecture: all
+Recommends: cpio (>= 2.4.2-2), patch
+Conflicts: dpkgname
+Replaces: dpkgname, dpkg (<< 1.4.0)
+Description: Package building tools for Debian Linux
+ 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.
+ .
+ `cpio' and `patch' are also required to manipulate source packages.
+ Some older cpios are insufficient - use at least 2.4.2-2.
+ .
+ Most Debian source packages will require additional tools to build -
+ for example, most packages need the `make' and the C compiler `gcc'.
index 6f29f5164d76c40fd7b717cb8deef6f0a53e8809..fe0baf1e91cb2f10ea9ddc5b29f2e25f33c5c1ec 100644 (file)
@@ -1,9 +1,11 @@
 This is Debian Linux's package maintenance system.
 
-For an example of how to construct packages see the `hello' package
-which is part of Debian.
+To build your own packages install the `dpkg-dev' package and read the
+manuals which it installs in /usr/doc/dpkg and look at the `hello'
+example package.
 
-Copyright (C) 1994,1995,1996 Ian Jackson <iwj10@cus.cam.ac.uk>
+
+Copyright (C) 1994,1995,1996 Ian Jackson <ian@chiark.chu.cam.ac.uk>
 Copyright (C) 1995,1996 Erick Branderhorst <branderhorst@heel.fgg.eur.nl>
 Copyright (C) 1996 Miquel van Smoorenburg <miquels@cistron.nl>
 Copyright (C) 1996 Kim-Minh Kaplan <kkaplan@cdfhp3.in2p3.fr>
diff --git a/debian/dev-README b/debian/dev-README
new file mode 100644 (file)
index 0000000..9c9df84
--- /dev/null
@@ -0,0 +1,2 @@
+All dpkg documentation in /usr/doc, including the developers'
+information which comes in the dpkg-dev package, is in /usr/doc/dpkg.
index 545c24b9f2fa25adfd424ffae1bdd9c6319c8d3d..ff2566925455c93d0ba61d39bb130c99d2288e73 100755 (executable)
@@ -116,9 +116,7 @@ then
        touch diversions
 fi
 
-cd /usr/bin
-if test dpkg-deb.dist -ef dpkg-deb; then rm dpkg-deb.dist; fi
-if test -f dpkg-deb.dist; then mv dpkg-deb.dist dpkg-deb; fi
+rm -f /usr/bin/dpkg-deb.dist
 
 if test -d /DEBIAN
 then
old mode 100644 (file)
new mode 100755 (executable)
index 59a6067..0da7a2d
@@ -1,9 +1,8 @@
-#!/bin/sh -
+#!/bin/sh
 
 set -e
 
 cd /usr/bin
-test -f dpkg-deb.dist || ln dpkg-deb dpkg-deb.dist
 
 install-info --quiet --remove /usr/info/Guidelines
 install-info --quiet --remove /usr/info/debian-guidelines
index 6774a7f0453632b6bc297284c37baf715caec82c..82ab3d3a712105f53653c563cbe82222623ae831 100755 (executable)
@@ -3,7 +3,7 @@
 DIR:=$(shell pwd)
 
 arch=$(shell dpkg --print-architecture)
-cidir=debian/tmp/DEBIAN
+mcidir=debian/tmp-main/DEBIAN
 
 build:
        $(checkdir)
@@ -21,57 +21,74 @@ clean:
 
 binary:                binary-arch binary-indep
 
-binary-indep:  build
+binary-trees:  checkroot build
        $(checkdir)
-       set -e -x; cd doc; for f in policy programmer; do \
-               debiandoc2ps -pa4 -O $$f.sgml | gzip -9v >../../$$f.ps.gz; \
-               dpkg-distaddfile -f../debian/files $$f.ps.gz byhand -; \
-               GZIP=-9v tar zcf ../../$$f.html.tar.gz $$f.html; \
-               dpkg-distaddfile -f../debian/files $$f.html.tar.gz byhand -; \
-       done
-
-binary-arch:   checkroot build
-       $(checkdir)
-       -rm -rf debian/tmp
-       install -d debian/tmp debian/tmp/DEBIAN debian/tmp/etc/dpkg
-       install -d debian/tmp/usr/doc/{copyright,dpkg}
+       -rm -rf 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}
        set -e; if [ $(arch) = i386 ]; then \
-               sed -e 's/^# i386elf: //' <debian/preinst >$(cidir)/preinst ; \
+               sed -e 's/^# i386elf: //' <debian/preinst >$(mcidir)/preinst ; \
        else \
-               sed -e '/^# i386elf: /d' debian/preinst >$(cidir)/preinst ; \
+               sed -e '/^# i386elf: /d' debian/preinst >$(mcidir)/preinst ; \
        fi
        set -e; if [ -f debian/shlibs.default.$(arch) ]; then \
-               echo /etc/dpkg/shlibs.default >$(cidir)/conffiles ; \
-               cp debian/shlibs.default.$(arch) debian/tmp/etc/dpkg/shlibs.default ; \
+               echo /etc/dpkg/shlibs.default >debian/tmp-dev/DEBIAN/conffiles ; \
+               cp debian/shlibs.default.$(arch) \
+                       debian/tmp-dev/etc/dpkg/shlibs.default ; \
        fi
-       cp debian/{prerm,postinst} $(cidir)/.
-       chmod +x $(cidir)/{postinst,prerm,preinst}
-       $(MAKE) prefix=$(DIR)/debian/tmp/usr \
-               datadir=$(DIR)/debian/tmp/var/lib/dpkg \
-               etcdir=$(DIR)/debian/tmp/etc \
+       cp debian/{prerm,postinst} $(mcidir)/.
+       chmod +x $(mcidir)/{postinst,prerm,preinst}
+       $(MAKE) prefix=$(DIR)/debian/tmp-main/usr \
+               datadir=$(DIR)/debian/tmp-main/var/lib/dpkg \
+               etcdir=$(DIR)/debian/tmp-main/etc \
                install
-       find debian/tmp/usr/man -type f | xargs gzip -9v
+       find debian/tmp-main/usr/man -type f | xargs gzip -9v
        set -e; for f in dpkg-buildpackage dpkg-gencontrol dpkg-distaddfile \
                  dpkg-parsechangelog dpkg-genchanges dpkg-shlibdeps; do \
-               rm debian/tmp/usr/man/man1/$$f.1; \
-               ln -s dpkg-source.1.gz debian/tmp/usr/man/man1/$$f.1.gz ; \
+               rm debian/tmp-main/usr/man/man1/$$f.1; \
+               ln -s dpkg-source.1.gz debian/tmp-main/usr/man/man1/$$f.1.gz ; \
        done
-       gzip -9v debian/tmp/usr/doc/dpkg/changelog.*
-       cp debian/copyright debian/tmp/usr/doc/dpkg/copyright
-       cp TODO debian/tmp/usr/doc/dpkg/WISHLIST
-       touch debian/tmp/var/lib/dpkg/{status,available}
+       gzip -9v 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
+       cp debian/dev-README debian/tmp-dev/usr/doc/dpkg-dev/README
+       cp TODO debian/tmp-dev/usr/doc/dpkg/WISHLIST
+       set -e; for f in \
+ usr/doc/dpkg/{programmer.html,policy.html,developer-keys.pgp,changelog.manuals.gz} \
+ usr/bin/dpkg-{source,genchanges,gencontrol,shlibdeps,buildpackage,parsechangelog} \
+ usr/bin/{dpkg-distaddfile,822-date,dpkg-scanpackages} \
+ usr/man/man1/dpkg-{source,genchanges,gencontrol,shlibdeps,buildpackage}.1.gz \
+ usr/man/man1/{dpkg-parsechangelog,dpkg-distaddfile,822-date}.1.gz \
+ usr/man/man5 usr/man/man8/dpkg-scanpackages.8.gz usr/lib/emacs \
+ usr/lib/dpkg/parsechangelog usr/lib/dpkg/controllib.pl \
+               ; do mv debian/tmp-main/$$f debian/tmp-dev/$$f; done
+
+binary-indep:  checkroot build binary-trees
+       $(checkdir)
+       dpkg-gencontrol -pdpkg-dev -Pdebian/tmp-dev
+       chown -R root.root debian/tmp-dev
+       chmod -R g-ws,a+r,u+w debian/tmp-dev
+       dpkg-deb --build debian/tmp-dev ..
+       set -e -x; cd doc; for f in policy programmer; do \
+               debiandoc2ps -pa4 -O $$f.sgml | gzip -9v >../../$$f.ps.gz; \
+               dpkg-distaddfile -f../debian/files $$f.ps.gz byhand -; \
+               GZIP=-9v tar zcf ../../$$f.html.tar.gz $$f.html; \
+               dpkg-distaddfile -f../debian/files $$f.html.tar.gz byhand -; \
+       done
+
+binary-arch:   checkroot build binary-trees
+       touch debian/tmp-main/var/lib/dpkg/{status,available}
        dpkg-shlibdeps -dPre-Depends main/dpkg dselect/dselect
-       dpkg-gencontrol
-       chown -R root.root debian/tmp
-       chmod -R g-ws,a+r,u+w debian/tmp
-       set -e; cd debian/tmp; \
+       dpkg-gencontrol -pdpkg -Pdebian/tmp-main
+       chown -R root.root debian/tmp-main
+       chmod -R g-ws,a+r,u+w debian/tmp-main
+       set -e; cd debian/tmp-main; \
         version=`sed -n 's/^Version: //p' DEBIAN/control`; \
         file=dpkg_$${version}_$(arch).nondebbin.tar; \
         tar cf ../../../$${file} usr var && gzip -9vf ../../../$${file}; \
         cd ../..; dpkg-distaddfile $${file}.gz byhand -
-       mv debian/tmp/usr/bin/dpkg-deb{,.dist}
-       rm debian/tmp/var/lib/dpkg/{status,available}
-       dpkg-deb --build debian/tmp ..
+       rm debian/tmp-main/var/lib/dpkg/{status,available}
+       dpkg-deb --build debian/tmp-main ..
 
 define checkdir
        test -f include/dpkg.h
index ab18adb89805b1642c0c9783ea3a330beab12b89..10591b27025450f47f049e3e34544199b3c7ba73 100644 (file)
@@ -1,4 +1,5 @@
 libc 5         libc5 (>= 5.2.18)
+libm 5         libc5 (>= 5.2.18)
 libncurses 3.0 ncurses3.0
 libICE 6       elf-x11r6lib
 libPEX5        6       elf-x11r6lib
index 221503fb4d825ba6261f2188def8f9f88270a642..c16a1edba6ce9952b61d348a7cec332bbf634182 100644 (file)
@@ -1,3 +1,19 @@
+debian-manuals (2.1.1.0) unstable;
+
+  * Hard links are forbidden in source packages (they didn't work anyway,
+    and can't easily be made to work reliably).
+  * Do not use dpkg-divert or update-alternatives without consultation.
+
+  * Do not need to declare dependencies on Essential packages.
+  * Restrictions on Pre-Depends stated in policy manual.
+  * debian/substvars file is now almost always auto-generated.
+  * Shared libraries must be installed stripped.
+  * Essential and Pre-Depends put together in policy manual.
+
+  * Explained component-wise (file-wise) vs. package-wise dependencies.
+
+ -- Ian Jackson <ian@chiark.greenend.org.uk>  Thu, 12 Sep 1996 01:00:41 +0100
+
 debian-manuals (2.1.0.0) unstable;
 
   * Upstream changelog must be installed too (was just recommended).
index 2b48fbfc781ea175ce4fb406e8c38b9d42736dc7..1020fd06f9c22bcf9882a1a46a9c07421f01a7e1 100644 (file)
@@ -1,2 +1,2 @@
-<!entity manuals-version "2.1.0.0">
-<!entity dpkg-version "1.3.14">
+<!entity manuals-version "2.1.1.0">
+<!entity dpkg-version "1.4.0">
index 8938f69a77491b979fc5f97473fddaa2a0c873cd..112d51d305a39274065599cd3d5faaecb1a4e03f 100644 (file)
@@ -224,11 +224,8 @@ having different forms of their name and address in different
 <p>
 
 Add a dependency for any shared libraries required by
-dynamically-linked executable binaries in your package.  Almost every
-package containing compiled C code should therefore include a
-<tt/Depends/ field which mentions the shared C library required for
-the program to run.  For ELF binaries linked against <tt/libc.so.5/
-the relevant package name is <tt/libc5/.
+dynamically-linked executable binaries in your package, by using
+<prgn/dpkg-shlibdeps/.
 <p>
 
 All packages must use virtual package names where appropriate, and
@@ -333,16 +330,30 @@ installing new packages (perhaps via a network).
 <p>
 
 Most of these packages should have <tt/Priority: required/ or at least
-<tt/Priority: important/.
+<tt/Priority: important/, and many will be essential (see below).
 
-<sect1>The <tt/Essential/ flag
+<sect1><tt/Pre-Depends/ and the <tt/Essential/ flag
 <p>
 
-The <tt/Essential: yes/ control file field should not be used unless
-removing a package really will completely hose the system; nor should
-it be used for a shared library package - the dependencies will
-prevent its premature removal, and we need to be able to remove it
-when it has been superseded.
+Do not use <tt/Pre-Depends/ or <tt/Essential: yes/ unless your package
+is absolutely vital to the functioning of the system and the
+installation of other packages.  Do not do either of these things
+without consultation with the distribution maintainers or on
+<prgn/debian-devel/.
+<p>
+
+Usually, neither of these fields should not be used unless removing a
+package really will completely hose the system, making it impossible
+to recover by (re)installing packages with <prgn/dpkg/.
+<p>
+
+<tt/Essential/ should not be used for a shared library package - the
+dependencies will prevent its premature removal, and we need to be
+able to remove it when it has been superseded.
+<p>
+
+It is not necessary for other packages to declare any dependencies
+they have on other packages which are marked <tt/Essential/.
 
 <sect1>Including <tt/Priority/ and <tt/Section/ in the <tt/.deb/
 control file
@@ -978,6 +989,22 @@ primarily in emacs, it is probably complex enough that speed is an
 issue and should be byte compiled.
 
 
+<sect>Use of <prgn/dpkg-divert/ and <prgn/update-alternatives/
+<p>
+
+Do not use <prgn/dpkg-divert/ on a file belonging to another package
+without consulting the maintainer of that package first.
+<p>
+
+In order for <prgn/update-alternatives/ to work correctly all the
+packages which supply an instance of the `shared' command name (or,
+in general, filename) must use it.  You can use <tt/Conflicts/ to
+force the deinstallation of other packages supplying it which do not
+(yet) use <prgn/update-alternatives/.  It may in this case be
+appropriate to specify a conflict on earlier versions on something -
+this is an exception to the usual rule that this is not allowed.
+
+
 <chapt>Configuring and building the programs in the package
 
 <sect>Compilation options
@@ -992,10 +1019,15 @@ install -s # (or use strip on the files in debian/tmp)
 </example>
 <p>
 
-Note that all installed binaries should be stripped, either by using
-the <tt/-s/ flag to <prgn/install/, or by calling <prgn/strip/ on the
-binaries after they have been copied into <tt>debian/tmp</> but
-before the tree is made into a package.
+Note that all installed binaries and shared libraries should be
+stripped<footnote>Shared libraries can function perfectly well when
+stripped, since the symbols for dynamic linking are in a separate part
+of the ELF object file.</footnote><footnote>Under some circumstances
+it may be useful to install a shared library unstripped, for example
+when building a separate package to support debugging.</footnote>,
+either by using the <tt/-s/ flag to <prgn/install/, or by calling
+<prgn/strip/ on the binaries after they have been copied into
+<tt>debian/tmp</> but before the tree is made into a package.
 <p>
 
 Make sure that you do not link with <tt/-g/, as this makes a.out
index e602647f3e5cc9c867b906effcd1abcbff1443bb..0dcd867b3aa7d278f33f65cf3e64eae987eebbd5 100644 (file)
@@ -1002,11 +1002,13 @@ using the <tt/-V/ option to the source packaging commands, and certain
 predefined variables are available.
 <p>
 
-The file may be a static part of the source archive, or generated and
-modified dynamically by <tt>debian/rules</> targets.  In the latter
-case it must be removed by the <prgn/clean/ target.
+The is usually generated and modified dynamically by
+<tt>debian/rules</> targets; in this case it must be removed by the
+<prgn/clean/ target.
 <p>
 
+
+
 See <manref name=dpkg-source section=1> for full details about source
 variable substitutions, including the format of
 <tt>debian/substvars</>.
@@ -1158,9 +1160,12 @@ using <prgn/dpkg-source/.  In particular, attempting to use
 <sect1>Restrictions on objects in source packages
 <p>
 
-The source package may not contain any device special files, sockets
-or setuid or setgid files.<footnote>Setgid directories are
-allowed.</footnote>
+The source package may not contain any hard links<footnote>This is not
+currently detected when building source packages, but only when
+extracting them.</footnote><footnote>Hard links may be permitted at
+some point in the future, but would require a fair amount of
+work.</footnote>, device special files, sockets or setuid or setgid
+files.<footnote>Setgid directories are allowed.</footnote>
 <p>
 
 The source packaging tools manage the changes between the original and
@@ -2518,6 +2523,15 @@ version clause in the <tt/Pre-Depends/ field.
 
 </taglist>
 
+When selecting which level of dependency to use you should consider
+how important the depended-on package is to the functionality of the
+one declaring the dependency.  Some packages are composed of
+components of varying degrees of importance.  Such a package should
+list using <tt/Depends/ the package(s) which are required by the more
+important components.  The other components' requirements may be
+mentioned as Suggestions or Recommendations, as appropriate to the
+components' relative importance.
+
 <sect1>Dependencies on shared libraries
 <p>
 
index 61f3dd2a36a60de9ff08ecb8c468a47b77083146..277c2ebe8bf844e7679f6a1e183c088a16ff4508 100644 (file)
@@ -124,9 +124,9 @@ void do_build(const char *const *argv) {
 
     if (subdir) {
       versionstring= versiondescribe(&checkedinfo->available.version,vdew_never);
-      m= m_malloc(strlen(debar)+1+strlen(checkedinfo->name)+1+
-                  strlen(versionstring)+sizeof(DEBEXT));
       arch= checkedinfo->available.architecture; if (!arch) arch= "";
+      m= m_malloc(sizeof(DEBEXT)+1+strlen(debar)+1+strlen(checkedinfo->name)+
+                  strlen(versionstring)+1+strlen(arch));
       sprintf(m,"%s/%s_%s%s%s" DEBEXT,debar,checkedinfo->name,versionstring,
               arch[0] ? "_" : "", arch);
       debar= m;
index 076c1ae7ff694583de94d3640cea51b08f941840..50d8dd5e17dafdbdd760ab47594fa44e34182bf4 100644 (file)
@@ -19,7 +19,7 @@ srcdir = @srcdir@
 VPATH = @srcdir@
 
 prefix = @prefix@
-copyingfile = $(prefix)/doc/copyright/dpkg
+copyingfile = $(prefix)/doc/dpkg/copyright
 
 SRC =  ehandle.c mlib.c parse.c parsehelp.c fields.c dump.c nfmalloc.c \
        varbuf.c database.c myopt.c vercmp.c compat.c lock.c dbmodify.c \
index fb60808d23ba9f04751d06fc3fa9e208b235e002..cff87287480038fa32d1857e81aea0b67e3e7019 100644 (file)
@@ -41,11 +41,12 @@ LSMAN = dpkg-source.$(man1)
 LSMANL=        dpkg-gencontrol dpkg-genchanges dpkg-buildpackage \
        dpkg-distaddfile dpkg-parsechangelog dpkg-shlibdeps
 EXC =   dpkg-name dpkg-source dpkg-genchanges dpkg-gencontrol dpkg-shlibdeps \
-       dpkg-buildpackage dpkg-parsechangelog dpkg-distaddfile 822-date
+       dpkg-buildpackage dpkg-parsechangelog dpkg-distaddfile 822-date \
+       dpkg-scanpackages
 MAN8 = update-rc.d start-stop-daemon update-alternatives install-info \
        dpkg-scanpackages
 SBIN = update-rc.d start-stop-daemon update-alternatives install-info \
-       dpkg-scanpackages dpkg-divert cleanup-info
+       dpkg-divert cleanup-info
 LIB =  controllib.pl
 ELISP =        debian-changelog-mode.el
 CHGLGS=        cl-debian
index 9da6c890ad688c86566268d1458e455c6a3bbea7..33af1f1cf67a0534994da646ae12497497d2e611 100644 (file)
 
 (defvar debian-changelog-urgencies
   '((?l."low") (?m."medium") (?h."HIGH"))
-  "alist of keystrokes vs. urgency values debian-changelog-urgency ^c^u.")
+  "alist of keystrokes vs. urgency values for debian-changelog-urgency \\[debian-changelog-urgency].")
 
 (defvar debian-changelog-distributions
   '((?s."stable") (?u."unstable") (?c."contrib") (?n."non-free") (?e."experimental"))
-  "alist of keystrokes vs. distribution values for debian-changelog-distribution ^c^d.")
+  "alist of keystrokes vs. distribution values for debian-changelog-distribution \\[debian-changelog-distribution].")
 
 (defvar debian-changelog-mode-map nil
   "Keymap for Debian changelog major mode.")
@@ -49,7 +49,7 @@
   "Add a new change entry to a debian-style changelog."
   (interactive)
   (if (eq (debian-changelog-finalised-p) t)
-      (error "most recent version has been finalised - use ^c^e or ^c^v"))
+      (error (substitute-command-keys "most recent version has been finalised - use \\[debian-changelog-unfinalise-last-version] or \\[debian-changelog-add-version]")))
   (goto-char (point-min))
   (re-search-forward "\n --")
   (backward-char 5)
index 97b2d5872f8d27cea91d44664ee0610d28818fbd..c2e05b420648a9e8f4a9ce1e5040cf51e1c82c47 100644 (file)
@@ -105,7 +105,7 @@ while (<P>) {
 }
 close(P); $? && subprocerr("dpkg --search");
 
-for ($i=0;$i<=$#libname;$i++) {
+LIB: for ($i=0;$i<=$#libname;$i++) {
     scanshlibsfile($shlibslocal,$libname[$i],$libsoname[$i],$libf[$i]) && next;
     scanshlibsfile($shlibsoverride,$libname[$i],$libsoname[$i],$libf[$i]) && next;
     if (!defined($pathpackages{$libpath[$i]})) {
@@ -115,7 +115,8 @@ for ($i=0;$i<=$#libname;$i++) {
         @packages= split(/, /,$pathpackages{$libpath[$i]});
         for $p (@packages) {
             scanshlibsfile("$shlibsppdir/$p$shlibsppext",
-                           $libname[$i],$libsoname[$i],$libf[$i]) && next;
+                           $libname[$i],$libsoname[$i],$libf[$i])
+                && next LIB;
         }
     }
     scanshlibsfile($shlibsdefault,$libname[$i],$libsoname[$i],$libf[$i]) && next;
index 1046ba2369a42338a84c793490a5496e349b87d5..5147e4dc859e8db4e07dd48b4dc71baf611c035b 100644 (file)
@@ -241,6 +241,14 @@ will read the names of the other file(s) making up the source package
 from the control file; they are assumed to be in the same directory as
 the
 .BR .dsc .
+
+The files in the extracted package will have their permissions and
+ownerships set to those which would have been expected if the files
+and directories had simply been created - directories and executable
+files will be 0777 and plain files will be 0666, both modified by the
+extractors' umask; if the parent directory is setgid then the
+extracted directories will be too, and all the files and directories
+will inherit its group ownership.
 .TP
 .B -b
 Build: pack up a source tree.  One or two non-option arguments should
index 05620543cb1c29360b415032e03268dda60e0f17..a3eacf5b83eac6bf730b65ddb5ff8ec9bbbfc4ae 100644 (file)
--- a/version.h
+++ b/version.h
@@ -1 +1 @@
-#define DPKG_VERSION "1.3.14" /* This line modified by Makefile */
+#define DPKG_VERSION "1.4.0" /* This line modified by Makefile */