The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/conf/newvers.sh

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 #!/bin/sh -
    2 #
    3 #       $NetBSD: newvers.sh,v 1.52 2007/11/17 08:59:51 skrll Exp $
    4 #
    5 # Copyright (c) 1984, 1986, 1990, 1993
    6 #       The Regents of the University of California.  All rights reserved.
    7 #
    8 # Redistribution and use in source and binary forms, with or without
    9 # modification, are permitted provided that the following conditions
   10 # are met:
   11 # 1. Redistributions of source code must retain the above copyright
   12 #    notice, this list of conditions and the following disclaimer.
   13 # 2. Redistributions in binary form must reproduce the above copyright
   14 #    notice, this list of conditions and the following disclaimer in the
   15 #    documentation and/or other materials provided with the distribution.
   16 # 3. All advertising materials mentioning features or use of this software
   17 #    must display the following acknowledgement:
   18 #       This product includes software developed by the University of
   19 #       California, Berkeley and its contributors.
   20 # 4. Neither the name of the University nor the names of its contributors
   21 #    may be used to endorse or promote products derived from this software
   22 #    without specific prior written permission.
   23 #
   24 # THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   25 # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   26 # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   27 # ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   28 # FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   29 # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   30 # OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   31 # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   32 # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   33 # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   34 # SUCH DAMAGE.
   35 #
   36 #       @(#)newvers.sh  8.1 (Berkeley) 4/20/94
   37 
   38 if [ ! -e version ]; then
   39         echo 0 > version
   40 fi
   41 
   42 v=$(cat version)
   43 t=$(date)
   44 u=${USER-root}
   45 h=$(hostname)
   46 d=$(pwd)
   47 cwd=$(dirname $0)
   48 copyright=$(awk '{ printf("\"%s\\n\"", $0); }' ${cwd}/copyright)
   49 
   50 if [ -f ident ]; then
   51         id="$(cat ident)"
   52 else
   53         id=$(basename ${d})
   54 fi
   55 
   56 osrelcmd=${cwd}/osrelease.sh
   57 
   58 ost="NetBSD"
   59 osr=$(sh $osrelcmd)
   60 
   61 fullversion="${ost} ${osr} (${id}) #${v}: ${t}\n\t${u}@${h}:${d}\n"
   62 
   63 cat << _EOF > vers.c
   64 /*
   65  * Automatically generated file from $0
   66  * Do not edit.
   67  */
   68 #include <sys/cdefs.h>
   69 #include <sys/types.h>
   70 #include <sys/param.h>
   71 #include <sys/exec.h>
   72 #include <sys/exec_elf.h>
   73 
   74 const char ostype[] = "${ost}";
   75 const char osrelease[] = "${osr}";
   76 const char sccs[] = "@(#)${fullversion}";
   77 const char version[] = "${fullversion}";
   78 const char kernel_ident[] = "${id}";
   79 const char copyright[] =
   80 ${copyright}
   81 "\n";
   82 
   83 /*
   84  * NetBSD identity note.
   85  */
   86 #ifdef __arm__
   87 #define _SHT_NOTE       %note
   88 #else
   89 #define _SHT_NOTE       @note
   90 #endif
   91 
   92 #define _S(TAG) __STRING(TAG)
   93 __asm(
   94         ".section\t\".note.netbsd.ident\", \"\"," _S(_SHT_NOTE) "\n"
   95         "\t.p2align\t2\n"
   96         "\t.long\t" _S(ELF_NOTE_NETBSD_NAMESZ) "\n"
   97         "\t.long\t" _S(ELF_NOTE_NETBSD_DESCSZ) "\n"
   98         "\t.long\t" _S(ELF_NOTE_TYPE_NETBSD_TAG) "\n"
   99         "\t.ascii\t" _S(ELF_NOTE_NETBSD_NAME) "\n"
  100         "\t.long\t" _S(__NetBSD_Version__) "\n"
  101         "\t.p2align\t2\n"
  102 );
  103 
  104 _EOF
  105 echo $(expr ${v} + 1) > version

Cache object: 24f0a6eeaa48b95b99545b93136dd582


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.