# This Makefile fragment is shared between fileutils, sh-utils, textutils,
# CPPI, Bison, and Autoconf.
+## Copyright 2001 Free Software Foundation, Inc.
+##
+## This program is free software; you can redistribute it and/or modify
+## it under the terms of the GNU General Public License as published by
+## the Free Software Foundation; either version 2, or (at your option)
+## any later version.
+##
+## This program is distributed in the hope that it will be useful,
+## but WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+## GNU General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program; if not, write to the Free Software
+## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+## 02111-1307, USA.
+
+# Do not save the original name or timestamp in the .tar.gz file.
+GZIP_ENV = '--no-name --best'
+
+# Automake 1.4 does not define AMTAR.
+AMTAR ?= $(TAR)
+
+CVS = cvs
+
prev_version_file ?= .prev-version
THIS_VERSION_REGEXP = $(subst .,\.,$(VERSION))
# Sanity checks with the CVS repository.
cvs-tag-check:
echo $(this-cvs-tag); \
- if cvs -n log -h README | grep -e $(this-cvs-tag): >/dev/null; then \
+ if $(CVS) -n log -h README | grep -e $(this-cvs-tag): >/dev/null; then \
echo "$(this-cvs-tag) as already been used; not tagging" 1>&2; \
exit 1; \
else :; fi
cvs-diff-check:
- cvs diff | grep -v '^?' >cvs-diffs; \
- if grep . cvs-diff >/dev/null; then \
- echo "Some files are locally modified:" >&2; \
- cat cvs-diffs >&2; \
- exit 1; \
- else \
+ if $(CVS) diff >cvs-diffs; then \
rm cvs-diffs; \
+ else \
+ echo "Some files are locally modified:" 1>&2; \
+ cat cvs-diffs; \
+ exit 1; \
fi
cvs-check: cvs-diff-check cvs-tag-check
$(MAKE) my-distcheck
-# Do not save the original name or timestamp in the .tar.gz file.
-GZIP_ENV = '--no-name --best'
-
-# Automake 1.4 does not define AMTAR.
-AMTAR ?= $(TAR)
-
# 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: cvs-check maintainer-distcheck
- cvs update po
- cvs tag -c $(this-cvs-tag)
+ $(CVS) update po
+ $(CVS) tag -c $(this-cvs-tag)
$(MAKE) dist
# Use this to make sure we don't run these programs when building
echo; \
echo ChangeLog entries:; \
find . -name ChangeLog -maxdepth 2 \
- | xargs cvs diff -up -r$(prev-cvs-tag) -rHEAD \
+ | xargs $(CVS) diff -up -r$(prev-cvs-tag) -rHEAD \
| sed -n 's/^+//p' \
| perl -ne 'm!^\+\+ (\./)?! or print,next;' \
-e 'print "\n"."*"x70 ."\n"; s///; print; print "*"x70 ."\n"'; \
for f in depcomp missing; do \
test -f $$f || continue; \
echo checking out $$f...; \
- cvs -d $(automake_repo) co -p automake/lib/$$f > $$f.t \
+ $(CVS) -d $(automake_repo) co -p automake/lib/$$f > $$f.t \
&& $(move_if_change) $$f.t $$f; \
done
ln $(rel-files) $(release_archive_dir)
chmod a-w $(rel-files)
echo $(VERSION) > $(prev_version_file)
- cvs ci -m. $(prev_version_file)
+ $(CVS) ci -m. $(prev_version_file)
@$(emit-rsync-commands)