@@ -97,9 +97,14 @@ printenv:
printchanges:
@baseCommit=$$(git log --pretty=format:'%H %s' | \
- gawk '/UBUNTU: '".*Ubuntu-`echo $(prev_fullver) | sed 's/+/\\\\+/'`"'$$/ { print $$1; exit }'); \
- git log "$$baseCommit"..HEAD | \
- $(DROOT)/scripts/misc/git-ubuntu-log $(ubuntu_log_opts)
+ gawk '/UBUNTU: '".*Ubuntu-.*`echo $(prev_fullver) | sed 's/+/\\\\+/'`"'(~.*)?$$/ { print $$1; exit }'); \
+ if [ -z "$$baseCommit" ]; then \
+ echo "WARNING: couldn't find a commit for the previous version. Using the lastest one." >&2; \
+ baseCommit=$$(git log --pretty=format:'%H %s' | \
+ gawk '/UBUNTU:\s*Ubuntu-.*$$/ { print $$1; exit }'); \
+ fi; \
+ git log "$$baseCommit"..HEAD | \
+ $(DROOT)/scripts/misc/git-ubuntu-log $(ubuntu_log_opts)
insertchanges: autoreconstruct
@perl -w -f $(DROOT)/scripts/misc/insert-changes.pl $(DROOT) $(DEBIAN)
Ignore: yes Currently printchanges/insertchanges do not work for custom kernels because commit messages for each release follow the format "UBUNTU: Ubuntu-${flavour}-${prev_fullver}" instead of "UBUNTU: Ubuntu-${prev_fullver}". Also, for the first release, the previous version in the changelog does not match the version in the previous release commit. This patch makes the base commit selection more flexible, allowing commit messages in the format "UBUNTU: Ubuntu-*${prev_fullver}" and it fallbacks to the latest release commit when a exact match is not found in order to support the custom kernels in their initial releases. Signed-off-by: Marcelo Henrique Cerri <marcelo.cerri@canonical.com> --- debian/rules.d/1-maintainer.mk | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-)