xref: /freebsd/stand/common/newvers.sh (revision e8d8bef961a50d4dc22501cde4fb9fb0be1b2532)
1#!/bin/sh -
2#
3# $FreeBSD$
4#	$NetBSD: newvers.sh,v 1.1 1997/07/26 01:50:38 thorpej Exp $
5#
6# Copyright (c) 1984, 1986, 1990, 1993
7#	The Regents of the University of California.  All rights reserved.
8#
9# Redistribution and use in source and binary forms, with or without
10# modification, are permitted provided that the following conditions
11# are met:
12# 1. Redistributions of source code must retain the above copyright
13#    notice, this list of conditions and the following disclaimer.
14# 2. Redistributions in binary form must reproduce the above copyright
15#    notice, this list of conditions and the following disclaimer in the
16#    documentation and/or other materials provided with the distribution.
17# 3. Neither the name of the University nor the names of its contributors
18#    may be used to endorse or promote products derived from this software
19#    without specific prior written permission.
20#
21# THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
22# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
24# ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
25# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
27# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
28# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
30# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31# SUCH DAMAGE.
32#
33#	@(#)newvers.sh	8.1 (Berkeley) 4/20/94
34
35tempfile=$(mktemp tmp.XXXXXX) || exit
36trap "rm -f $tempfile" EXIT INT TERM
37
38include_metadata=true
39while getopts r opt; do
40	case "$opt" in
41	r)
42		include_metadata=
43		;;
44	esac
45done
46shift $((OPTIND - 1))
47
48LC_ALL=C; export LC_ALL
49u=${USER-root} h=${HOSTNAME-`hostname`} t=`date`
50#r=`head -n 6 $1 | tail -n 1 | awk -F: ' { print $1 } '`
51r=`awk -F: ' /^[0-9]\.[0-9]+:/ { print $1; exit }' $1`
52
53bootprog_info="FreeBSD/${3} ${2}, Revision ${r}\\n"
54if [ -n "${include_metadata}" ]; then
55	bootprog_info="$bootprog_info(${t} ${u}@${h})\\n"
56fi
57
58cat > $tempfile <<EOF
59char bootprog_info[] = "$bootprog_info";
60unsigned bootprog_rev = ${r%%.*}${r##*.};
61EOF
62mv $tempfile vers.c
63