Bug#51855: dpkg (source): [patch] doc/manuals-version
Package: dpkg
Version: 1.6.1
Severity: normal
I got this while building dpkg:
> make[2]: Entering directory `/home/kalle/i386-pc-linux-gnu/Build/Debian/dpkg-1.6.1/build/doc'
> v=`sed -ne 1s/.*(\(.*\)).*/\1/ /home/kalle/i386-pc-linux-gnu/Build/Debian/dpkg-1.6.1/doc/ChangeLog` ; \
> echo "<!entity manuals-version \"$v)\">" > manuals-version
> /bin/sh: command substitution: line 1: syntax error near unexpected token `1s/.*(\'
> /bin/sh: command substitution: line 1: `sed -ne 1s/.*(\(.*\)).*/\1/ /home/kalle/i386-pc-linux-gnu/Build/Debian/dpkg-1.6.1/doc/ChangeLog'
> echo "<!entity dpkg-version \"1.6\">" >> manuals-version
and manuals-version became defined as just ")".
The following patch fixes three bugs:
* \() characters must be protected with quotes
(that's why the shell complained above),
* sed never printed anything,
* extra parenthesis in manuals-version.
With the patch, manuals-version is properly defined as "2.1.2.3".
--- dpkg-1.6.1/doc/Makefile.in.orig Wed Dec 1 14:16:37 1999
+++ dpkg-1.6.1/doc/Makefile.in Wed Dec 1 14:40:09 1999
@@ -20,8 +20,8 @@
install: install-doc
manuals-version: $(top_srcdir)/version-nr
- v=`sed -ne 1s/.*(\(.*\)).*/\1/ $(srcdir)/ChangeLog` ; \
- echo "<!entity manuals-version \"$$v)\">" > $@
+ v=`sed -ne '1s/.*(\(.*\)).*/\1/p' $(srcdir)/ChangeLog` ; \
+ echo "<!entity manuals-version \"$$v\">" > $@
echo "<!entity dpkg-version \"$(VERSION)\">" >> $@
internals.html: internals.sgml manuals-version
-- System Information
Debian Release: potato
Kernel Version: Linux PC486 2.2.13 #2 ma marras 8 18:45:09 EET 1999 i486 unknown
Versions of the packages dpkg depends on:
ii libc6 2.1.2-2 GNU C Library: Shared libraries and timezone
ii libncurses4 4.2-3.4 Shared libraries for terminal handling
Reply to: