source: trunk/openjdk/jdk/make/common/Sanity.gmk

Last change on this file was 278, checked in by dmik, 14 years ago

trunk: Merged in openjdk6 b22 from branches/vendor/oracle.

File size: 4.1 KB
Line 
1#
2# Copyright (c) 2001, 2010, Oracle and/or its affiliates. All rights reserved.
3# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4#
5# This code is free software; you can redistribute it and/or modify it
6# under the terms of the GNU General Public License version 2 only, as
7# published by the Free Software Foundation. Oracle designates this
8# particular file as subject to the "Classpath" exception as provided
9# by Oracle in the LICENSE file that accompanied this code.
10#
11# This code is distributed in the hope that it will be useful, but WITHOUT
12# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14# version 2 for more details (a copy is included in the LICENSE file that
15# accompanied this code).
16#
17# You should have received a copy of the GNU General Public License version
18# 2 along with this work; if not, write to the Free Software Foundation,
19# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20#
21# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22# or visit www.oracle.com if you need additional information or have any
23# questions.
24#
25
26# Settings and rules to validate the JDK build environment.
27
28.PHONY: \
29 pre-sanity \
30 sanity \
31 sanity-base \
32 sanity-docs \
33 sanity-images \
34 post-sanity-all \
35 post-sanity-docs \
36 post-sanity-images \
37 sanity-all
38
39# Bring in common sanity check rules
40include $(JDK_MAKE_SHARED_DIR)/Sanity.gmk
41
42# EXTERNALSANITYCONTROL means that this workspace build is being controlled by
43# the control workspace, and that workspace is managing what is done to the sanity
44# check files, and this sanity check run is only appending to those files.
45
46pre-sanity: $(SANITY_FILES)
47ifndef EXTERNALSANITYCONTROL
48 @$(RM) $(SANITY_FILES)
49endif
50
51sanity-base: pre-sanity \
52 sane-settings \
53 sane-insane \
54 sane-make \
55 sane-build_number \
56 sane-os_version \
57 sane-makeflags \
58 sane-alt_outputdir \
59 sane-outputdir \
60 sane-devtools_path \
61 sane-compiler_path \
62 sane-unixcommand_path \
63 sane-usrbin_path \
64 sane-math_iso \
65 sane-libCrun \
66 sane-unixccs_path \
67 sane-odbcdir \
68 sane-msdevtools_path \
69 sane-dxsdk \
70 sane-mslu \
71 sane-compiler \
72 sane-cacerts \
73 sane-ant_version \
74 sane-zip_version \
75 sane-msvcrt_path \
76 sane-odinsdk
77
78# The rules sanity-* have a one-to-one correspondence with the major targets
79# Each sanity-* rule should have no body to ensure that the post-sanity-* is the
80# last rule executed. The pre-sanity rule should be the first dependency. This design
81# expects the execution of pre-sanity only once per gnumake command invocation,
82# thus, info written to ERROR_FILE and/or WARNING_FILE will not be removed by subsequent
83# targets in the same 'gnumake' command line.
84
85sanity-all:: sanity-base \
86 sane-classpath \
87 sane-java_home \
88 sane-fonts \
89 sane-variant \
90 sane-ld_library_path \
91 sane-ld_library_path_64 \
92 sane-ld_options \
93 sane-ld_run_path \
94 sane-alt_bootdir \
95 sane-bootdir \
96 sane-alsa-headers
97
98ifdef OPENJDK
99sanity-all:: sane-freetype
100endif
101
102# always check motif path on solaris
103ifeq ($(PLATFORM), solaris)
104sanity-all:: \
105 sane-motif
106endif
107
108# on Linux, only check motif path if we are not building it from scratch.
109# (Which only happens with a full control build. The control makefiles are
110# the files that set BUILD_MOTIF).
111# We cannot sanity check something that has not been built yet.
112ifeq ($(PLATFORM), linux)
113 ifneq ($(BUILD_MOTIF), true)
114sanity-all:: \
115 sane-motif
116 endif
117endif
118
119# Always check cups header paths on solaris & linux
120ifneq ($(PLATFORM), windows)
121sanity-all:: \
122 sane-cups
123endif
124
125# Always check hotspot binary paths even if we are building them from scratch
126HOTSPOT_IMPORT_CHECK=true
127ifeq ($(HOTSPOT_IMPORT_CHECK),true)
128sanity-all:: \
129 sane-hotspot_binaries \
130 sane-hotspot_import
131endif
132
133sanity-docs: sanity-base sane-docs_import
134
135sanity-images:: sanity-base
136
137sanity:: sanity-all post-sanity
138
139# this should be the last rule in any target's sanity rule.
140post-sanity post-sanity-all post-sanity-docs post-sanity-images: sane-lastrule
Note: See TracBrowser for help on using the repository browser.