On Mon, Mar 15, 2004 at 12:04:07AM -0800, Daniel Schepler wrote: > Package: xfree86 > Severity: minor > Version: 4.3.0-5 > > When I was trying to build a custom version of xfree86 using > IGNORE_MANIFEST_CHANGES, it didn't work. The problem appears to be > that the diff command is returning an exit code of 1 when it finds > changes, and since dbs sets SHELL to "/bin/sh -e", the rest of the > command never gets reached. In fact, adding "|| true" after the diff > command fixed the problem. So might adding `|| test "$$?" = 1' > instead, but I haven't tested that one. Thanks for the report! I am testing the following patch: Index: debian/rules =================================================================== --- debian/rules (revision 1144) +++ debian/rules (working copy) @@ -334,15 +334,22 @@ # confirm that the installed file list has not changed if [ -e debian/MANIFEST.$(ARCH) ]; then \ if ! cmp -s debian/MANIFEST.$(ARCH) debian/MANIFEST.$(ARCH).new; then \ - diff -U 0 debian/MANIFEST.$(ARCH) debian/MANIFEST.$(ARCH).new; \ - if [ -n "$$IGNORE_MANIFEST_CHANGES" ]; then \ - echo 'MANIFEST check failed; ignoring problem because \$$IGNORE_MANIFEST_CHANGES set' >&2; \ - echo 'Please ensure that the package maintainer has an up-to-date version of the' >&2; \ - echo 'MANIFEST.$(ARCH) file.' >&2; \ - $(ELSE) \ - echo 'MANIFEST check failed; please see debian/README' >&2; \ - exit 1; \ - fi; \ + diff -U 0 debian/MANIFEST.$(ARCH) debian/MANIFEST.$(ARCH).new || DIFFSTATUS=$$?; \ + case $${DIFFSTATUS:-0} in \ + 0) ;; \ + 1) if [ -n "$$IGNORE_MANIFEST_CHANGES" ]; then \ + echo 'MANIFEST check failed; ignoring problem because \$$IGNORE_MANIFEST_CHANGES set' >&2; \ + echo 'Please ensure that the package maintainer has an up-to-date version of the' >&2; \ + echo 'MANIFEST.$(ARCH) file.' >&2; \ + $(ELSE) \ + echo 'MANIFEST check failed; please see debian/README' >&2; \ + exit 1; \ + fi; \ + ;; \ + *) echo "diff reported unexpected exit status $$DIFFSTATUS when performing MANIFEST check" >&2; \ + exit 1; \ + ;; \ + esac; \ fi; \ fi; else -- G. Branden Robinson | Psychology is really biology. Debian GNU/Linux | Biology is really chemistry. branden@debian.org | Chemistry is really physics. http://people.debian.org/~branden/ | Physics is really math.
Attachment:
signature.asc
Description: Digital signature