OpenSolaris_b135/Makefile.noget

#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
# Common Development and Distribution License (the "License").
# You may not use this file except in compliance with the License.
#
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
# or http://www.opensolaris.org/os/licensing.
# See the License for the specific language governing permissions
# and limitations under the License.
#
# When distributing Covered Code, include this CDDL HEADER in each
# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
# If applicable, add the following below this CDDL HEADER, with the
# fields enclosed by brackets "[]" replaced with your own identifying
# information: Portions Copyright [yyyy] [name of copyright owner]
#
# CDDL HEADER END
#

#
# Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
# Use is subject to license terms.
#
# ident	"%Z%%M%	%I%	%E% SMI"
#

#
# Makefile.noget: disable automated "sccs get" which causes us no end
# of trouble in as many different ways as possible.
# 
# Ordinarily, we'd say "$(ONBLD_TOOLS)/bin/sccscheck" here, but make
# has special knowledge of SCCS and will refuse to run an SCCS rule if
# the target is a writeable file, for fear that it will be destroying
# your edits in progress.  But with .KEEP_STATE enabled, any change to
# the command which would have been used to "build" the source file
# forces the command to be re-run.  So if your effective ONBLD_TOOLS
# changes (for instance, if you do a nightly -t to populate a
# workspace, and then "ws" into it to check out a file and then do
# some selective builds, make will notice the change in the full path
# of the "sccscheck" command, will seek to re-run it, and abort the
# build because the checked-out file is writeable.  So instead, by
# default, we just use whichever sccscheck happens to be first in
# $PATH and hope for the best.  Those who don't entirely trust this
# are of course welcome to consistently set SCCSCHECK in their
# environment to override this.
# 
SCCSCHECK=sccscheck
GET=sccscheck

# Deliberately sabotage other attempts to use "sccs get" from makefiles,
# with flags known not to be accepted by "sccs get" or "get", 
# in the event that one of these rules is overridden elsewhere in the tree.
SCCSFLAGS=--dont-get-it-now
SCCSGETFLAGS=--dont-get-it-now
GFLAGS=--dont-get-it-now

# Disable these targets as well
.SCCS_GET:
	$(SCCSCHECK) $@

.SCCS_GET_POSIX:
	$(SCCSCHECK) $@

.GET_POSIX:
	$(SCCSCHECK) $@

# The list of ~-suffix rules here was extracted from a copy of 
# 	/usr/share/lib/make/make.rules 
# which was tagged:
# 	"make.rules.file   1.21    03/11/14 SMI"
#
# These could be consolidated into a smaller number of targets but 
# are intentionally left as-is to facilitate cross-checking against 
# newer versions of make.rules
#

.c~:
	$(SCCSCHECK) $<

.c~.o:
	$(SCCSCHECK) $<

.c~.i:
	$(SCCSCHECK) $<

.c~.ln:
	$(SCCSCHECK) $<

.c~.a:
	$(SCCSCHECK) $<

.y~:
	$(SCCSCHECK) $<

.y~.c:
	$(SCCSCHECK) $<

.y~.ln:
	$(SCCSCHECK) $<

.y~.o:
	$(SCCSCHECK) $<

.l~:
	$(SCCSCHECK) $<

.l~.c:
	$(SCCSCHECK) $<

.l~.ln:
	$(SCCSCHECK) $<

.l~.o:
	$(SCCSCHECK) $<

.cc~:
	$(SCCSCHECK) $<

.cc~.o:
	$(SCCSCHECK) $<

.cc~.i:
	$(SCCSCHECK) $<

.cc~.a:
	$(SCCSCHECK) $<

.C~:
	$(SCCSCHECK) $<

.C~.o:
	$(SCCSCHECK) $<

.C~.i:
	$(SCCSCHECK) $<

.C~.a:
	$(SCCSCHECK) $<

.f~:
	$(SCCSCHECK) $<

.f~.o:
	$(SCCSCHECK) $<

.f~.a:
	$(SCCSCHECK) $<

.for~:
	$(SCCSCHECK) $<

.for~.o:
	$(SCCSCHECK) $<

.for~.a:
	$(SCCSCHECK) $<

.F~:
	$(SCCSCHECK) $<

.F~.o:
	$(SCCSCHECK) $<

.F~.a:
	$(SCCSCHECK) $<

.r~:
	$(SCCSCHECK) $<

.r~.o:
	$(SCCSCHECK) $<

.r~.a:
	$(SCCSCHECK) $<

.f90~:
	$(SCCSCHECK) $<

.f90~.o:
	$(SCCSCHECK) $<

.f90~.a:
	$(SCCSCHECK) $<

.ftn~:
	$(SCCSCHECK) $<

.ftn~.o:
	$(SCCSCHECK) $<

.ftn~.a:
	$(SCCSCHECK) $<

.def~.sym:
	$(SCCSCHECK) $<

.mod~:
	$(SCCSCHECK) $<

.mod~.o:
	$(SCCSCHECK) $<

.mod~.a:
	$(SCCSCHECK) $<

.p~:
	$(SCCSCHECK) $<

.p~.o:
	$(SCCSCHECK) $<

.p~.a:
	$(SCCSCHECK) $<

.s~.o:
	$(SCCSCHECK) $<

.s~.a:
	$(SCCSCHECK) $<

.S~.o:
	$(SCCSCHECK) $<

.S~.a:
	$(SCCSCHECK) $<

.sh~:
	$(SCCSCHECK) $<

.cps~.h:
	$(SCCSCHECK) $<

.java~.class:
	$(SCCSCHECK) $<