1#!/bin/sh - 2# 3# Copyright (c) 1984, 1986, 1990, 1993 4# The Regents of the University of California. All rights reserved. 5# 6# Redistribution and use in source and binary forms, with or without 7# modification, are permitted provided that the following conditions 8# are met: 9# 1. Redistributions of source code must retain the above copyright 10# notice, this list of conditions and the following disclaimer. 11# 2. Redistributions in binary form must reproduce the above copyright 12# notice, this list of conditions and the following disclaimer in the 13# documentation and/or other materials provided with the distribution. 14# 3. All advertising materials mentioning features or use of this software 15# must display the following acknowledgement: 16# This product includes software developed by the University of 17# California, Berkeley and its contributors. 18# 4. Neither the name of the University nor the names of its contributors 19# may be used to endorse or promote products derived from this software 20# without specific prior written permission. 21# 22# THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 23# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 24# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 25# ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 26# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 27# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 28# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 29# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 30# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 31# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 32# SUCH DAMAGE. 33# 34# @(#)newvers.sh 8.1 (Berkeley) 4/20/94 35# $FreeBSD: src/sys/conf/newvers.sh,v 1.44.2.30 2003/04/04 07:02:46 murray Exp $ 36# $DragonFly: src/sys/conf/newvers.sh,v 1.10 2004/10/22 23:43:25 dillon Exp $ 37 38tag="\$Name: $" 39 40# Set BRANCH based on TAG, remove any DragonFly_ prefix to the tag. 41# If there is no tag set the branch name to CURRENT. 42# 43BRANCH="`echo $tag | awk '{ print $2; }' | sed -e 's/DragonFly_//'`" 44 45# This case occurs if we have checked out without a tag (i.e. HEAD), either 46# implicitly or explicitly. 47# 48if [ "X${BRANCH}" = "X$" ]; then 49 BRANCH="CURRENT" 50fi 51if [ "X${BRANCH}" = "XHEAD" ]; then 52 BRANCH="CURRENT" 53fi 54 55# This case occurs if the $Name: $ field has not been expanded. 56# 57if [ "X${BRANCH}" = "X" ]; then 58 BRANCH="UNKNOWN" 59fi 60 61TYPE="DragonFly" 62REVISION="1.1" 63RELEASE="${REVISION}-${BRANCH}" 64VERSION="${TYPE} ${RELEASE}" 65 66if [ "X${PARAMFILE}" != "X" ]; then 67 RELDATE=$(awk '/__DragonFly_version.*propagated to newvers/ {print $3}' \ 68 ${PARAMFILE}) 69else 70 RELDATE=$(awk '/__DragonFly_version.*propagated to newvers/ {print $3}' \ 71 $(dirname $0)/../sys/param.h) 72fi 73 74 75b=share/examples/etc/bsd-style-copyright 76year=`date '+%Y'` 77# look for copyright template 78for bsd_copyright in ../$b ../../$b ../../../$b /usr/src/$b /usr/$b 79do 80 if [ -r "$bsd_copyright" ]; then 81 COPYRIGHT=`sed \ 82 -e "s/\[year\]/$year/" \ 83 -e 's/\[your name here\]\.* /DragonFly Inc./' \ 84 -e 's/\[your name\]\.*/DragonFly Inc./' \ 85 -e '/\[id for your version control system, if any\]/d' \ 86 $bsd_copyright` 87 break 88 fi 89done 90 91# no copyright found, use a dummy 92if [ X"$COPYRIGHT" = X ]; then 93 COPYRIGHT="/* 94 * Copyright (c) $year 95 * DragonFly Inc. All rights reserved. 96 * 97 */" 98fi 99 100# add newline 101COPYRIGHT="$COPYRIGHT 102" 103 104LC_ALL=C; export LC_ALL 105if [ ! -r version ] 106then 107 echo 0 > version 108fi 109 110touch version 111v=`cat version` u=${USER-root} d=`pwd` h=`hostname` t=`date` 112i=`make -V KERN_IDENT` 113cat << EOF > vers.c 114$COPYRIGHT 115char sccspad[32 - 4 /* sizeof(sccs) */] = { '\\0' }; 116char sccs[4] = { '@', '(', '#', ')' }; 117char version[] = "${VERSION} #${v}: ${t}\\n ${u}@${h}:${d}\\n"; 118char ostype[] = "${TYPE}"; 119char osrelease[] = "${RELEASE}"; 120int osreldate = ${RELDATE}; 121char kern_ident[] = "${i}"; 122EOF 123 124echo `expr ${v} + 1` > version 125