Initial commit of OpenSPARC T2 architecture model.
[OpenSPARC-T2-SAM] / obp / bin / move-if-changed
CommitLineData
920dae64
AT
1#!/bin/sh
2# ========== Copyright Header Begin ==========================================
3#
4# Hypervisor Software File: move-if-changed
5#
6# Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved.
7#
8# - Do no alter or remove copyright notices
9#
10# - Redistribution and use of this software in source and binary forms, with
11# or without modification, are permitted provided that the following
12# conditions are met:
13#
14# - Redistribution of source code must retain the above copyright notice,
15# this list of conditions and the following disclaimer.
16#
17# - Redistribution in binary form must reproduce the above copyright notice,
18# this list of conditions and the following disclaimer in the
19# documentation and/or other materials provided with the distribution.
20#
21# Neither the name of Sun Microsystems, Inc. or the names of contributors
22# may be used to endorse or promote products derived from this software
23# without specific prior written permission.
24#
25# This software is provided "AS IS," without a warranty of any kind.
26# ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES,
27# INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A
28# PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY EXCLUDED. SUN
29# MICROSYSTEMS, INC. ("SUN") AND ITS LICENSORS SHALL NOT BE LIABLE FOR
30# ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR
31# DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES. IN NO EVENT WILL SUN
32# OR ITS LICENSORS BE LIABLE FOR ANY LOST REVENUE, PROFIT OR DATA, OR
33# FOR DIRECT, INDIRECT, SPECIAL, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE
34# DAMAGES, HOWEVER CAUSED AND REGARDLESS OF THE THEORY OF LIABILITY,
35# ARISING OUT OF THE USE OF OR INABILITY TO USE THIS SOFTWARE, EVEN IF
36# SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
37#
38# You acknowledge that this software is not designed, licensed or
39# intended for use in the design, construction, operation or maintenance of
40# any nuclear facility.
41#
42# ========== Copyright Header End ============================================
43#
44# move-if-changed <file1> <file2>
45#
46# if (file2 != file1) then copy file2 to file1.
47#
48src=$1
49dest=$2
50tmp1=$src.tmp
51tmp2=$dest.tmp
52
53RM="/usr/bin/rm -f"
54GREP="/usr/bin/grep"
55SCCS="/usr/ccs/bin/sccs"
56CP="/usr/bin/cp -p"
57TOUCH="/usr/bin/touch"
58CMP="/usr/bin/cmp -s"
59CHMOD="/usr/bin/chmod"
60
61$RM $tmp1 $tmp2
62$GREP -v '#' $src > $tmp1
63$GREP -v '#' $dest > $tmp2
64$TOUCH $tmp1 $tmp2
65if $CMP $tmp1 $tmp2; then
66 /bin/true
67else
68 dir=`dirname $src`;
69 fname=`basename $src`;
70 here=`pwd`;
71 cd $dir
72 $CHMOD -w $fname
73 $RM SCCS/p.$fname
74 $SCCS edit $fname > /dev/null
75 cd $here
76 $CP -f $dest $src
77fi
78$RM $tmp1 $tmp2 $dest
79exit 0