# -*-Makefile-*- # This Makefile fragment is shared between fileutils, sh-utils, textutils. maintainer-check: if head ChangeLog| grep 'Version $(VERSION)' > /dev/null; then \ :; \ else \ echo "$(VERSION) not in ChangeLog; not tagging" 1>&2; \ exit 1; \ fi $(MAKE) distcheck # $(MAKE) my-distcheck # Tag before making distribution. Also, don't make a distribution if # checks fail. Also, make sure the NEWS file is up-to-date. # FIXME: use dist-hook/my-dist like distcheck-hook/my-distcheck. cvs-dist: maintainer-check pkg=`echo "$(PACKAGE)" | tr a-z A-Z`; \ ver=`echo "$(VERSION)" | sed 's/\./_/g'`; \ tag="$$pkg-$$ver"; \ echo tag=$$tag; \ if cvs -n log -h README| grep -e $$tag: > /dev/null; then \ echo "VERSION not new; not tagging" 1>&2; \ exit 1; \ fi; \ cvs update po; \ cvs tag -c $$tag $(MAKE) dist t=./=test my-distcheck: -rm -rf $(t) mkdir $(t) GZIP=$(GZIP) $(TAR) -C $(t) -zxf $(distdir).tar.gz cd $(t)/$(distdir) \ && ./configure --with-gd=no --with-png=no --with-lisp-files --with-tutorial \ && $(MAKE) CFLAGS='-Wformat -Werror' \ && $(MAKE) dvi \ && $(MAKE) check \ && $(MAKE) distclean cd $(t) && mv $(distdir) $(distdir).old \ && $(TAR) -zxf ../$(distdir).tar.gz diff -ur $(t)/$(distdir).old $(t)/$(distdir) -rm -rf $(t) @echo "========================"; \ echo "$(distdir).tar.gz is ready for distribution"; \ echo "========================" THIS_VERSION_REGEXP = $(subst .,\.,$(VERSION)) # FIXME: this works only for Gnits-style test releases. PREV_VERSION := $(shell echo $(VERSION)|tr a-z Xa-y) PREV_VERSION_REGEXP := $(shell echo $(PREV_VERSION)|sed 's/\./\\./g') v = Version url-host-prefix = ftp://ftp.ucc.ie/ url = $(url-host-prefix)/pub/gnuplot/$(distdir).tar.gz md5 = $(shell md5sum < $(distdir).tar.gz|sed 's/ -//') rel-check: tarz=/tmp/rel-check-tarz-$$$$; \ md5_tmp=/tmp/rel-check-md5-$$$$; \ set -e; \ trap 'status=$$?; rm -f $$tarz $$md5_tmp; exit $$status' 0 1 2 3 15; \ wget -q --output-document=$$tarz $(url); \ echo "$(md5) -" > $$md5_tmp; \ md5sum -c $$md5_tmp < $$tarz announcement: NEWS ChangeLog $(distdir).tar.gz @( \ echo Subject: $(distdir) released; \ echo; \ echo FIXME: put comments here; \ echo; \ echo " $(url)"; \ echo; \ echo "$(md5) $(distdir).tar.gz"; \ echo; \ echo NEWS:; \ sed -n "/$(THIS_VERSION_REGEXP)/,/$(PREV_VERSION_REGEXP)/p" NEWS \ | grep -v '^\['; \ echo; \ echo ChangeLog entries:; \ sed -n "1,/$v $(PREV_VERSION_REGEXP)/p" \ ChangeLog; \ ) alpha: $(MAKE) cvs-dist $(MAKE) -s announcement > /tmp/announcement ln $(distdir).tar.gz ../release chmod a-w $(distdir).tar.gz @echo ===================================== @echo 'ncftp -u $(url-host-prefix)/fs/share/ftp/gnu/fetish/' @echo '# put $(distdir).tar.gz' @echo '# send the /tmp/announcement e-mail' @echo 'pot-mail $(distdir).tar.gz | bash' @echo ===================================== amfiles: for subdir in config demo m4 term tutorial ; do \ make -C $$subdir -f Makefile.am.in Makefile.am \ done