[build] Fix the ChangeLog generation rule
The ChangeLog should only be generated by dist-hook and as a temporary file to avoid overwriting the stub we use to direct people to the commit log when cloning the repository. When generated, the ChangeLog should be copied inside the distdir so that the autotools will not freak out.
This commit is contained in:
parent
01cf52c44c
commit
5643a47cb6
61
Makefile.am
61
Makefile.am
@ -41,53 +41,40 @@ EXTRA_DIST = \
|
||||
|
||||
CLEANFILES = $(pcfiles)
|
||||
|
||||
DISTCLEANFILES =
|
||||
DISTCLEANFILES = doltcompile doltlibtool
|
||||
|
||||
DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc --enable-maintainer-flags
|
||||
|
||||
# Extra clean files so that maintainer-clean removes *everything*
|
||||
MAINTAINERCLEANFILES = \
|
||||
aclocal.m4 \
|
||||
compile \
|
||||
config.guess \
|
||||
config.h.in \
|
||||
config.sub \
|
||||
configure \
|
||||
depcomp \
|
||||
gtk-doc.make \
|
||||
install-sh \
|
||||
ltmain.sh \
|
||||
Makefile.in \
|
||||
missing \
|
||||
MAINTAINERCLEANFILES = \
|
||||
aclocal.m4 \
|
||||
compile \
|
||||
config.guess \
|
||||
config.h.in \
|
||||
config.sub \
|
||||
configure \
|
||||
depcomp \
|
||||
gtk-doc.make \
|
||||
install-sh \
|
||||
ltmain.sh \
|
||||
Makefile.in \
|
||||
missing \
|
||||
$(NULL)
|
||||
|
||||
MAINTAINERCLEANFILES += $(srcdir)/ChangeLog
|
||||
|
||||
PREV_RELEASE=$(CLUTTER_MAJOR_VERSION).$$(echo "$(CLUTTER_MINOR_VERSION)-1" | bc)
|
||||
|
||||
CHANGELOGS = ChangeLog
|
||||
|
||||
changelogs:
|
||||
@$(MAKE) $(AM_MAKEFLAGS) $(CHANGELOGS)
|
||||
|
||||
dist-hook: changelogs
|
||||
changelogs="$(CHANGELOGS)"; \
|
||||
for changelog in $$changelogs; \
|
||||
do \
|
||||
cp -f $(srcdir)/$$changelog $(distdir)/ 2>/dev/null || \
|
||||
cp -f $$changelog $(distdir)/; \
|
||||
done
|
||||
|
||||
$(srcdir)/ChangeLog:
|
||||
@if test -d "$(top_srcdir)/.git"; \
|
||||
dist-hook:
|
||||
@if test -d "$(srcdir)/.git"; \
|
||||
then \
|
||||
to=""; \
|
||||
from="$(PREV_RELEASE)"; \
|
||||
echo Creating $@ && \
|
||||
( echo '# Generated by configure. Do no edit.'; echo; \
|
||||
$(top_srcdir)/missing --run perl $(top_srcdir)/build/gen-changelog.pl $$from.0..$$to ) > $@ ; \
|
||||
echo Creating ChangeLog && \
|
||||
( cd "$(top_srcdir)" && \
|
||||
echo '# Generated by configure. Do no edit.'; echo; \
|
||||
$(top_srcdir)/missing --run perl $(top_srcdir)/build/gen-changelog.pl $$from.0..$$to ) > ChangeLog.tmp \
|
||||
&& mv -f ChangeLog.tmp $(top_distdir)/ChangeLog \
|
||||
|| ( rm -f ChangeLog.tmp ; \
|
||||
echo Failed to generate ChangeLog >&2 ); \
|
||||
else \
|
||||
echo A git checkout is required to generate $@; \
|
||||
echo A git checkout is required to generate a ChangeLog >&2; \
|
||||
fi
|
||||
|
||||
.PHONY: changelogs ChangeLog $(srcdir)/ChangeLog
|
||||
|
Loading…
Reference in New Issue
Block a user