Your message dated Mon, 31 Mar 2008 17:07:47 +0200
with message-id <[EMAIL PROTECTED]>
and subject line Re: Bug#451476: cdbs: DEB_INSTALL_CHANGELOGS_curpkg doesn't 
override DEB_INSTALL_CHANGELOGS_ALL
has caused the Debian Bug report #451476,
regarding cdbs: DEB_INSTALL_CHANGELOGS_curpkg doesn't override 
DEB_INSTALL_CHANGELOGS_ALL
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [EMAIL PROTECTED]
immediately.)


-- 
451476: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=451476
Debian Bug Tracking System
Contact [EMAIL PROTECTED] with problems
--- Begin Message ---
Package: cdbs
Version: 0.4.50
Severity: minor
Tags: patch

While packaging libvncserver, I ran into the problem of the upstream source 
having multiple different changelogs for several components.  While most of 
the packages use the changelog specified in the default 
DEB_INSTALL_CHANGELOGS_ALL (which is ChangeLog), for some packages I define 
DEB_INSTALL_CHANGELOGS_foo = foo/ChangeLog.  However, the resulting 
package "foo" does not seem to respect DEB_INSTALL_CHANGELOGS_foo and 
contains changelog from DEB_INSTALL_CHANGELOGS_ALL.

Attached is a patch against rules/debhelper.mk that makes it install 
DEB_INSTALL_CHANGELOGS_foo for packages that define it, and 
DEB_INSTALL_CHANGELOGS_ALL for the rest.  The patch also makes it not assign 
the default changelog files to DEB_INSTALL_CHANGELOGS_ALL if it was already 
defined in debian/rules.

To make your lives easier, I've also included a version of the patch that 
doesn't conflict with the patch from #451226.

--- System information. ---
Architecture: i386
Kernel:       Linux 2.6.22-2-k7

Debian Release: lenny/sid
  800 testing         security.debian.org 
  800 testing         ftp.us.debian.org 
  700 unstable        ftp.us.debian.org 

--- Package information. ---
Depends         (Version) | Installed
=========================-+-============
debhelper     (>= 5.0.30) | 5.0.60

--- debhelper.mk.orig	2007-11-16 02:48:07.987481414 -0500
+++ debhelper.mk	2007-11-16 02:53:30.497892025 -0500
@@ -97,7 +97,7 @@
 is_debug_package=$(if $(patsubst %-dbg,,$(cdbs_curpkg)),,yes)
 
 DEB_INSTALL_DIRS_ALL =
-DEB_INSTALL_CHANGELOGS_ALL = $(if $(DEB_ISNATIVE),,$(shell for f in ChangeLog Changelog Changes CHANGES changelog; do if test -s $(DEB_SRCDIR)/$$f; then echo $(DEB_SRCDIR)/$$f; break; fi; done))
+DEB_INSTALL_CHANGELOGS_ALL ?= $(if $(DEB_ISNATIVE),,$(shell for f in ChangeLog Changelog Changes CHANGES changelog; do if test -s $(DEB_SRCDIR)/$$f; then echo $(DEB_SRCDIR)/$$f; break; fi; done))
 DEB_INSTALL_DOCS_ALL = $(filter-out $(DEB_INSTALL_CHANGELOGS_ALL),$(shell for f in README NEWS TODO BUGS AUTHORS THANKS; do if test -s $(DEB_SRCDIR)/$$f; then echo $(DEB_SRCDIR)/$$f; fi; done))
 
 cdbs_add_dashx = $(foreach i,$(1),$(patsubst %,-X %,$(i)))
@@ -168,7 +168,11 @@
 	dh_installlogrotate -p$(cdbs_curpkg) $(DEB_DH_INSTALLLOGROTATE_ARGS)
 	dh_installlogcheck -p$(cdbs_curpkg) $(DEB_DH_INSTALLLOGCHECK_ARGS)
 	dh_installmime -p$(cdbs_curpkg) $(DEB_DH_INSTALLMIME_ARGS)
-	dh_installchangelogs -p$(cdbs_curpkg) $(DEB_DH_INSTALLCHANGELOGS_ARGS) $(DEB_INSTALL_CHANGELOGS_ALL) $(DEB_INSTALL_CHANGELOGS_$(cdbs_curpkg))
+	ifdef DEB_INSTALL_CHANGELOGS_$(cdbs_curpkg)
+	dh_installchangelogs -p$(cdbs_curpkg) $(DEB_DH_INSTALLCHANGELOGS_ARGS) $(DEB_INSTALL_CHANGELOGS_$(cdbs_curpkg))
+	else
+	dh_installchangelogs -p$(cdbs_curpkg) $(DEB_DH_INSTALLCHANGELOGS_ARGS) $(DEB_INSTALL_CHANGELOGS_ALL)
+	endif
 	$(if $(wildcard /usr/bin/dh_installudev),dh_installudev -p$(cdbs_curpkg) $(DEB_DH_INSTALLUDEV_ARGS))
 	dh_install -p$(cdbs_curpkg) $(if $(DEB_DH_INSTALL_SOURCEDIR),--sourcedir=$(DEB_DH_INSTALL_SOURCEDIR)) $(DEB_DH_INSTALL_ARGS)
 	dh_link -p$(cdbs_curpkg) $(DEB_DH_LINK_ARGS) $(DEB_DH_LINK_$(cdbs_curpkg))
