1#
2# CDDL HEADER START
3#
4# The contents of this file are subject to the terms of the
5# Common Development and Distribution License (the "License").
6# You may not use this file except in compliance with the License.
7#
8# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9# or http://www.opensolaris.org/os/licensing.
10# See the License for the specific language governing permissions
11# and limitations under the License.
12#
13# When distributing Covered Code, include this CDDL HEADER in each
14# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15# If applicable, add the following below this CDDL HEADER, with the
16# fields enclosed by brackets "[]" replaced with your own identifying
17# information: Portions Copyright [yyyy] [name of copyright owner]
18#
19# CDDL HEADER END
20#
21
22#
23# Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
24# Use is subject to license terms.
25#
26# ident	"%Z%%M%	%I%	%E% SMI"
27#
28
29#
30# Makefile.noget: disable automated "sccs get" which causes us no end
31# of trouble in as many different ways as possible.
32# 
33# Ordinarily, we'd say "$(ONBLD_TOOLS)/bin/sccscheck" here, but make
34# has special knowledge of SCCS and will refuse to run an SCCS rule if
35# the target is a writeable file, for fear that it will be destroying
36# your edits in progress.  But with .KEEP_STATE enabled, any change to
37# the command which would have been used to "build" the source file
38# forces the command to be re-run.  So if your effective ONBLD_TOOLS
39# changes (for instance, if you do a nightly -t to populate a
40# workspace, and then "ws" into it to check out a file and then do
41# some selective builds, make will notice the change in the full path
42# of the "sccscheck" command, will seek to re-run it, and abort the
43# build because the checked-out file is writeable.  So instead, by
44# default, we just use whichever sccscheck happens to be first in
45# $PATH and hope for the best.  Those who don't entirely trust this
46# are of course welcome to consistently set SCCSCHECK in their
47# environment to override this.
48# 
49SCCSCHECK=sccscheck
50GET=sccscheck
51
52# Deliberately sabotage other attempts to use "sccs get" from makefiles,
53# with flags known not to be accepted by "sccs get" or "get", 
54# in the event that one of these rules is overridden elsewhere in the tree.
55SCCSFLAGS=--dont-get-it-now
56SCCSGETFLAGS=--dont-get-it-now
57GFLAGS=--dont-get-it-now
58
59# Disable these targets as well
60.SCCS_GET:
61	$(SCCSCHECK) $@
62
63.SCCS_GET_POSIX:
64	$(SCCSCHECK) $@
65
66.GET_POSIX:
67	$(SCCSCHECK) $@
68
69# The list of ~-suffix rules here was extracted from a copy of 
70# 	/usr/share/lib/make/make.rules 
71# which was tagged:
72# 	"make.rules.file   1.21    03/11/14 SMI"
73#
74# These could be consolidated into a smaller number of targets but 
75# are intentionally left as-is to facilitate cross-checking against 
76# newer versions of make.rules
77#
78
79.c~:
80	$(SCCSCHECK) $<
81
82.c~.o:
83	$(SCCSCHECK) $<
84
85.c~.i:
86	$(SCCSCHECK) $<
87
88.c~.ln:
89	$(SCCSCHECK) $<
90
91.c~.a:
92	$(SCCSCHECK) $<
93
94.y~:
95	$(SCCSCHECK) $<
96
97.y~.c:
98	$(SCCSCHECK) $<
99
100.y~.ln:
101	$(SCCSCHECK) $<
102
103.y~.o:
104	$(SCCSCHECK) $<
105
106.l~:
107	$(SCCSCHECK) $<
108
109.l~.c:
110	$(SCCSCHECK) $<
111
112.l~.ln:
113	$(SCCSCHECK) $<
114
115.l~.o:
116	$(SCCSCHECK) $<
117
118.cc~:
119	$(SCCSCHECK) $<
120
121.cc~.o:
122	$(SCCSCHECK) $<
123
124.cc~.i:
125	$(SCCSCHECK) $<
126
127.cc~.a:
128	$(SCCSCHECK) $<
129
130.C~:
131	$(SCCSCHECK) $<
132
133.C~.o:
134	$(SCCSCHECK) $<
135
136.C~.i:
137	$(SCCSCHECK) $<
138
139.C~.a:
140	$(SCCSCHECK) $<
141
142.f~:
143	$(SCCSCHECK) $<
144
145.f~.o:
146	$(SCCSCHECK) $<
147
148.f~.a:
149	$(SCCSCHECK) $<
150
151.for~:
152	$(SCCSCHECK) $<
153
154.for~.o:
155	$(SCCSCHECK) $<
156
157.for~.a:
158	$(SCCSCHECK) $<
159
160.F~:
161	$(SCCSCHECK) $<
162
163.F~.o:
164	$(SCCSCHECK) $<
165
166.F~.a:
167	$(SCCSCHECK) $<
168
169.r~:
170	$(SCCSCHECK) $<
171
172.r~.o:
173	$(SCCSCHECK) $<
174
175.r~.a:
176	$(SCCSCHECK) $<
177
178.f90~:
179	$(SCCSCHECK) $<
180
181.f90~.o:
182	$(SCCSCHECK) $<
183
184.f90~.a:
185	$(SCCSCHECK) $<
186
187.ftn~:
188	$(SCCSCHECK) $<
189
190.ftn~.o:
191	$(SCCSCHECK) $<
192
193.ftn~.a:
194	$(SCCSCHECK) $<
195
196.def~.sym:
197	$(SCCSCHECK) $<
198
199.mod~:
200	$(SCCSCHECK) $<
201
202.mod~.o:
203	$(SCCSCHECK) $<
204
205.mod~.a:
206	$(SCCSCHECK) $<
207
208.p~:
209	$(SCCSCHECK) $<
210
211.p~.o:
212	$(SCCSCHECK) $<
213
214.p~.a:
215	$(SCCSCHECK) $<
216
217.s~.o:
218	$(SCCSCHECK) $<
219
220.s~.a:
221	$(SCCSCHECK) $<
222
223.S~.o:
224	$(SCCSCHECK) $<
225
226.S~.a:
227	$(SCCSCHECK) $<
228
229.sh~:
230	$(SCCSCHECK) $<
231
232.cps~.h:
233	$(SCCSCHECK) $<
234
235.java~.class:
236	$(SCCSCHECK) $<
237