1#!/usr/bin/awk -f
2#
3# $NetBSD: setrev.awk,v 1.1 1996/01/16 15:15:55 leo Exp $
4#
5function revcmp(r1, r2,    n1, n2, a1, a2, n, i) {
6	n1 = split(r1, a1, "\.")
7	n2 = split(r2, a2, "\.")
8	n = (n1 < n2) ? n1 : n2
9
10	for (i = 1; i <= n; ++i) {
11		if (a1[i] != a2[i])
12			return(a1[i] - a2[i])
13	}
14	if (n1 != n2)
15		return(n1 - n2)
16	return(0)
17}
18
19BEGIN {
20	destfile = ARGV[1]
21	rev = "0.0"
22}
23
24{
25	if (revcmp($4, rev) > 0)
26		rev = $4
27	next file
28}
29
30END {
31	while ((e = getline <destfile) > 0) {
32		if (/"\$Revision.*\$"/)
33			sub("\\\$Revision.*\\\$", "Revision " rev)
34		print
35	}
36	if (e)
37		exit(1)
38	exit(0)
39}
40