--- debhelper.mk.orig	2007-11-16 02:57:09.504961000 -0500
+++ debhelper.mk	2007-11-16 02:59:36.509707794 -0500
@@ -97,7 +97,7 @@
 is_debug_package=$(if $(patsubst %-dbg,,$(cdbs_curpkg)),,yes)
 
 DEB_INSTALL_DIRS_ALL =
-DEB_INSTALL_CHANGELOGS_ALL = $(if $(DEB_ISNATIVE),,$(shell for d in $(DEB_SRCDIR) .; do for f in ChangeLog Changelog Changes CHANGES changelog; do if test -s $$d/$$f; then echo $$d/$$f; break 2; fi; done; done))
+DEB_INSTALL_CHANGELOGS_ALL ?= $(if $(DEB_ISNATIVE),,$(shell for d in $(DEB_SRCDIR) .; do for f in ChangeLog Changelog Changes CHANGES changelog; do if test -s $$d/$$f; then echo $$d/$$f; break 2; fi; done; done))
 DEB_INSTALL_DOCS_ALL = $(filter-out $(DEB_INSTALL_CHANGELOGS_ALL),$(shell for f in README NEWS TODO BUGS AUTHORS THANKS; do if test -s $(DEB_SRCDIR)/$$f; then echo $(DEB_SRCDIR)/$$f; elif test -s ./$$f; then echo ./$$f; fi; done))
 
 cdbs_add_dashx = $(foreach i,$(1),$(patsubst %,-X %,$(i)))
@@ -168,7 +168,11 @@
 	dh_installlogrotate -p$(cdbs_curpkg) $(DEB_DH_INSTALLLOGROTATE_ARGS)
 	dh_installlogcheck -p$(cdbs_curpkg) $(DEB_DH_INSTALLLOGCHECK_ARGS)
 	dh_installmime -p$(cdbs_curpkg) $(DEB_DH_INSTALLMIME_ARGS)
-	dh_installchangelogs -p$(cdbs_curpkg) $(DEB_DH_INSTALLCHANGELOGS_ARGS) $(DEB_INSTALL_CHANGELOGS_ALL) $(DEB_INSTALL_CHANGELOGS_$(cdbs_curpkg))
+	ifdef DEB_INSTALL_CHANGELOGS_$(cdbs_curpkg)
+	dh_installchangelogs -p$(cdbs_curpkg) $(DEB_DH_INSTALLCHANGELOGS_ARGS) $(DEB_INSTALL_CHANGELOGS_$(cdbs_curpkg))
+	else
+	dh_installchangelogs -p$(cdbs_curpkg) $(DEB_DH_INSTALLCHANGELOGS_ARGS) $(DEB_INSTALL_CHANGELOGS_ALL)
+	endif
 	$(if $(wildcard /usr/bin/dh_installudev),dh_installudev -p$(cdbs_curpkg) $(DEB_DH_INSTALLUDEV_ARGS))
 	dh_install -p$(cdbs_curpkg) $(if $(DEB_DH_INSTALL_SOURCEDIR),--sourcedir=$(DEB_DH_INSTALL_SOURCEDIR)) $(DEB_DH_INSTALL_ARGS)
 	dh_link -p$(cdbs_curpkg) $(DEB_DH_LINK_ARGS) $(DEB_DH_LINK_$(cdbs_curpkg))

Attachment: signature.asc
Description: This is a digitally signed message part.


--- End Message ---
--- Begin Message ---
This is not a bug.  This is how all the variables work: DEB_*_package for a
specific package, DEB_*_ALL for all packages.  What you want is something for
all packages that don't have a package-specific value set, but that seems
awfully particular.  You can set that yourself, such as

DEB_INSTALL_CHANGELOGS_ALL = $(if 
$(DEB_INSTALL_CHANGELOGS_$(cdbs_curpkg)),,Changelog.default)

I am not going to add anything like that to cdbs at this time, because it is
very specific.  If you can show that dozens of packages need a mechanism like
this, we can consider a more general design.


--- End Message ---

Reply via email to