jdk/make/common/shared/Sanity.gmk
author ohair
Wed, 03 Mar 2010 11:29:44 -0800
changeset 4986 25108bab43ad
parent 4917 c98da2209f8c
child 5506 202f599c92aa
permissions -rw-r--r--
6931763: sanity checks broken with latest cygwin, newer egrep -i option problems Reviewed-by: jjg
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
     1
#
4808
37f605425f74 6580131: 3/4 CompiledMethodLoad events don't produce the expected extra notifications to describe inlining
dcubed
parents: 4665
diff changeset
     2
# Copyright 2005-2010 Sun Microsystems, Inc.  All Rights Reserved.
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
     3
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
90ce3da70b43 Initial load
duke
parents:
diff changeset
     4
#
90ce3da70b43 Initial load
duke
parents:
diff changeset
     5
# This code is free software; you can redistribute it and/or modify it
90ce3da70b43 Initial load
duke
parents:
diff changeset
     6
# under the terms of the GNU General Public License version 2 only, as
90ce3da70b43 Initial load
duke
parents:
diff changeset
     7
# published by the Free Software Foundation.  Sun designates this
90ce3da70b43 Initial load
duke
parents:
diff changeset
     8
# particular file as subject to the "Classpath" exception as provided
90ce3da70b43 Initial load
duke
parents:
diff changeset
     9
# by Sun in the LICENSE file that accompanied this code.
90ce3da70b43 Initial load
duke
parents:
diff changeset
    10
#
90ce3da70b43 Initial load
duke
parents:
diff changeset
    11
# This code is distributed in the hope that it will be useful, but WITHOUT
90ce3da70b43 Initial load
duke
parents:
diff changeset
    12
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
90ce3da70b43 Initial load
duke
parents:
diff changeset
    13
# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
90ce3da70b43 Initial load
duke
parents:
diff changeset
    14
# version 2 for more details (a copy is included in the LICENSE file that
90ce3da70b43 Initial load
duke
parents:
diff changeset
    15
# accompanied this code).
90ce3da70b43 Initial load
duke
parents:
diff changeset
    16
#
90ce3da70b43 Initial load
duke
parents:
diff changeset
    17
# You should have received a copy of the GNU General Public License version
90ce3da70b43 Initial load
duke
parents:
diff changeset
    18
# 2 along with this work; if not, write to the Free Software Foundation,
90ce3da70b43 Initial load
duke
parents:
diff changeset
    19
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
90ce3da70b43 Initial load
duke
parents:
diff changeset
    20
#
90ce3da70b43 Initial load
duke
parents:
diff changeset
    21
# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
90ce3da70b43 Initial load
duke
parents:
diff changeset
    22
# CA 95054 USA or visit www.sun.com if you need additional information or
90ce3da70b43 Initial load
duke
parents:
diff changeset
    23
# have any questions.
90ce3da70b43 Initial load
duke
parents:
diff changeset
    24
#
90ce3da70b43 Initial load
duke
parents:
diff changeset
    25
90ce3da70b43 Initial load
duke
parents:
diff changeset
    26
#
90ce3da70b43 Initial load
duke
parents:
diff changeset
    27
# WARNING: This file is shared with other workspaces.
90ce3da70b43 Initial load
duke
parents:
diff changeset
    28
#
90ce3da70b43 Initial load
duke
parents:
diff changeset
    29
90ce3da70b43 Initial load
duke
parents:
diff changeset
    30
#
90ce3da70b43 Initial load
duke
parents:
diff changeset
    31
# Shared sanity rules for the JDK builds.
90ce3da70b43 Initial load
duke
parents:
diff changeset
    32
#
90ce3da70b43 Initial load
duke
parents:
diff changeset
    33
90ce3da70b43 Initial load
duke
parents:
diff changeset
    34
.SUFFIXES: .hdiffs
90ce3da70b43 Initial load
duke
parents:
diff changeset
    35
90ce3da70b43 Initial load
duke
parents:
diff changeset
    36
# All files created during sanity checking
90ce3da70b43 Initial load
duke
parents:
diff changeset
    37
90ce3da70b43 Initial load
duke
parents:
diff changeset
    38
SANITY_FILES =  $(ERROR_FILE) $(WARNING_FILE) $(MESSAGE_FILE)
90ce3da70b43 Initial load
duke
parents:
diff changeset
    39
90ce3da70b43 Initial load
duke
parents:
diff changeset
    40
# How to say "The Release Engineering people use this"
2158
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    41
THE_OFFICIAL_USES=The official builds on $(PLATFORM) use
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
    42
90ce3da70b43 Initial load
duke
parents:
diff changeset
    43
# How to say "You are using:"
90ce3da70b43 Initial load
duke
parents:
diff changeset
    44
YOU_ARE_USING=You appear to be using
90ce3da70b43 Initial load
duke
parents:
diff changeset
    45
2158
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    46
# Error message
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    47
define SanityError
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    48
$(ECHO) "ERROR: $1\n" >> $(ERROR_FILE)
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    49
endef
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    50
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    51
# Warning message
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    52
define SanityWarning
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    53
$(ECHO) "WARNING: $1\n" >> $(WARNING_FILE)
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    54
endef
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    55
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    56
# Official version error message: name version required_version
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    57
define OfficialErrorMessage
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    58
$(call SanityError,\
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    59
$(THE_OFFICIAL_USES) $1 $3. Your $1 $(if $2,undefined,$2) will not work.)
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    60
endef
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    61
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    62
# Official version warning message: name version required_version
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    63
define OfficialWarningMessage
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    64
$(call SanityWarning,\
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    65
$(THE_OFFICIAL_USES) $1 $3. $(YOU_ARE_USING) $1 $2.)
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    66
endef
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    67
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    68
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
    69
# Settings and rules to validate the JDK build environment.
90ce3da70b43 Initial load
duke
parents:
diff changeset
    70
90ce3da70b43 Initial load
duke
parents:
diff changeset
    71
ifeq ($(PLATFORM), solaris)
90ce3da70b43 Initial load
duke
parents:
diff changeset
    72
  FREE_SPACE := $(shell $(DF) -b $(OUTPUTDIR) | $(TAIL) -1 | $(NAWK) '{print $$2;}')
90ce3da70b43 Initial load
duke
parents:
diff changeset
    73
  TEMP_FREE_SPACE := $(shell $(DF) -b $(TEMP_DISK) | $(TAIL) -1 | $(NAWK) '{print $$2;}')
2158
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    74
  # What kind of system we are using (Variations are Solaris and OpenSolaris)
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    75
  OS_VERSION := $(shell uname -r)
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    76
  OS_VARIANT_NAME := $(strip $(shell head -1 /etc/release | awk '{print $$1;}') )
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    77
  OS_VARIANT_VERSION := $(OS_VERSION)
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
    78
  REQ_PATCH_LIST = $(JDK_TOPDIR)/make/PatchList.solaris
90ce3da70b43 Initial load
duke
parents:
diff changeset
    79
  ifeq ($(ARCH_FAMILY), sparc)
90ce3da70b43 Initial load
duke
parents:
diff changeset
    80
    PATCH_POSITION = $$4
90ce3da70b43 Initial load
duke
parents:
diff changeset
    81
  else
90ce3da70b43 Initial load
duke
parents:
diff changeset
    82
    PATCH_POSITION = $$6
90ce3da70b43 Initial load
duke
parents:
diff changeset
    83
  endif
2158
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    84
  ifndef OPENJDK
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    85
    _GCC_VER :=$(shell $(GCC) -dumpversion 2>&1 )
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    86
    GCC_VER  :=$(call GetVersion,"$(_GCC_VER)")
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    87
  endif
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
    88
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
    89
90ce3da70b43 Initial load
duke
parents:
diff changeset
    90
ifeq ($(PLATFORM), linux)
90ce3da70b43 Initial load
duke
parents:
diff changeset
    91
  FREE_SPACE := $(shell $(DF) --sync -kP $(OUTPUTDIR) | $(TAIL) -1 | $(NAWK) '{print $$4;}')
90ce3da70b43 Initial load
duke
parents:
diff changeset
    92
  TEMP_FREE_SPACE := $(shell $(DF) --sync -kP $(TEMP_DISK) | $(TAIL) -1 | $(NAWK) '{print $$4;}')
2158
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    93
  # What kind of system we are using (Variation is the Linux vendor)
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    94
  OS_VERSION := $(shell uname -r)
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    95
  OS_VARIANT_NAME := $(shell \
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    96
    if [ -f /etc/fedora-release ] ; then \
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    97
      echo "Fedora"; \
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    98
    elif [ -f /etc/redhat-release ] ; then \
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
    99
      echo "RedHat"; \
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   100
    elif [ -f /etc/SuSE-release ] ; then \
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   101
      echo "SuSE"; \
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   102
    else \
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   103
      echo "Unknown"; \
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   104
    fi)
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   105
  OS_VARIANT_VERSION := $(shell \
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   106
    if [ "$(OS_VARIANT_NAME)" = "Fedora" ] ; then \
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   107
      $(CAT) /etc/fedora-release | $(HEAD) -1 | $(NAWK) '{ print $$3; }' ; \
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   108
    fi)
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   109
  ALSA_INCLUDE=/usr/include/alsa/version.h
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   110
  ALSA_LIBRARY=/usr/lib/libasound.so
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   111
  _ALSA_VERSION := $(shell $(EGREP) SND_LIB_VERSION_STR $(ALSA_INCLUDE) | \
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   112
           $(SED) -e 's@.*\"\(.*\)\".*@\1@' )
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   113
  ALSA_VERSION := $(call GetVersion,$(_ALSA_VERSION))
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   114
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   115
90ce3da70b43 Initial load
duke
parents:
diff changeset
   116
ifeq ($(PLATFORM), windows)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   117
  FREE_SPACE := $(shell $(DF) -kP $(OUTPUTDIR) | $(TAIL) -1 | $(NAWK) '{print $$4;}')
90ce3da70b43 Initial load
duke
parents:
diff changeset
   118
  TEMP_FREE_SPACE := $(shell $(DF) -kP $(TEMP_DISK) | $(TAIL) -1 | $(NAWK) '{print $$4;}')
2158
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   119
  # Windows 2000 is 5.0, Windows XP is 5.1, Windows 2003 is 5.2
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   120
  #    Assume 5.0 (Windows 2000) if systeminfo does not help
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   121
  WINDOWS_MAPPING-5.0 := Windows2000
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   122
  WINDOWS_MAPPING-5.1 := WindowsXP
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   123
  WINDOWS_MAPPING-5.2 := Windows2003
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   124
  # What kind of system we are using (Variation is the common name)
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   125
  _OS_VERSION := \
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   126
    $(shell systeminfo 2> $(DEV_NULL) | \
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   127
            egrep '^OS Version:' | \
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   128
            awk '{print $$3;}' )
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   129
  ifeq ($(_OS_VERSION),)
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   130
    OS_VERSION = 5.0
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   131
  else
2186
53da56fa3bf9 6816311: Changes to allow builds with latest Windows SDK 6.1 on 64bit Windows 2003
ohair
parents: 2158
diff changeset
   132
    OS_VERSION = $(call MajorVersion,$(_OS_VERSION)).$(call MinorVersion,$(_OS_VERSION))
799
5abd62136d35 6695765: Remove winver.exe completely from jdk sources
ohair
parents: 715
diff changeset
   133
  endif
2158
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   134
  OS_VARIANT_NAME := $(WINDOWS_MAPPING-$(OS_VERSION))
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   135
  OS_VARIANT_VERSION := $(OS_VERSION)
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   136
  ifdef USING_CYGWIN
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   137
    # CYGWIN version
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   138
    _CYGWIN_VER := $(SYSTEM_UNAME)
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   139
    CYGWIN_VER  :=$(call GetVersion,$(_CYGWIN_VER))
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   140
  endif
887
0aab8d3fa11a 6725214: D3D: forward-port the new pipeline from 6u10
tdv
parents: 308
diff changeset
   141
  DXSDK_VER := $(shell $(EGREP) DIRECT3D_VERSION $(DXSDK_INCLUDE_PATH)/d3d9.h 2>&1 | \
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   142
    $(EGREP) "\#define" | $(NAWK) '{print $$3}')
90ce3da70b43 Initial load
duke
parents:
diff changeset
   143
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   144
90ce3da70b43 Initial load
duke
parents:
diff changeset
   145
# Get the version numbers of what we are using
90ce3da70b43 Initial load
duke
parents:
diff changeset
   146
_MAKE_VER  :=$(shell $(MAKE) --version 2>&1 | $(HEAD) -n 1)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   147
_ZIP_VER   :=$(shell $(ZIPEXE) -help 2>&1 | $(HEAD) -n 4 | $(EGREP) '^Zip')
90ce3da70b43 Initial load
duke
parents:
diff changeset
   148
_UNZIP_VER :=$(shell $(UNZIP)  -help 2>&1 | $(HEAD) -n 4 | $(EGREP) '^UnZip')
90ce3da70b43 Initial load
duke
parents:
diff changeset
   149
_BOOT_VER  :=$(shell $(BOOTDIR)/bin/java -version 2>&1 | $(HEAD) -n 1)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   150
MAKE_VER   :=$(call GetVersion,"$(_MAKE_VER)")
90ce3da70b43 Initial load
duke
parents:
diff changeset
   151
ZIP_VER    :=$(call GetVersion,"$(_ZIP_VER)")
90ce3da70b43 Initial load
duke
parents:
diff changeset
   152
UNZIP_VER  :=$(call GetVersion,"$(_UNZIP_VER)")
90ce3da70b43 Initial load
duke
parents:
diff changeset
   153
BOOT_VER   :=$(call GetVersion,"$(_BOOT_VER)")
90ce3da70b43 Initial load
duke
parents:
diff changeset
   154
1163
0de695c3558f 6746430: Fix problems with getting 'ant -version' and the required setting of 'ANT_HOME'
ohair
parents: 1162
diff changeset
   155
_ANT_VER:=$(shell $(ANT) -version 2>&1 )
140
3d601b5affa3 6654458: /java/devtools findbugs doesn't work on windows
ohair
parents: 2
diff changeset
   156
ANT_VER:=$(call GetVersion,"$(_ANT_VER)")
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   157
90ce3da70b43 Initial load
duke
parents:
diff changeset
   158
ifdef ALT_BINDIR
90ce3da70b43 Initial load
duke
parents:
diff changeset
   159
  ALT_BINDIR_VERSION := $(shell $(ALT_BINDIR)/java$(EXE_SUFFIX) -version 2>&1  | $(NAWK) -F'"' '{ print $$2 }')
90ce3da70b43 Initial load
duke
parents:
diff changeset
   160
  ALT_BINDIR_OK := $(shell $(ECHO) $(ALT_BINDIR_VERSION) | $(EGREP) -c '^$(JDK_MAJOR_VERSION).$(JDK_MINOR_VERSION)')
90ce3da70b43 Initial load
duke
parents:
diff changeset
   161
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   162
90ce3da70b43 Initial load
duke
parents:
diff changeset
   163
INSTALL_PATCHES_FILE = $(TEMPDIR)/installed.patches
90ce3da70b43 Initial load
duke
parents:
diff changeset
   164
90ce3da70b43 Initial load
duke
parents:
diff changeset
   165
# Get ALL_SETTINGS defined
90ce3da70b43 Initial load
duke
parents:
diff changeset
   166
include $(JDK_MAKE_SHARED_DIR)/Sanity-Settings.gmk
90ce3da70b43 Initial load
duke
parents:
diff changeset
   167
90ce3da70b43 Initial load
duke
parents:
diff changeset
   168
.PHONY: \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   169
	sane-copyrightyear\
90ce3da70b43 Initial load
duke
parents:
diff changeset
   170
	sane-settings \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   171
	sane-insane \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   172
	sane-build_number \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   173
	sane-os_version \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   174
	sane-memory_check \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   175
	sane-windows \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   176
	sane-locale \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   177
	sane-linux \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   178
	sane-cygwin \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   179
	sane-cygwin-shell \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   180
	sane-mks \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   181
	sane-arch_data_model \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   182
	sane-os_patch_level \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   183
	sane-classpath \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   184
	sane-java_home \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   185
	sane-fonts \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   186
	sane-binary-plugs \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   187
	sane-variant \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   188
	sane-ld_library_path \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   189
	sane-ld_library_path_64 \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   190
	sane-ld_options \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   191
	sane-ld_run_path \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   192
	sane-makeflags \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   193
	sane-alt_outputdir \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   194
	sane-outputdir \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   195
	sane-alt_bootdir \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   196
	sane-bootdir \
2806
27edf81ff967 6833444: _BOOTDIR1/_BOOTDIR2 on MS Windows should be consistent with other platforms
anthony
parents: 2660
diff changeset
   197
	sane-local-bootdir \
27edf81ff967 6833444: _BOOTDIR1/_BOOTDIR2 on MS Windows should be consistent with other platforms
anthony
parents: 2660
diff changeset
   198
	sane-cups \
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   199
	sane-devtools_path \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   200
	sane-compiler_path \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   201
	sane-unixcommand_path \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   202
	sane-usrbin_path \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   203
	sane-unixccs_path \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   204
	sane-docs_import \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   205
	sane-math_iso \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   206
	sane-libCrun \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   207
	sane-odbcdir \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   208
	sane-msdevtools_path \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   209
	sane-hotspot_binaries \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   210
	sane-hotspot_import \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   211
	sane-hotspot_import_dir \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   212
	sane-hotspot_import_include \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   213
	sane-compiler \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   214
	sane-link \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   215
	sane-cacerts \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   216
	sane-alsa-headers \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   217
	sane-ant_version \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   218
	sane-zip_version \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   219
	sane-unzip_version \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   220
 	sane-msvcrt_path \
4917
c98da2209f8c 6915413: Module build: building of specified jdk components instead of all
mchung
parents: 4808
diff changeset
   221
        sane-freetype \
c98da2209f8c 6915413: Module build: building of specified jdk components instead of all
mchung
parents: 4808
diff changeset
   222
        sane-build_modules
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   223
90ce3da70b43 Initial load
duke
parents:
diff changeset
   224
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   225
# check for COPYRIGHT_YEAR variable
90ce3da70b43 Initial load
duke
parents:
diff changeset
   226
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   227
sane-copyrightyear:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   228
ifdef ALT_COPYRIGHT_YEAR
90ce3da70b43 Initial load
duke
parents:
diff changeset
   229
	@$(ECHO) "WARNING: ALT_COPYRIGHT_YEAR but not the current year\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   230
			 	 " will be used for copyright year.\n " \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   231
		"" >>$(WARNING_FILE)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   232
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   233
90ce3da70b43 Initial load
duke
parents:
diff changeset
   234
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   235
# check for INSANE variable
90ce3da70b43 Initial load
duke
parents:
diff changeset
   236
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   237
sane-insane:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   238
ifdef INSANE
90ce3da70b43 Initial load
duke
parents:
diff changeset
   239
	@$(ECHO) "WARNING: You are building in 'INSANE' mode. You \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   240
	   "        should not use this mode, and in fact, \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   241
	   "        it may be removed at any time. If you \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   242
	   "        have build problems as a result of using \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   243
	   "        INSANE mode, then you should not expect \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   244
	   "        assistance from anyone with the problems \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   245
	   "        or consequences you experience. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   246
	   "" >> $(WARNING_FILE)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   247
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   248
90ce3da70b43 Initial load
duke
parents:
diff changeset
   249
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   250
# check for GNU Make version
90ce3da70b43 Initial load
duke
parents:
diff changeset
   251
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   252
MAKE_CHECK :=$(call CheckVersions,$(MAKE_VER),$(REQUIRED_MAKE_VER))
90ce3da70b43 Initial load
duke
parents:
diff changeset
   253
sane-make:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   254
	@if [ "$(MAKE_CHECK)" != "same" -a "$(MAKE_CHECK)" != "newer" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   255
	  $(ECHO) "WARNING: The version of make being used is older than \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   256
	    "      the required version of '$(REQUIRED_MAKE_VER)'. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   257
	    "      The version of make found was '$(MAKE_VER)'. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   258
	    "" >> $(WARNING_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   259
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   260
90ce3da70b43 Initial load
duke
parents:
diff changeset
   261
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   262
# Check the BUILD_NUMBER to make sure it contains bNN
90ce3da70b43 Initial load
duke
parents:
diff changeset
   263
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   264
sane-build_number: 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   265
	@if [ "`$(ECHO) $(BUILD_NUMBER) | $(SED) 's@.*b[0-9][0-9]*.*@bNN@'`" != "bNN" ] ; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   266
	    $(ECHO) "WARNING: The BUILD_NUMBER needs to contain b[0-9][0-9]*. Currently BUILD_NUMBER=$(BUILD_NUMBER). \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   267
	      "        This has been known to cause build failures. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   268
	      "" >> $(WARNING_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   269
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   270
90ce3da70b43 Initial load
duke
parents:
diff changeset
   271
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   272
# Check the ARCH_DATA_MODEL setting
90ce3da70b43 Initial load
duke
parents:
diff changeset
   273
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   274
sane-arch_data_model:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   275
	@if [ "$(ARCH_DATA_MODEL)" != 32 -a "$(ARCH_DATA_MODEL)" != 64 ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   276
	    $(ECHO) "ERROR: The setting of ARCH_DATA_MODEL must be 32 or 64.\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   277
	      "      $(YOU_ARE_USING) ARCH_DATA_MODEL=$(ARCH_DATA_MODEL). \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   278
	      "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   279
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   280
90ce3da70b43 Initial load
duke
parents:
diff changeset
   281
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   282
# Check the OS version (windows and linus have release name checks)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   283
#   NOTE: OPENJDK explicitly does not check for OS release information.
90ce3da70b43 Initial load
duke
parents:
diff changeset
   284
#         Unless we know for sure that it will not build somewhere, we cannot
90ce3da70b43 Initial load
duke
parents:
diff changeset
   285
#         generate a fatal sanity error, and a warning about the official
90ce3da70b43 Initial load
duke
parents:
diff changeset
   286
#         build platform just becomes clutter.
90ce3da70b43 Initial load
duke
parents:
diff changeset
   287
######################################################
2158
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   288
ifndef OPENJDK
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   289
  OS_VERSION_CHECK := \
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   290
    $(call CheckVersions,$(OS_VERSION),$(REQUIRED_OS_VERSION))
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   291
  ifeq ($(OS_VARIANT_NAME),$(REQUIRED_OS_VARIANT_NAME))
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   292
    OS_VARIANT_VERSION_CHECK := \
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   293
      $(call CheckVersions,$(OS_VARIANT_VERSION),$(REQUIRED_OS_VARIANT_VERSION))
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   294
  endif
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   295
endif
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   296
sane-os_version:: sane-arch_data_model sane-memory_check sane-locale sane-os_patch_level
90ce3da70b43 Initial load
duke
parents:
diff changeset
   297
ifndef OPENJDK
2158
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   298
  ifneq ($(OS_VARIANT_NAME),$(REQUIRED_OS_VARIANT_NAME))
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   299
    ifeq ($(OS_VERSION_CHECK),missing)
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   300
	@$(call OfficialErrorMessage,OS version,$(OS_VERSION),$(REQUIRED_OS_VERSION))
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   301
    endif
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   302
    ifneq ($(OS_VERSION_CHECK),same)
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   303
	@$(call OfficialWarningMessage,OS version,$(OS_VERSION),$(REQUIRED_OS_VERSION))
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   304
    endif
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   305
	@$(call OfficialWarningMessage,OS variant,$(OS_VARIANT_NAME),$(REQUIRED_OS_VARIANT_NAME))
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   306
  else
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   307
    ifneq ($(OS_VARIANT_VERSION_CHECK),same)
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   308
	@$(call OfficialWarningMessage,$(OS_VARIANT_NAME) version,$(OS_VARIANT_VERSION),$(REQUIRED_OS_VARIANT_VERSION))
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   309
    endif
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   310
  endif
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   311
endif # OPENJDK
90ce3da70b43 Initial load
duke
parents:
diff changeset
   312
90ce3da70b43 Initial load
duke
parents:
diff changeset
   313
ifeq ($(PLATFORM), windows)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   314
  sane-os_version:: sane-cygwin sane-mks sane-cygwin-shell
90ce3da70b43 Initial load
duke
parents:
diff changeset
   315
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   316
90ce3da70b43 Initial load
duke
parents:
diff changeset
   317
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   318
# Check the memory available on this machine
90ce3da70b43 Initial load
duke
parents:
diff changeset
   319
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   320
sane-memory_check:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   321
	@if [ "$(LOW_MEMORY_MACHINE)" = "true" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   322
	  $(ECHO) "WARNING: This machine appears to only have $(MB_OF_MEMORY)Mb of physical memory, \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   323
	    "        builds on this machine could be slow. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   324
	    "" >> $(WARNING_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   325
        fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   326
90ce3da70b43 Initial load
duke
parents:
diff changeset
   327
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   328
# Check the locale (value of LC_ALL, not being empty or ==C can be a problem)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   329
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   330
sane-locale:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   331
ifneq ($(PLATFORM), windows)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   332
	@if [ "$(LC_ALL)" != "" -a "$(LC_ALL)" != "C" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   333
	  $(ECHO) "WARNING: LC_ALL has been set to $(LC_ALL), this can cause build failures. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   334
	    "        Try setting LC_ALL to \"C\". \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   335
	    "" >> $(WARNING_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   336
        fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   337
	@if [ "$(LANG)" != "" -a "$(LANG)" != "C" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   338
	  $(ECHO) "WARNING: LANG has been set to $(LANG), this can cause build failures. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   339
	    "        Try setting LANG to \"C\". \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   340
	    "" >> $(WARNING_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   341
        fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   342
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   343
90ce3da70b43 Initial load
duke
parents:
diff changeset
   344
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   345
# Check the Windows cygwin version
90ce3da70b43 Initial load
duke
parents:
diff changeset
   346
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   347
ifeq ($(PLATFORM), windows)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   348
  CYGWIN_CHECK :=$(call CheckVersions,$(CYGWIN_VER),$(REQUIRED_CYGWIN_VER))
90ce3da70b43 Initial load
duke
parents:
diff changeset
   349
sane-cygwin:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   350
  ifdef USING_CYGWIN
2158
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   351
    ifeq ($(CYGWIN_CHECK),missing)
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   352
	@$(call OfficialErrorMessage,CYGWIN version,$(CYGWIN_VER),$(REQUIRED_CYGWIN_VER))
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   353
    endif
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   354
    ifeq ($(CYGWIN_CHECK),older)
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   355
	@$(call OfficialWarningMessage,CYGWIN version,$(CYGWIN_VER),$(REQUIRED_CYGWIN_VER))
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   356
    endif
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   357
  endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   358
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   359
90ce3da70b43 Initial load
duke
parents:
diff changeset
   360
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   361
# Check the cygwin shell is used, not cmd.exe
90ce3da70b43 Initial load
duke
parents:
diff changeset
   362
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   363
ifeq ($(PLATFORM), windows)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   364
sane-cygwin-shell:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   365
  ifdef USING_CYGWIN
90ce3da70b43 Initial load
duke
parents:
diff changeset
   366
	@if [ "$(SHLVL)" = "" -a "$(_)" = "" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   367
	  $(ECHO) "ERROR: You are using an unsupported shell. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   368
	    "      Use either sh, bash, ksh, zsh, or tcsh. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   369
	    "      Using the cmd.exe utility is not supported. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   370
	    "      If you still want to try your current shell, \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   371
	    "      please export SHLVL=1 when running $(MAKE).  \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   372
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   373
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   374
  endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   375
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   376
90ce3da70b43 Initial load
duke
parents:
diff changeset
   377
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   378
# Check the Windows mks version
90ce3da70b43 Initial load
duke
parents:
diff changeset
   379
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   380
ifeq ($(PLATFORM), windows)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   381
    MKS_CHECK :=$(call CheckVersions,$(MKS_VER),$(REQUIRED_MKS_VER))
90ce3da70b43 Initial load
duke
parents:
diff changeset
   382
sane-mks:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   383
  ifndef USING_CYGWIN
2158
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   384
    ifeq ($(MKS_CHECK),missing)
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   385
	@$(call OfficialErrorMessage,MKS version,$(MKS_VER),$(REQUIRED_MKS_VER))
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   386
    endif
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   387
    ifeq ($(MKS_CHECK),older)
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   388
	@$(call OfficialErrorMessage,MKS version,$(MKS_VER),$(REQUIRED_MKS_VER))
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
   389
    endif
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   390
  endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   391
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   392
90ce3da70b43 Initial load
duke
parents:
diff changeset
   393
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   394
# Get list of installed patches (this file has a particular format)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   395
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   396
$(INSTALL_PATCHES_FILE):
90ce3da70b43 Initial load
duke
parents:
diff changeset
   397
	@$(prep-target)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   398
ifeq ($(PLATFORM), solaris)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   399
  ifeq ($(OS_VERSION),$(REQUIRED_OS_VERSION))
90ce3da70b43 Initial load
duke
parents:
diff changeset
   400
	$(SHOWREV) -p > $@ 2>&1
90ce3da70b43 Initial load
duke
parents:
diff changeset
   401
  endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   402
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   403
	@$(ECHO) "" >> $@
90ce3da70b43 Initial load
duke
parents:
diff changeset
   404
90ce3da70b43 Initial load
duke
parents:
diff changeset
   405
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   406
# Check list of Solaris patches
90ce3da70b43 Initial load
duke
parents:
diff changeset
   407
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   408
sane-os_patch_level: $(INSTALL_PATCHES_FILE)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   409
ifeq ($(PLATFORM), solaris)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   410
  ifeq ($(OS_VERSION),$(REQUIRED_OS_VERSION))
90ce3da70b43 Initial load
duke
parents:
diff changeset
   411
	@$(NAWK) 'BEGIN { \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   412
    readingInstallPatches = 0; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   413
    requiredCount = 0; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   414
    installCount = 0; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   415
} \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   416
{ \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   417
    if (readingInstallPatches) { \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   418
        if ($$1=="Patch:") { \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   419
            ns = split($$2,parts,"-");  \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   420
            installPatchNo[installCount]=parts[1]; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   421
            installPatchRev[installCount]=parts[2]; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   422
            installCount++; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   423
        } \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   424
    } \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   425
     \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   426
    if (!readingInstallPatches) { \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   427
        if (index($$1,"#") != 0) continue; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   428
        if (match($$1,"BUILD") > 0 \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   429
        && $$2 == $(OS_VERSION) \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   430
        && ($$7 == "REQ" || $$7 == "req") \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   431
        && $(PATCH_POSITION) != "none" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   432
        && $(PATCH_POSITION) != "NONE") { \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   433
            ns = split($(PATCH_POSITION),parts,"-");  \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   434
            requiredPatchNo[requiredCount]=parts[1]; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   435
            requiredPatchRev[requiredCount]=parts[2]; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   436
            requiredCount++; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   437
       } \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   438
    } \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   439
} \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   440
END { \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   441
    errorCount=0; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   442
    for (i=0; i<requiredCount; i++) { \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   443
        foundMatch = 0; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   444
        for (j=0; j<installCount; j++) { \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   445
            if (installPatchNo[j] == requiredPatchNo[i] \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   446
            && installPatchRev[j] >= requiredPatchRev[i]) { \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   447
                foundMatch = 1; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   448
                break; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   449
            } \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   450
        } \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   451
        if ( foundMatch == 0) { \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   452
            printf("WARNING: Your solaris install is missing the required patch %s-%s\n", requiredPatchNo[i], requiredPatchRev[i] ); \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   453
            printf("         Please update your your system patches or build on a different machine.\n\n" ); \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   454
            errorCount++; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   455
        } \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   456
    } \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   457
}' $(REQ_PATCH_LIST) readingInstallPatches=1 $(INSTALL_PATCHES_FILE) >> $(WARNING_FILE)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   458
  endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   459
endif # PLATFORM
90ce3da70b43 Initial load
duke
parents:
diff changeset
   460
90ce3da70b43 Initial load
duke
parents:
diff changeset
   461
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   462
# CLASSPATH cannot be set, unless you are insane.
90ce3da70b43 Initial load
duke
parents:
diff changeset
   463
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   464
sane-classpath:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   465
ifdef CLASSPATH
90ce3da70b43 Initial load
duke
parents:
diff changeset
   466
	@$(ECHO) "ERROR: Your CLASSPATH environment variable is set.  This will \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   467
	   "      most likely cause the build to fail.  Please unset it \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   468
	   "      and start your build again. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   469
	   "" >> $(ERROR_FILE)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   470
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   471
90ce3da70b43 Initial load
duke
parents:
diff changeset
   472
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   473
# JAVA_HOME cannot be set, unless you are insane.
90ce3da70b43 Initial load
duke
parents:
diff changeset
   474
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   475
sane-java_home:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   476
ifdef JAVA_HOME
90ce3da70b43 Initial load
duke
parents:
diff changeset
   477
	@$(ECHO) "ERROR: Your JAVA_HOME environment variable is set.  This will \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   478
	   "      most likely cause the build to fail.  Please unset it \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   479
	   "      and start your build again. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   480
	   "" >> $(ERROR_FILE)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   481
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   482
90ce3da70b43 Initial load
duke
parents:
diff changeset
   483
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   484
# Make sure the fonts are there
90ce3da70b43 Initial load
duke
parents:
diff changeset
   485
# Exceptions are when explicitly building OPENJDK, or
90ce3da70b43 Initial load
duke
parents:
diff changeset
   486
# when the entire CLOSED_SRC dir is excluded, so we are
90ce3da70b43 Initial load
duke
parents:
diff changeset
   487
# implicitly building OPENJDK
90ce3da70b43 Initial load
duke
parents:
diff changeset
   488
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   489
FONT_FILE=$(CLOSED_SRC)/share/lib/fonts/LucidaTypewriterRegular.ttf
90ce3da70b43 Initial load
duke
parents:
diff changeset
   490
sane-fonts:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   491
ifndef OPENJDK
90ce3da70b43 Initial load
duke
parents:
diff changeset
   492
	@if [ -d $(CLOSED_SRC) ] ; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   493
	 if [ ! -f $(FONT_FILE) ] ; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   494
	  $(ECHO) "ERROR: Missing $(FONT_FILE). \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   495
	   "      Verify you have downloaded and overlayed on the source area all the binary files. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   496
	   "" >> $(ERROR_FILE); \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   497
	fi \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   498
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   499
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   500
90ce3da70b43 Initial load
duke
parents:
diff changeset
   501
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   502
# If building OPENJDK check pre-built binaries are
90ce3da70b43 Initial load
duke
parents:
diff changeset
   503
# available for binary plug source components.
90ce3da70b43 Initial load
duke
parents:
diff changeset
   504
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   505
ifdef OPENJDK
90ce3da70b43 Initial load
duke
parents:
diff changeset
   506
sane-binary-plugs:
2304
05e04a29c589 6825175: Remove or disable sanity check on binary plugs
ohair
parents: 2186
diff changeset
   507
  ifeq ($(IMPORT_BINARY_PLUGS),true)
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   508
	@if [ ! -d "$(BINARY_PLUGS_PATH)" ]; then \
2304
05e04a29c589 6825175: Remove or disable sanity check on binary plugs
ohair
parents: 2186
diff changeset
   509
	  $(ECHO) "WARNING: Can't locate pre-built libraries. \n" \
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   510
	    "      Please check your access to \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   511
	    "          $(BINARY_PLUGS_PATH) \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   512
	    "      and/or check your value of ALT_BINARY_PLUGS_PATH. \n" \
2304
05e04a29c589 6825175: Remove or disable sanity check on binary plugs
ohair
parents: 2186
diff changeset
   513
	   "" >> $(WARNING_FILE); \
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   514
	fi
2304
05e04a29c589 6825175: Remove or disable sanity check on binary plugs
ohair
parents: 2186
diff changeset
   515
  endif
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   516
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   517
90ce3da70b43 Initial load
duke
parents:
diff changeset
   518
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   519
# VARIANT must be set to DBG or OPT
90ce3da70b43 Initial load
duke
parents:
diff changeset
   520
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   521
sane-variant:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   522
	@if [ "$(VARIANT)" != DBG -a "$(VARIANT)" != OPT ] ; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   523
	  $(ECHO) "ERROR: Your VARIANT environment variable is set to $(VARIANT). \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   524
	   "      Needs to be set to DBG or OPT \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   525
	   "" >> $(ERROR_FILE); \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   526
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   527
90ce3da70b43 Initial load
duke
parents:
diff changeset
   528
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   529
# LD_LIBRARY_PATH should not be set, unless you are insane.
90ce3da70b43 Initial load
duke
parents:
diff changeset
   530
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   531
sane-ld_library_path:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   532
ifdef LD_LIBRARY_PATH
90ce3da70b43 Initial load
duke
parents:
diff changeset
   533
	@$(ECHO) "ERROR: Your LD_LIBRARY_PATH environment variable is set.  This may \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   534
	   "      produce binaries binaries incorrectly.  Please unset it \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   535
	   "      and start your build again. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   536
	   "" >> $(ERROR_FILE)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   537
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   538
90ce3da70b43 Initial load
duke
parents:
diff changeset
   539
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   540
# LD_LIBRARY_PATH_64 should not be set, unless you are insane.
90ce3da70b43 Initial load
duke
parents:
diff changeset
   541
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   542
sane-ld_library_path_64:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   543
ifdef LD_LIBRARY_PATH_64
90ce3da70b43 Initial load
duke
parents:
diff changeset
   544
	@$(ECHO) "ERROR: Your LD_LIBRARY_PATH_64 environment variable is set.  This may \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   545
	   "      produce binaries binaries incorrectly.  Please unset it \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   546
	   "      and start your build again. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   547
	   "" >> $(ERROR_FILE)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   548
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   549
90ce3da70b43 Initial load
duke
parents:
diff changeset
   550
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   551
# LD_OPTIONS should not be set, unless you are insane.
90ce3da70b43 Initial load
duke
parents:
diff changeset
   552
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   553
sane-ld_options:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   554
ifdef LD_OPTIONS
90ce3da70b43 Initial load
duke
parents:
diff changeset
   555
	@$(ECHO) "ERROR: Your LD_OPTIONS environment variable is set.  This may \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   556
	   "      produce binaries binaries incorrectly.  Please unset it \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   557
	   "      and start your build again. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   558
	   "" >> $(ERROR_FILE)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   559
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   560
90ce3da70b43 Initial load
duke
parents:
diff changeset
   561
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   562
# LD_RUN_PATH should not be set, unless you are insane.
90ce3da70b43 Initial load
duke
parents:
diff changeset
   563
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   564
sane-ld_run_path:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   565
ifdef LD_RUN_PATH
90ce3da70b43 Initial load
duke
parents:
diff changeset
   566
	@$(ECHO) "ERROR: Your LD_RUN_PATH environment variable is set.  This may \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   567
	   "      produce binaries binaries incorrectly.  Please unset it \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   568
	   "      produce binaries binaries incorrectly.  Please unset it \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   569
	   "      and start your build again. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   570
	   "" >> $(ERROR_FILE)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   571
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   572
90ce3da70b43 Initial load
duke
parents:
diff changeset
   573
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   574
# MAKEFLAGS cannot be set, unless you are insane.
90ce3da70b43 Initial load
duke
parents:
diff changeset
   575
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   576
ifeq ($(PLATFORM), windows)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   577
ifdef USING_CYGWIN
90ce3da70b43 Initial load
duke
parents:
diff changeset
   578
REAL_MAKEFLAGS:=$(subst --unix,,$(MAKEFLAGS))
90ce3da70b43 Initial load
duke
parents:
diff changeset
   579
else
90ce3da70b43 Initial load
duke
parents:
diff changeset
   580
REAL_MAKEFLAGS:=$(MAKEFLAGS)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   581
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   582
else
90ce3da70b43 Initial load
duke
parents:
diff changeset
   583
REAL_MAKEFLAGS:=$(MAKEFLAGS)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   584
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   585
sane-makeflags:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   586
# ifneq ($(strip $(REAL_MAKEFLAGS)),)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   587
ifeq ($(origin MAKEFLAGS),environment)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   588
	@#
90ce3da70b43 Initial load
duke
parents:
diff changeset
   589
	@# it is unacceptable to have the-e or --environment-overrides value in MAKEFLAGS
90ce3da70b43 Initial load
duke
parents:
diff changeset
   590
	@#
90ce3da70b43 Initial load
duke
parents:
diff changeset
   591
	@if [ `$(ECHO) $(MAKEFLAGS) | $(EGREP) -c '(^| )(e|--environment-overrides)( |$$)'` -ne 0 ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   592
	  $(ECHO) "ERROR: Either the build was started with the flag -e or \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   593
	    "      --environment-overrides, or the MAKEFLAGS environment \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   594
	    "      variable has this value set.  This will cause any \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   595
	    "      environment variables you have defined to override \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   596
	    "      the values defined by the makefiles. This practice is \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   597
	    "      not recommemded by the authors of GNU Make, and \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   598
	    "      will lead to an improper build. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   599
	    "      Please fix and restart the build. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   600
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   601
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   602
	@#
90ce3da70b43 Initial load
duke
parents:
diff changeset
   603
	@# it is unacceptable to havethe -i or --ignore-errors value in MAKEFLAGS
90ce3da70b43 Initial load
duke
parents:
diff changeset
   604
	@#
90ce3da70b43 Initial load
duke
parents:
diff changeset
   605
	@if [ `$(ECHO) $(MAKEFLAGS) | $(EGREP) -c '(^| )(i|--ignore-errors)( |$$)'` -ne 0 ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   606
	  $(ECHO) "ERROR: Either the build was started with the flag -i or \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   607
	    "      --ignore-errors, or the MAKEFLAGS environment \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   608
	    "      variable has this value set. 1111 You will be unable \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   609
	    "      to determine if the build is broken or not. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   610
	    "      Please fix and restart the build. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   611
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   612
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   613
	@#
90ce3da70b43 Initial load
duke
parents:
diff changeset
   614
	@# it is unacceptable to have the -I or --include-dir value in MAKEFLAGS
90ce3da70b43 Initial load
duke
parents:
diff changeset
   615
	@#
90ce3da70b43 Initial load
duke
parents:
diff changeset
   616
	@if [ `$(ECHO) $(MAKEFLAGS) | $(EGREP) -c '(^| )(I|--include-dir)( |$$)'` -ne 0 ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   617
	  $(ECHO) "ERROR: Either the build was started with the flag -I or \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   618
	    "      --include-dir, or the MAKEFLAGS environment \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   619
	    "      variable has this value set.  This will render your \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   620
	    "      build questionable as not all the rules and depenencies \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   621
	    "      are captured by the build. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   622
	    "      Please fix and restart the build. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   623
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   624
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   625
	@#
90ce3da70b43 Initial load
duke
parents:
diff changeset
   626
	@# it is unacceptable to have the -k or --keep-going value in MAKEFLAGS:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   627
	@#
90ce3da70b43 Initial load
duke
parents:
diff changeset
   628
	@if [ `$(ECHO) $(MAKEFLAGS) | $(EGREP) -c '(^| )(k|--keep-going)( |$$)'` -ne 0 ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   629
	  $(ECHO) "ERROR: Either the build was started with the flag -k or \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   630
	    "      --keep-going, or the MAKEFLAGS environment \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   631
	    "      variable has this value set. 222 You will be unable \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   632
	    "      to determine if the build is broken or not. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   633
	    "      Please fix and restart the build.  \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   634
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   635
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   636
	@#
90ce3da70b43 Initial load
duke
parents:
diff changeset
   637
	@# it is unacceptable to have the -o or --assume-old or --old-filevalue in MAKEFLAGS:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   638
	@# Note - this rule never gets invoked because it is processed out
90ce3da70b43 Initial load
duke
parents:
diff changeset
   639
	@#        in GNU Make startup
90ce3da70b43 Initial load
duke
parents:
diff changeset
   640
	@#
90ce3da70b43 Initial load
duke
parents:
diff changeset
   641
	@if [ `$(ECHO) $(MAKEFLAGS) | $(EGREP) -c '(^| )(o|--assume-old|--old-file)( |$$)'` -ne 0 ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   642
	  $(ECHO) "ERROR: Either the build was started with the flag -o or \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   643
	    "      --assume-old or --old-file, or the MAKEFLAGS environment \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   644
	    "      variable has this value set.  This could prevent the \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   645
	    "      build from executing rules it should, thus rendering a \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   646
	    "      questionable result. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   647
	    "      Please fix and restart the build. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   648
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   649
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   650
	@#
90ce3da70b43 Initial load
duke
parents:
diff changeset
   651
	@# it is unacceptable to have the -r or --nobuiltin-rules value in MAKEFLAGS
90ce3da70b43 Initial load
duke
parents:
diff changeset
   652
	@#
90ce3da70b43 Initial load
duke
parents:
diff changeset
   653
	@if [ `$(ECHO) $(MAKEFLAGS) | $(EGREP) -c '(^| )(r|--no-builtin-rules)( |$$)'` -ne 0 ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   654
	  $(ECHO) "ERROR: Either the build was started with the flag -r or \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   655
	    "      --no-builtin-rules, or the MAKEFLAGS environment \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   656
	    "      variable has this value set.  This may break the build \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   657
	    "      by not allowing builtin rules that may be required. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   658
	    "      Please fix and restart the build. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   659
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   660
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   661
	@#
90ce3da70b43 Initial load
duke
parents:
diff changeset
   662
	@# it is unacceptable to have the -t or --touch value in MAKEFLAGS
90ce3da70b43 Initial load
duke
parents:
diff changeset
   663
	@# Note - this rule never gets invoked because it is processed out
90ce3da70b43 Initial load
duke
parents:
diff changeset
   664
	@#        in GNU Make startup
90ce3da70b43 Initial load
duke
parents:
diff changeset
   665
	@#
90ce3da70b43 Initial load
duke
parents:
diff changeset
   666
	@if [ `$(ECHO) $(MAKEFLAGS) | $(EGREP) -c '(^| )(t|--touch)( |$$)'` -ne 0 ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   667
	  $(ECHO) "ERROR: Either the build was started with the flag -t or \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   668
	    "      --touch, or the MAKEFLAGS environment \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   669
	    "      variable has this value set.  This will leave the \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   670
	    "      build in a unclear state and could lead to not executing \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   671
	    "      rules which should be executed. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   672
	    "      Please fix and restart the build. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   673
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   674
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   675
	@#
90ce3da70b43 Initial load
duke
parents:
diff changeset
   676
	@# show what is in MAKEFLAGS so the user is aware...
90ce3da70b43 Initial load
duke
parents:
diff changeset
   677
	@#
90ce3da70b43 Initial load
duke
parents:
diff changeset
   678
	@$(ECHO) "WARNING: Your MAKEFLAGS environment variable is set. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   679
	   "        You should be very careful about the values set here. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   680
	   "\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   681
	   "        MAKEFLAGS is set to =>$(MAKEFLAGS)<= \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   682
	   "" >> $(WARNING_FILE)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   683
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   684
90ce3da70b43 Initial load
duke
parents:
diff changeset
   685
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   686
# if specified, ALT_OUTPUTDIR must point to non-relative path if set
90ce3da70b43 Initial load
duke
parents:
diff changeset
   687
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   688
sane-alt_outputdir:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   689
ifdef ALT_OUTPUTDIR
4986
25108bab43ad 6931763: sanity checks broken with latest cygwin, newer egrep -i option problems
ohair
parents: 4917
diff changeset
   690
	@if [ `$(ECHO) $(subst \,/,$(ALT_OUTPUTDIR)) | $(EGREP) -c '^([A-Za-z]:)?/'` -ne 1 ]; then \
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   691
	  $(ECHO) "ERROR: ALT_OUTPUTDIR must be an Absolute Path Name, \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   692
	    "      not a Relative Path Name. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   693
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   694
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   695
  ifeq ($(PLATFORM), windows)
4986
25108bab43ad 6931763: sanity checks broken with latest cygwin, newer egrep -i option problems
ohair
parents: 4917
diff changeset
   696
	@if [ `$(ECHO) $(subst \,/,$(ALT_OUTPUTDIR)) | $(EGREP) -c '^([A-Za-z]:)'` -ne 1 ]; then \
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   697
	  $(ECHO) "ERROR: On windows, ALT_OUTPUTDIR must contain the drive letter. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   698
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   699
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   700
  endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   701
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   702
90ce3da70b43 Initial load
duke
parents:
diff changeset
   703
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   704
# OUTPUTDIR tests
90ce3da70b43 Initial load
duke
parents:
diff changeset
   705
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   706
sane-outputdir:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   707
	@#
90ce3da70b43 Initial load
duke
parents:
diff changeset
   708
	@# OUTPUTDIR must be a directory...
90ce3da70b43 Initial load
duke
parents:
diff changeset
   709
	@#
90ce3da70b43 Initial load
duke
parents:
diff changeset
   710
	@if [ ! -d "$(OUTPUTDIR)" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   711
	  $(ECHO) "ERROR: OUTPUTDIR must be an existing directory. The current \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   712
	    "      value of OUTPUTDIR is \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   713
	    "          $(OUTPUTDIR) \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   714
	    "      Please check your value of ALT_OUTPUTDIR. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   715
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   716
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   717
	@#
90ce3da70b43 Initial load
duke
parents:
diff changeset
   718
	@# OUTPUTDIR must be writeable by user...
90ce3da70b43 Initial load
duke
parents:
diff changeset
   719
	@#
90ce3da70b43 Initial load
duke
parents:
diff changeset
   720
	@if [ ! -w "$(OUTPUTDIR)" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   721
	  $(ECHO) "ERROR: You must have write permissions to OUTPUTDIR. The \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   722
	    "      current value of OUTPUTDIR is \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   723
	    "          $(OUTPUTDIR) \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   724
	    "      Either obtain these permissions or set ALT_OUTPUTDIR. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   725
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   726
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   727
	@#
90ce3da70b43 Initial load
duke
parents:
diff changeset
   728
	@# OUTPUTDIR must have enough free space...
90ce3da70b43 Initial load
duke
parents:
diff changeset
   729
	@#
90ce3da70b43 Initial load
duke
parents:
diff changeset
   730
	@if [ $(FREE_SPACE) -lt $(REQUIRED_FREE_SPACE) ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   731
	  $(ECHO) "WARNING: You may not have enough free space in your OUTPUTDIR. The \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   732
	    "        current value of OUTPUTDIR is \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   733
	    "            $(OUTPUTDIR) \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   734
	    "        You need "$(REQUIRED_FREE_SPACE)" Kbytes free on this device to build \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   735
	    "        and it appears that only "$(FREE_SPACE)" Kbytes are free. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   736
	    "        Either obtain more space or set ALT_OUTPUTDIR to a larger disk. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   737
	    "" >> $(WARNING_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   738
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   739
90ce3da70b43 Initial load
duke
parents:
diff changeset
   740
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   741
# if specified, ALT_BOOTDIR must point to non-relative path if set
90ce3da70b43 Initial load
duke
parents:
diff changeset
   742
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   743
sane-alt_bootdir:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   744
ifdef ALT_BOOTDIR
4986
25108bab43ad 6931763: sanity checks broken with latest cygwin, newer egrep -i option problems
ohair
parents: 4917
diff changeset
   745
	@if [ `$(ECHO) $(subst \,/,$(ALT_BOOTDIR)) | $(EGREP) -c '^([A-Za-z]:)?/'` -ne 1 ]; then \
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   746
	  $(ECHO) "ERROR: ALT_BOOTDIR must be an Absolute Path Name, \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   747
	    "      not a Relative Path Name. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   748
	    "      The current value of ALT_BOOTDIR is \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   749
	    "          $(ALT_BOOTDIR) \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   750
	    "      Please fix this and continue your build. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   751
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   752
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   753
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   754
90ce3da70b43 Initial load
duke
parents:
diff changeset
   755
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   756
# BOOTDIR must point to a valid JDK.
90ce3da70b43 Initial load
duke
parents:
diff changeset
   757
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   758
BOOT_CHECK :=$(call CheckVersions,$(BOOT_VER),$(REQUIRED_BOOT_VER))
90ce3da70b43 Initial load
duke
parents:
diff changeset
   759
sane-bootdir:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   760
	@if [ "$(BOOT_CHECK)" != "same" -a "$(BOOT_CHECK)" != "newer" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   761
	  $(ECHO) "ERROR: Your BOOTDIR environment variable does not point \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   762
	    "      to a valid JDK for bootstrapping this build. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   763
	    "      A JDK $(JDK_MINOR_VERSION) $(MARKET_NAME) build must be bootstrapped using  \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   764
	    "      JDK $(PREVIOUS_JDK_VERSION) fcs (or later). \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   765
	    "      Apparently, your bootstrap JDK is version $(BOOT_VER) \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   766
	    "      Please update your ALT_BOOTDIR setting and start your build again. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   767
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   768
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   769
90ce3da70b43 Initial load
duke
parents:
diff changeset
   770
######################################################
2806
27edf81ff967 6833444: _BOOTDIR1/_BOOTDIR2 on MS Windows should be consistent with other platforms
anthony
parents: 2660
diff changeset
   771
# BOOTDIR is recommended to reside on a local drive
27edf81ff967 6833444: _BOOTDIR1/_BOOTDIR2 on MS Windows should be consistent with other platforms
anthony
parents: 2660
diff changeset
   772
######################################################
27edf81ff967 6833444: _BOOTDIR1/_BOOTDIR2 on MS Windows should be consistent with other platforms
anthony
parents: 2660
diff changeset
   773
sane-local-bootdir:
27edf81ff967 6833444: _BOOTDIR1/_BOOTDIR2 on MS Windows should be consistent with other platforms
anthony
parents: 2660
diff changeset
   774
ifeq ($(PLATFORM), windows)
4986
25108bab43ad 6931763: sanity checks broken with latest cygwin, newer egrep -i option problems
ohair
parents: 4917
diff changeset
   775
	@if [ `$(ECHO) $(BOOTDIR) | $(EGREP) -c '^[jJ]:'` -ne 0 ]; then \
2806
27edf81ff967 6833444: _BOOTDIR1/_BOOTDIR2 on MS Windows should be consistent with other platforms
anthony
parents: 2660
diff changeset
   776
	  $(ECHO) "WARNING: Your BOOTDIR is located on the J: drive. Often the J:\n" \
27edf81ff967 6833444: _BOOTDIR1/_BOOTDIR2 on MS Windows should be consistent with other platforms
anthony
parents: 2660
diff changeset
   777
	    "        drive is mapped over a network. Using a mapped drive for\n" \
27edf81ff967 6833444: _BOOTDIR1/_BOOTDIR2 on MS Windows should be consistent with other platforms
anthony
parents: 2660
diff changeset
   778
	    "        the BOOTDIR may significantly slow down the build process.\n" \
27edf81ff967 6833444: _BOOTDIR1/_BOOTDIR2 on MS Windows should be consistent with other platforms
anthony
parents: 2660
diff changeset
   779
	    "        You may want to consider using the ALT_BOOTDIR variable\n" \
27edf81ff967 6833444: _BOOTDIR1/_BOOTDIR2 on MS Windows should be consistent with other platforms
anthony
parents: 2660
diff changeset
   780
	    "        to point the build to another location for the BOOTDIR instead. \n" \
27edf81ff967 6833444: _BOOTDIR1/_BOOTDIR2 on MS Windows should be consistent with other platforms
anthony
parents: 2660
diff changeset
   781
	    "        Your current BOOTDIR is:\n" \
27edf81ff967 6833444: _BOOTDIR1/_BOOTDIR2 on MS Windows should be consistent with other platforms
anthony
parents: 2660
diff changeset
   782
	    "           $(BOOTDIR) \n" \
27edf81ff967 6833444: _BOOTDIR1/_BOOTDIR2 on MS Windows should be consistent with other platforms
anthony
parents: 2660
diff changeset
   783
	    "" >> $(WARNING_FILE) ; \
27edf81ff967 6833444: _BOOTDIR1/_BOOTDIR2 on MS Windows should be consistent with other platforms
anthony
parents: 2660
diff changeset
   784
	fi
27edf81ff967 6833444: _BOOTDIR1/_BOOTDIR2 on MS Windows should be consistent with other platforms
anthony
parents: 2660
diff changeset
   785
endif
27edf81ff967 6833444: _BOOTDIR1/_BOOTDIR2 on MS Windows should be consistent with other platforms
anthony
parents: 2660
diff changeset
   786
27edf81ff967 6833444: _BOOTDIR1/_BOOTDIR2 on MS Windows should be consistent with other platforms
anthony
parents: 2660
diff changeset
   787
######################################################
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   788
# CACERTS_FILE must be absoulte path and readable
90ce3da70b43 Initial load
duke
parents:
diff changeset
   789
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   790
sane-cacerts:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   791
  ifdef ALT_CACERTS_FILE
4986
25108bab43ad 6931763: sanity checks broken with latest cygwin, newer egrep -i option problems
ohair
parents: 4917
diff changeset
   792
	@if [ `$(ECHO) $(subst \,/,$(ALT_CACERTS_FILE)) | $(EGREP) -c '^([A-Za-z]:)?/'` -ne 1 ]; then \
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   793
	  $(ECHO) "ERROR: ALT_CACERTS_FILE must be an Absolute Path Name, \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   794
	    "      not a Relative Path Name. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   795
	    "      The current value of ALT_CACERTS_FILE is \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   796
	    "          $(ALT_CACERTS_FILE) \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   797
	    "      Please fix this and continue your build. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   798
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   799
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   800
  endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   801
	@#
90ce3da70b43 Initial load
duke
parents:
diff changeset
   802
	@# CACERTS_FILE must be readable
90ce3da70b43 Initial load
duke
parents:
diff changeset
   803
	@#
90ce3da70b43 Initial load
duke
parents:
diff changeset
   804
	@if [ ! -r "$(subst \,/,$(CACERTS_FILE))" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   805
	  $(ECHO) "ERROR: You do not have access to a valid cacerts file. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   806
	    "      Please check your access to \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   807
	    "          $(subst \,/,$(CACERTS_FILE)) \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   808
	    "      and/or check your value of ALT_CACERTS_FILE. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   809
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   810
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   811
	@#
90ce3da70b43 Initial load
duke
parents:
diff changeset
   812
	@# CACERTS_FILE must be a file
90ce3da70b43 Initial load
duke
parents:
diff changeset
   813
	@#
90ce3da70b43 Initial load
duke
parents:
diff changeset
   814
	@if [ -d "$(subst \,/,$(CACERTS_FILE))" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   815
	  $(ECHO) "ERROR: You do not have access to a valid cacerts file.\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   816
	    "      The value of CACERTS_FILE must point to a normal file.\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   817
	    "      Please check your access to \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   818
	    "          $(subst \,/,$(CACERTS_FILE)) \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   819
	    "      and/or check your value of ALT_CACERTS_FILE. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   820
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   821
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   822
90ce3da70b43 Initial load
duke
parents:
diff changeset
   823
90ce3da70b43 Initial load
duke
parents:
diff changeset
   824
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   825
# Check for availability of FreeType (OpenJDK specific)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   826
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   827
90ce3da70b43 Initial load
duke
parents:
diff changeset
   828
ifdef OPENJDK
90ce3da70b43 Initial load
duke
parents:
diff changeset
   829
305
9b905a071b0e 6672405: OPENJDK build: jdk7/jdk/make/tools/freetypecheck leaves dirt behind
ohair
parents: 142
diff changeset
   830
# The freetypecheck Makefile prints out "Failed" if not good enough
9b905a071b0e 6672405: OPENJDK build: jdk7/jdk/make/tools/freetypecheck leaves dirt behind
ohair
parents: 142
diff changeset
   831
$(TEMPDIR)/freetypeinfo: FRC
9b905a071b0e 6672405: OPENJDK build: jdk7/jdk/make/tools/freetypecheck leaves dirt behind
ohair
parents: 142
diff changeset
   832
	@$(prep-target)
9b905a071b0e 6672405: OPENJDK build: jdk7/jdk/make/tools/freetypecheck leaves dirt behind
ohair
parents: 142
diff changeset
   833
	@(($(CD) $(BUILDDIR)/tools/freetypecheck && $(MAKE)) || \
9b905a071b0e 6672405: OPENJDK build: jdk7/jdk/make/tools/freetypecheck leaves dirt behind
ohair
parents: 142
diff changeset
   834
	    $(ECHO) "Failed to build freetypecheck." ) > $@
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   835
305
9b905a071b0e 6672405: OPENJDK build: jdk7/jdk/make/tools/freetypecheck leaves dirt behind
ohair
parents: 142
diff changeset
   836
sane-freetype: $(TEMPDIR)/freetypeinfo
9b905a071b0e 6672405: OPENJDK build: jdk7/jdk/make/tools/freetypecheck leaves dirt behind
ohair
parents: 142
diff changeset
   837
	@if [ "`$(CAT) $< | $(GREP) Fail`" != "" ]; then \
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   838
	  $(ECHO) "ERROR: FreeType version " $(REQUIRED_FREETYPE_VERSION) \
305
9b905a071b0e 6672405: OPENJDK build: jdk7/jdk/make/tools/freetypecheck leaves dirt behind
ohair
parents: 142
diff changeset
   839
	          " or higher is required. \n" \
9b905a071b0e 6672405: OPENJDK build: jdk7/jdk/make/tools/freetypecheck leaves dirt behind
ohair
parents: 142
diff changeset
   840
		  "`$(CAT) $<`  \n" >> $(ERROR_FILE) ; \
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   841
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   842
90ce3da70b43 Initial load
duke
parents:
diff changeset
   843
else
90ce3da70b43 Initial load
duke
parents:
diff changeset
   844
#do nothing  (not OpenJDK)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   845
sane-freetype: 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   846
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   847
90ce3da70b43 Initial load
duke
parents:
diff changeset
   848
######################################################
4917
c98da2209f8c 6915413: Module build: building of specified jdk components instead of all
mchung
parents: 4808
diff changeset
   849
# if specified, BUILD_MODULES must contain valid values.
c98da2209f8c 6915413: Module build: building of specified jdk components instead of all
mchung
parents: 4808
diff changeset
   850
######################################################
c98da2209f8c 6915413: Module build: building of specified jdk components instead of all
mchung
parents: 4808
diff changeset
   851
MODULES_REGEX="all|base|desktop|management|enterprise|misc|tools"
c98da2209f8c 6915413: Module build: building of specified jdk components instead of all
mchung
parents: 4808
diff changeset
   852
sane-build_modules:
c98da2209f8c 6915413: Module build: building of specified jdk components instead of all
mchung
parents: 4808
diff changeset
   853
ifdef BUILD_MODULES
c98da2209f8c 6915413: Module build: building of specified jdk components instead of all
mchung
parents: 4808
diff changeset
   854
	@for m in $(BUILD_MODULES) ; do \
c98da2209f8c 6915413: Module build: building of specified jdk components instead of all
mchung
parents: 4808
diff changeset
   855
            valid=`$(ECHO) $$m | $(EGREP) $(MODULES_REGEX)`; \
c98da2209f8c 6915413: Module build: building of specified jdk components instead of all
mchung
parents: 4808
diff changeset
   856
            if [ "x$$valid" = "x" ] ; then \
c98da2209f8c 6915413: Module build: building of specified jdk components instead of all
mchung
parents: 4808
diff changeset
   857
                $(ECHO) "ERROR: $$m set in the BUILD_MODULES variable is invalid.\n" \
c98da2209f8c 6915413: Module build: building of specified jdk components instead of all
mchung
parents: 4808
diff changeset
   858
                "" >> $(ERROR_FILE); \
c98da2209f8c 6915413: Module build: building of specified jdk components instead of all
mchung
parents: 4808
diff changeset
   859
            fi \
c98da2209f8c 6915413: Module build: building of specified jdk components instead of all
mchung
parents: 4808
diff changeset
   860
	done
c98da2209f8c 6915413: Module build: building of specified jdk components instead of all
mchung
parents: 4808
diff changeset
   861
endif
c98da2209f8c 6915413: Module build: building of specified jdk components instead of all
mchung
parents: 4808
diff changeset
   862
c98da2209f8c 6915413: Module build: building of specified jdk components instead of all
mchung
parents: 4808
diff changeset
   863
######################################################
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   864
# CUPS_HEADERS_PATH must be valid
90ce3da70b43 Initial load
duke
parents:
diff changeset
   865
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   866
sane-cups:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   867
ifneq ($(PLATFORM), windows)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   868
	@if [ ! -r $(CUPS_HEADERS_PATH)/cups/cups.h ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   869
	  $(ECHO) "ERROR: You do not have access to valid Cups header files. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   870
	    "      Please check your access to \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   871
	    "          $(CUPS_HEADERS_PATH)/cups/cups.h \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   872
	    "      and/or check your value of ALT_CUPS_HEADERS_PATH, \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   873
	    "      CUPS is frequently pre-installed on many systems, \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   874
            "      or may be downloaded from http://www.cups.org \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   875
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   876
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   877
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   878
90ce3da70b43 Initial load
duke
parents:
diff changeset
   879
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   880
# Check for existence of DEVTOOLS_PATH
90ce3da70b43 Initial load
duke
parents:
diff changeset
   881
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   882
sane-devtools_path:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   883
	@if [ "$(DEVTOOLS_PATH)" != "" -a ! -r "$(DEVTOOLS_PATH)" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   884
	  $(ECHO) "ERROR: You do not have a valid DEVTOOLS_PATH setting. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   885
	    "      Please check your access to \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   886
	    "          $(DEVTOOLS_PATH) \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   887
	    "      and/or check your value of ALT_DEVTOOLS_PATH. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   888
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   889
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   890
90ce3da70b43 Initial load
duke
parents:
diff changeset
   891
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   892
# Check for existence of MS_RUNTIME_LIBRARIES
90ce3da70b43 Initial load
duke
parents:
diff changeset
   893
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   894
sane-msvcrt_path:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   895
ifeq ($(PLATFORM), windows)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   896
	@if [ ! -r "$(MSVCRT_DLL_PATH)/msvcrt.dll" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   897
	  $(ECHO) "ERROR: You do not have access to msvcrt.dll. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   898
	    "      Please check your access to \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   899
	    "          $(MSVCRT_DLL_PATH) \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   900
	    "      and/or check your value of ALT_MSVCRT_DLL_PATH. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   901
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   902
	fi
2186
53da56fa3bf9 6816311: Changes to allow builds with latest Windows SDK 6.1 on 64bit Windows 2003
ohair
parents: 2158
diff changeset
   903
  ifneq ($(MSVCRNN_DLL),)
1776
33e9405ab91b 6754862: jdk/src/windows/bin/java_md.c: hardcoded reference to msvcr71.dll
tbell
parents: 1631
diff changeset
   904
	@if [ ! -r "$(MSVCRNN_DLL_PATH)/$(MSVCRNN_DLL)" ]; then \
33e9405ab91b 6754862: jdk/src/windows/bin/java_md.c: hardcoded reference to msvcr71.dll
tbell
parents: 1631
diff changeset
   905
	  $(ECHO) "ERROR: You do not have access to $(MSVCRNN_DLL). \n" \
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   906
	    "      Please check your access to \n" \
1776
33e9405ab91b 6754862: jdk/src/windows/bin/java_md.c: hardcoded reference to msvcr71.dll
tbell
parents: 1631
diff changeset
   907
	    "          $(MSVCRNN_DLL_PATH) \n" \
33e9405ab91b 6754862: jdk/src/windows/bin/java_md.c: hardcoded reference to msvcr71.dll
tbell
parents: 1631
diff changeset
   908
	    "      and/or check your value of ALT_MSVCRNN_DLL_PATH. \n" \
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   909
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   910
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   911
  endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   912
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   913
90ce3da70b43 Initial load
duke
parents:
diff changeset
   914
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   915
# Check for existence of COMPILER_PATH
90ce3da70b43 Initial load
duke
parents:
diff changeset
   916
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   917
sane-compiler_path:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   918
	@if [ "$(COMPILER_PATH)" != "" -a ! -r "$(COMPILER_PATH)" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   919
	  $(ECHO) "ERROR: You do not have a valid COMPILER_PATH setting. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   920
	    "      Please check your access to \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   921
	    "          $(COMPILER_PATH) \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   922
	    "      and/or check your value of ALT_COMPILER_PATH. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   923
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   924
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   925
90ce3da70b43 Initial load
duke
parents:
diff changeset
   926
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   927
# Check for existence of UNIXCOMMAND_PATH
90ce3da70b43 Initial load
duke
parents:
diff changeset
   928
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   929
sane-unixcommand_path:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   930
	@if [ "$(UNIXCOMMAND_PATH)" != "" -a ! -r "$(UNIXCOMMAND_PATH)" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   931
	  $(ECHO) "ERROR: You do not have a valid UNIXCOMMAND_PATH setting. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   932
	    "      Please check your access to \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   933
	    "          $(UNIXCOMMAND_PATH) \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   934
	    "      and/or check your value of ALT_UNIXCOMMAND_PATH. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   935
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   936
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   937
ifeq ($(PLATFORM), windows)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   938
	@for utility in cpio ar file m4 ; do \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   939
	  if [ ! -r "`$(WHICH) $${utility}`" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   940
	    $(ECHO) "WARNING: You do not have the utility $${utility} in the \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   941
	      "      directory $(UNIXCOMMAND_PATH). \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   942
	      "      The utilities cpio, ar, file, and m4 are required. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   943
	      "" >> $(WARNING_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   944
	  fi; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   945
	done
90ce3da70b43 Initial load
duke
parents:
diff changeset
   946
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   947
90ce3da70b43 Initial load
duke
parents:
diff changeset
   948
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   949
# Check for existence of USRBIN_PATH on linux
90ce3da70b43 Initial load
duke
parents:
diff changeset
   950
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   951
sane-usrbin_path:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   952
ifeq ($(PLATFORM), linux)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   953
	@if [ "$(USRBIN_PATH)" != "" -a ! -r "$(USRBIN_PATH)" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   954
	    $(ECHO) "ERROR: You do not have a valid USRBIN_PATH setting. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   955
	      "      Please check your access to \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   956
	      "          $(USRBIN_PATH)  \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   957
	      "      and/or check your value of ALT_USRBIN_PATH. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   958
	      "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   959
	  fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   960
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   961
90ce3da70b43 Initial load
duke
parents:
diff changeset
   962
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   963
# Check for existence of UNIXCCS_PATH on solaris
90ce3da70b43 Initial load
duke
parents:
diff changeset
   964
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   965
sane-unixccs_path:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   966
ifeq ($(PLATFORM), solaris)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   967
	@if [ "$(UNIXCCS_PATH)" != "" -a ! -r "$(UNIXCCS_PATH)" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   968
	  $(ECHO) "ERROR: You do not have a valid UNIXCCS_PATH setting. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   969
	    "      Please check your access to \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   970
	    "          $(UNIXCCS_PATH) \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   971
	    "      and/or check your value of ALT_UNIXCCS_PATH. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   972
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   973
	  fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   974
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   975
90ce3da70b43 Initial load
duke
parents:
diff changeset
   976
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   977
# Verify the docs directory exists
90ce3da70b43 Initial load
duke
parents:
diff changeset
   978
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   979
sane-docs_import:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   980
	@if [ ! -d "$(HOTSPOT_DOCS_IMPORT_PATH)" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   981
	    $(ECHO) "WARNING: The directory HOTSPOT_DOCS_IMPORT_PATH=$(HOTSPOT_DOCS_IMPORT_PATH) \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   982
	      "      does not exist, check your value of ALT_HOTSPOT_DOCS_IMPORT_PATH. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   983
	      "" >> $(WARNING_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   984
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   985
90ce3da70b43 Initial load
duke
parents:
diff changeset
   986
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   987
# Check for possible problem regarding __fabsf,  math_iso.h and the libm patch.
90ce3da70b43 Initial load
duke
parents:
diff changeset
   988
#    Hotspot should have been changed in Mustang 6.0 Build 47 to not depend
90ce3da70b43 Initial load
duke
parents:
diff changeset
   989
#    on __fabsf, this is just checking that fact now.
90ce3da70b43 Initial load
duke
parents:
diff changeset
   990
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
   991
sane-math_iso:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   992
ifeq ($(PLATFORM), solaris)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   993
	@if [ -f $(HOTSPOT_SERVER_PATH)/$(LIB_PREFIX)jvm.$(LIBRARY_SUFFIX) ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   994
	  if [ "`$(NM) $(HOTSPOT_SERVER_PATH)/$(LIB_PREFIX)jvm.$(LIBRARY_SUFFIX) | $(GREP) __fabsf`" != "" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   995
	    $(ECHO) "WARNING: This version of hotspot relies on __fabsf \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   996
	      "        which is not always available on Solaris 8 and 9 machines \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   997
	      "        unless they have the latest libm patch and the file \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   998
	      "        /usr/include/iso/math_iso.h which can trigger this dependency.\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
   999
	      "        Hotspot should NOT be dependent on this extern, check the \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1000
	      "        version of the hotspot library you are using. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1001
	      "" >> $(WARNING_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1002
	    fi; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1003
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1004
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1005
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1006
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1007
# Check for possible patch problem regarding /usr/lib/libCrun.so
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1008
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1009
sane-libCrun:
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1010
ifeq ($(PLATFORM), solaris)
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1011
	@if [ "`$(NM) /usr/lib/libCrun.so.1 | $(GREP) __1c2n6FIpv_0_`" = "" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1012
	  $(ECHO) "WARNING: The file /usr/lib/libCrun.so.1 is missing the extern \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1013
	    "        __1c2n6FIpv_0_ which indicates that the system is missing \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1014
	    "        a required Solaris patch, or you are using a pre-FCS release \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1015
	    "        of Solaris 10. You need the latest /usr/lib/libCrun.so.1 \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1016
	    "        which comes with the FCS release of Solaris 10 and available \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1017
	    "        through the latest Solaris 8 or 9 C++ runtime patches. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1018
	    "" >> $(WARNING_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1019
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1020
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1021
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1022
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1023
# Check for existence of MSDEVTOOLS_PATH on windows
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1024
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1025
sane-msdevtools_path:
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1026
ifeq ($(PLATFORM), windows)
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1027
	@if [ "$(MSDEVTOOLS_PATH)" != "" -a ! -r "$(MSDEVTOOLS_PATH)" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1028
	  $(ECHO) "ERROR: You do not have a valid MSDEVTOOLS_PATH setting. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1029
	    "      Please check your access to \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1030
	    "          $(MSDEVTOOLS_PATH) \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1031
	    "      and/or check your value of ALT_MSDEVTOOLS_PATH. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1032
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1033
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1034
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1035
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1036
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1037
# Check for existence of Hotspot binaries
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1038
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1039
sane-hotspot_binaries:
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1040
ifeq ($(ARCH_DATA_MODEL), 32)
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1041
	@if [ ! -r $(HOTSPOT_CLIENT_PATH)/$(LIB_PREFIX)jvm.$(LIBRARY_SUFFIX) ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1042
	  $(ECHO) "ERROR: HOTSPOT_CLIENT_PATH does not point to a valid HotSpot VM. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1043
	    "      Please check your access to \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1044
	    "          $(HOTSPOT_CLIENT_PATH)/$(LIB_PREFIX)jvm.$(LIBRARY_SUFFIX) \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1045
	    "      and/or check your value of ALT_HOTSPOT_CLIENT_PATH. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1046
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1047
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1048
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1049
	@if [ ! -r $(HOTSPOT_SERVER_PATH)/$(LIB_PREFIX)jvm.$(LIBRARY_SUFFIX) ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1050
	  $(ECHO) "ERROR: HOTSPOT_SERVER_PATH does not point to a valid HotSpot VM. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1051
	    "      Please check your access to \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1052
	    "          $(HOTSPOT_SERVER_PATH)/$(LIB_PREFIX)jvm.$(LIBRARY_SUFFIX) \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1053
	    "      and/or check your value of ALT_HOTSPOT_SERVER_PATH. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1054
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1055
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1056
	@#
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1057
	@# Check value of HOTSPOT_LIB_PATH
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1058
	@#
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1059
ifeq ($(PLATFORM), windows)
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1060
	@if [ ! -r $(HOTSPOT_LIB_PATH)/jvm.lib ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1061
	  $(ECHO) "ERROR: HOTSPOT_LIB_PATH does not point to a valid HotSpot library. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1062
	    "      Please check your access to \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1063
	    "          $(HOTSPOT_LIB_PATH)/jvm.lib \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1064
	    "      and/or check your value of ALT_HOTSPOT_LIB_PATH. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1065
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1066
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1067
	@#
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1068
	@# Check for the .map files - its OK if they are not there..
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1069
	@#
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1070
  ifeq ($(ARCH_DATA_MODEL), 32)
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1071
	@# There is no 64-bit HotSpot client VM
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1072
	@if [ ! -r $(HOTSPOT_CLIENT_PATH)/jvm.map ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1073
	  $(ECHO) "WARNING: HOTSPOT_CLIENT_PATH does not point to valid HotSpot .map files. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1074
	    "        These files are optional and aid in the debugging of the JVM. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1075
	    "        Please check your access to \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1076
	    "          $(HOTSPOT_CLIENT_PATH)/jvm.map \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1077
	    "        and/or check your value of ALT_HOTSPOT_CLIENT_PATH. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1078
	    "" >> $(WARNING_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1079
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1080
	@if [ ! -r $(HOTSPOT_CLIENT_PATH)/jvm.pdb ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1081
	  $(ECHO) "WARNING: HOTSPOT_CLIENT_PATH does not point to valid HotSpot .pdb files. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1082
	    "        These files are optional and aid in the debugging of the JVM. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1083
	    "        Please check your access to \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1084
	    "          $(HOTSPOT_CLIENT_PATH)/jvm.pdb \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1085
	    "        and/or check your value of ALT_HOTSPOT_CLIENT_PATH. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1086
	    "" >> $(WARNING_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1087
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1088
  endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1089
	@if [ ! -r $(HOTSPOT_SERVER_PATH)/jvm.map ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1090
	  $(ECHO) "WARNING: HOTSPOT_SERVER_PATH does not point to valid HotSpot .map files. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1091
	    "        These files are optional and aid in the debugging of the JVM. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1092
	    "        Please check your access to \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1093
	    "          $(HOTSPOT_SERVER_PATH)/jvm.map \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1094
	    "        and/or check your value of ALT_HOTSPOT_SERVER_PATH. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1095
	    "" >> $(WARNING_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1096
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1097
	@if [ ! -r $(HOTSPOT_SERVER_PATH)/jvm.pdb ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1098
	  $(ECHO) "WARNING: HOTSPOT_SERVER_PATH does not point to valid HotSpot .pdb files. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1099
	    "        These files are optional and aid in the debugging of the JVM. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1100
	    "        Please check your access to \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1101
	    "          $(HOTSPOT_SERVER_PATH)/jvm.pdb \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1102
	    "        and/or check your value of ALT_HOTSPOT_SERVER_PATH. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1103
	    "" >> $(WARNING_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1104
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1105
endif	
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1106
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1107
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1108
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1109
# Check for existence of misc Hotspot imported files
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1110
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1111
HOTSPOT_INCLUDE_FILE_LIST  = jvmti.h
4808
37f605425f74 6580131: 3/4 CompiledMethodLoad events don't produce the expected extra notifications to describe inlining
dcubed
parents: 4665
diff changeset
  1112
HOTSPOT_INCLUDE_FILE_LIST  += jvmticmlr.h
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1113
#HOTSPOT_INCLUDE_FILE_LIST += jni.h jni_md.h
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1114
#HOTSPOT_INCLUDE_FILE_LIST += jvm.h jvm_md.h
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1115
#HOTSPOT_INCLUDE_FILE_LIST += jmm.h
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1116
TMP_SDK_INCLUDE_FILE_LIST=$(HOTSPOT_INCLUDE_FILE_LIST:%.h=$(TEMPDIR)/%.h)
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1117
TMP_SDK_INCLUDE_FILE_DIFFS=$(HOTSPOT_INCLUDE_FILE_LIST:%.h=$(TEMPDIR)/%.hdiffs)
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1118
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1119
# These include files must have a pattern: 'version: MAJOR.MINOR.MICRO'
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1120
#    where MACRO, MINOR, and MICRO are numbers, e.g. 1.0.1, 0.2.90, etc.
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1121
#    The critical version we are checking is MAJOR.MINOR, we print all three
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1122
#    when we detect an error.
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1123
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1124
TMP_SDK_INCLUDE_FIND_VERSION= $(EGREP) 'version:'
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1125
TMP_SDK_INCLUDE_GET_VERSION= $(TMP_SDK_INCLUDE_FIND_VERSION) | \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1126
		$(SED) -e 's@.*\([0-9][0-9]*\.[0-9][0-9]*\)\.[0-9].*@\1@'
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1127
TMP_SDK_INCLUDE_GET_FULL_VERSION= $(TMP_SDK_INCLUDE_FIND_VERSION) | \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1128
		$(SED) -e 's@.*\([0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\).*@\1@'
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1129
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1130
# Compare an interface file (Rule creates 2 temp files: %.h and %.h.IMPORT)
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1131
#    Files jvm.h, jvm_md.h and jmm.h are special in that they are not publicly 
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1132
#    exported but do represent VM interfaces used by the rest of the jdk.
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1133
#    So these 3 will not be found in a promoted build and can only
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1134
#    be checked when this represents a full control build (i.e. the
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1135
#    HOTSPOT_IMPORT_PATH includes these files in it's 'include' directory).
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1136
$(TEMPDIR)/%.h: $(SHARE_SRC)/javavm/export/%.h
4665
d14dc3d9e1fa 6911737: Module build: generate modules with native libraries and any other files not in jar
mchung
parents: 3742
diff changeset
  1137
	@$(install-non-module-file)
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1138
	@$(RM) $@.IMPORT
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1139
	@if [ -r $(HOTSPOT_IMPORT_PATH)/include/$(@F) ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1140
	  $(CP) $(HOTSPOT_IMPORT_PATH)/include/$(@F) $@.IMPORT ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1141
	elif [ "$(@F)" != "jvm.h" -a "$(@F)" != "jmm.h" ] ; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1142
	  $(ECHO) "WARNING: HOTSPOT_IMPORT_PATH does not contain the interface file $(@F). \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1143
	    "        Check your value of ALT_HOTSPOT_IMPORT_PATH. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1144
	    "" >> $(WARNING_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1145
	  $(CP) $< $@.IMPORT; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1146
	else \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1147
	  $(CP) $< $@.IMPORT; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1148
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1149
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1150
$(TEMPDIR)/%.h: $(PLATFORM_SRC)/javavm/export/%.h
4665
d14dc3d9e1fa 6911737: Module build: generate modules with native libraries and any other files not in jar
mchung
parents: 3742
diff changeset
  1151
	@$(install-non-module-file)
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1152
	@$(RM) $@.IMPORT
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1153
	@if [ -r $(HOTSPOT_IMPORT_PATH)/include/$(PLATFORM_INCLUDE_NAME)/$(@F) ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1154
	  $(CP) $(HOTSPOT_IMPORT_PATH)/include/$(PLATFORM_INCLUDE_NAME)/$(@F) $@.IMPORT ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1155
	elif [ "$(@F)" != "jvm_md.h" ] ; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1156
	  $(ECHO) "WARNING: HOTSPOT_IMPORT_PATH does not contain the interface file $(@F). \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1157
	    "        Check your value of ALT_HOTSPOT_IMPORT_PATH. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1158
	    "" >> $(WARNING_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1159
	  $(CP) $< $@.IMPORT; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1160
	else \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1161
	  $(CP) $< $@.IMPORT; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1162
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1163
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1164
# Compares the two tempfiles: %.h and %.h.IMPORT, answer in %.hdiffs
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1165
#   Note: Putting anything into the hdiffs file will trigger generic IMPORT
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1166
#         warning message in hotspot_import_include.
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1167
#   First checks the major.minor versions, the micro number can differ.
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1168
#   Second checks the full version.
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1169
#   Lastly does a full diff if the full version differs or it has no version
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1170
$(TEMPDIR)/%.hdiffs: $(TEMPDIR)/%.h
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1171
	@$(prep-target)
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1172
	@$(TOUCH) $@
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1173
	@if [ "`$(CAT) $<        | $(TMP_SDK_INCLUDE_GET_VERSION)`" != \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1174
	      "`$(CAT) $<.IMPORT | $(TMP_SDK_INCLUDE_GET_VERSION)`" ] ; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1175
	    $(ECHO) "WARNING: The file $(<F) is not the same interface as the VM version.\n " \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1176
	      "        this workspace has $(<F) `$(CAT) $< | $(TMP_SDK_INCLUDE_GET_FULL_VERSION)` and \n " \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1177
	      "        HOTSPOT_IMPORT_PATH contains $(<F) `$(CAT) $<.IMPORT | $(TMP_SDK_INCLUDE_GET_FULL_VERSION)` \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1178
	    "" >> $(WARNING_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1179
	     $(ECHO) "Version mis-match" > $@ ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1180
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1181
	@if [ "`$(CAT) $<        | $(TMP_SDK_INCLUDE_GET_FULL_VERSION)`" != \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1182
               "`$(CAT) $<.IMPORT | $(TMP_SDK_INCLUDE_GET_FULL_VERSION)`" ] ; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1183
          $(RM) $<.filtered  $<.IMPORT.filtered; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1184
          $(EGREP) -v 'VERSION' $< > $<.filtered; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1185
          $(EGREP) -v 'VERSION' $<.IMPORT > $<.IMPORT.filtered; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1186
          ($(DIFF) -w $<.filtered $<.IMPORT.filtered || exit 0) >> $@ ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1187
        elif [ "`$(CAT) $< | $(TMP_SDK_INCLUDE_FIND_VERSION)`" = "" ] ; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1188
          $(RM) $<.filtered  $<.IMPORT.filtered; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1189
          $(EGREP) -v '@\(#\)' $< > $<.filtered; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1190
          $(EGREP) -v '@\(#\)' $<.IMPORT > $<.IMPORT.filtered; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1191
          ($(DIFF) -w $<.filtered $<.IMPORT.filtered || exit 0) >> $@ ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1192
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1193
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1194
# Verify all imported hotspot files
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1195
sane-hotspot_import:: sane-hotspot_import_dir sane-hotspot_import_include
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1196
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1197
# Verify the base directory exists
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1198
sane-hotspot_import_dir:
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1199
	@$(RM) $(TMP_SDK_INCLUDE_FILE_DIFFS)
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1200
	@$(RM) $(TMP_SDK_INCLUDE_FILE_LIST)
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1201
	@if [ ! -d "$(HOTSPOT_IMPORT_PATH)" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1202
	    $(ECHO) "WARNING: The directory HOTSPOT_IMPORT_PATH=$(HOTSPOT_IMPORT_PATH) \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1203
	      "      does not exist, check your value of ALT_HOTSPOT_IMPORT_PATH. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1204
	      "" >> $(WARNING_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1205
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1206
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1207
# Verify hotspot include files
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1208
sane-hotspot_import_include: $(TMP_SDK_INCLUDE_FILE_LIST) $(TMP_SDK_INCLUDE_FILE_DIFFS)
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1209
	@if [ "`$(CAT) $(TMP_SDK_INCLUDE_FILE_DIFFS)`" != "" ] ; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1210
	  $(ECHO) "WARNING: Possible HotSpot VM interface conflict. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1211
	    "        HOTSPOT_IMPORT_PATH is used to import files from the VM build. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1212
	    "        It is also used to verify that any copied files are consistent between \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1213
	    "        these two components. It has been detected that one or more of the \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1214
	    "        VM interface files inside this workspace may not match the interfaces \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1215
	    "        exported by the VM, or the VM versions could not be found. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1216
	    "        The list of VM interface files is: \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1217
	    "            $(HOTSPOT_INCLUDE_FILE_LIST). \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1218
	    "        This workspace has copies of these files at: \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1219
	    "          $(SHARE_SRC)/javavm/export and $(PLATFORM_SRC)/javavm/export \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1220
	    "        for build purposes, and they should contain the same interfaces \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1221
	    "        as the VM versions imported from: \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1222
	    "          \$$(HOTSPOT_IMPORT_PATH)/include \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1223
	    "               (i.e. $(HOTSPOT_IMPORT_PATH)/include) \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1224
	    "        If an interface indeed doesn't match, then the use of this interface \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1225
	    "        at JDK runtime could cause serious errors. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1226
	    "" >> $(WARNING_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1227
	    for i in $(TMP_SDK_INCLUDE_FILE_DIFFS); do \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1228
		if [ -s $$i ] ; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1229
		  $(ECHO) " " >> $(WARNING_FILE); \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1230
		  $(ECHO) "VM Interface Differences: $$i" >> $(WARNING_FILE); \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1231
		  $(CAT) $$i >> $(WARNING_FILE); \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1232
		  $(ECHO) " " >> $(WARNING_FILE); \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1233
		fi; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1234
	    done; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1235
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1236
	@$(RM) $(TMP_SDK_INCLUDE_FILE_DIFFS)
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1237
	@$(RM) $(TMP_SDK_INCLUDE_FILE_LIST)
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1238
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1239
# The JDI-SA feature is not currently released on some platforms.
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1240
# See the Defs-<arch>.gmk files.
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1241
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1242
ifeq ($(INCLUDE_SA), true)
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1243
# Verify that hotspot Serviceability Agent files are present.  To keep 
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1244
# it simple, we will just check for one of them.  The others have arch 
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1245
# dependent paths.
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1246
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1247
sane-hotspot_import::
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1248
	@if [ ! -r  $(HOTSPOT_IMPORT_PATH)/lib/sa-jdi.jar ] ; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1249
	  $(ECHO) "WARNING: File $(HOTSPOT_IMPORT_PATH)/lib/sa-jdi.jar does not exist.\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1250
	    "        The JDI binding for the Serviceability Agent will not be included in the build.\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1251
	    "        Please check your access to\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1252
	    "          $(HOTSPOT_IMPORT_PATH)/lib/sa-jdi.jar\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1253
	    "        and/or check your value of ALT_HOTSPOT_IMPORT_PATH.\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1254
	    "" >> $(WARNING_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1255
	 fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1256
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1257
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1258
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1259
# Check the ant version
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1260
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1261
ANT_CHECK :=$(call CheckVersions,$(ANT_VER),$(REQUIRED_ANT_VER))
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1262
sane-ant_version:
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1263
	@if [ "$(ANT_CHECK)" != "same" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1264
	      -a "$(ANT_CHECK)" != "newer" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1265
	  $(ECHO) "WARNING: The version of ant being used is older than \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1266
	    "      the required version of '$(REQUIRED_ANT_VER)'. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1267
	    "      The version of ant found was '$(ANT_VER)'. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1268
	    "" >> $(WARNING_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1269
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1270
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1271
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1272
# Check the zip file version
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1273
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1274
ZIP_CHECK :=$(call CheckVersions,$(ZIP_VER),$(REQUIRED_ZIP_VER))
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1275
sane-zip_version: sane-unzip_version
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1276
	@if [ "$(ZIP_CHECK)" != "same" -a "$(ZIP_CHECK)" != "newer" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1277
	  $(ECHO) "WARNING: The version of zip being used is older than \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1278
	    "      the required version of '$(REQUIRED_ZIP_VER)'. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1279
	    "      The version of zip found was '$(ZIP_VER)'. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1280
	    "" >> $(WARNING_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1281
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1282
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1283
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1284
# Check the unzip file version
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1285
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1286
UNZIP_CHECK :=$(call CheckVersions,$(UNZIP_VER),$(REQUIRED_UNZIP_VER))
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1287
sane-unzip_version:
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1288
	@if [ "$(UNZIP_CHECK)" != "same" -a "$(UNZIP_CHECK)" != "newer" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1289
	  $(ECHO) "WARNING: The version of unzip being used is older than \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1290
	    "      the required version of '$(REQUIRED_UNZIP_VER)'. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1291
	    "      The version of unzip found was '$(UNZIP_VER)'. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1292
	    "" >> $(WARNING_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1293
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1294
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1295
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1296
# Check for windows DirectX sdk directory
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1297
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1298
sane-dxsdk:
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1299
ifeq ($(PLATFORM), windows)
887
0aab8d3fa11a 6725214: D3D: forward-port the new pipeline from 6u10
tdv
parents: 308
diff changeset
  1300
	@if [ ! -r $(DXSDK_INCLUDE_PATH)/d3d9.h  ]; then \
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1301
	$(ECHO) "ERROR: You do not have access to a valid DirectX SDK Include dir.\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1302
	  "      The value of DXSDK_INCLUDE_PATH must point a valid DX SDK dir.\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1303
	  "      Please check your access to \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1304
	  "          $(DXSDK_INCLUDE_PATH) \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1305
	  "      and/or check your value of ALT_DXSDK_PATH or ALT_DXSDK_INCLUDE_PATH.\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1306
	  "      Microsoft DirectX 9 SDK (Summer 2004 Update or newer) can be downloaded from the following location:\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1307
	  "          http://msdn.microsoft.com/library/default.asp?url=/downloads/list/directx.asp\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1308
	  "      Or  http://www.microsoft.com/directx\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1309
	  "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1310
	else \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1311
	  if [ ! "$(DXSDK_VER)" = "$(REQUIRED_DXSDK_VER)" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1312
	  $(ECHO) "ERROR: The DirectX SDK must be version $(REQUIRED_DXSDK_VER).\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1313
	    "      $(YOU_ARE_USING) DirectX SDK version: $(DXSDK_VER)\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1314
	    "      The DirectX SDK was obtained from the following location: \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1315
	    "          $(DXSDK_PATH) \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1316
	    "      Please change your DirectX SDK. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1317
	    "      Microsoft DirectX 9 SDK (Summer 2004 Update or newer) can be downloaded from the following location:\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1318
	    "          http://msdn.microsoft.com/library/default.asp?url=/downloads/list/directx.asp\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1319
	    "      Or  http://www.microsoft.com/directx\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1320
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1321
	  else \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1322
	    if [ -r $(DXSDK_INCLUDE_PATH)/basetsd.h ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1323
              if [ `$(EGREP) -c __int3264 $(DXSDK_INCLUDE_PATH)/basetsd.h` -ne 0 ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1324
	      $(ECHO) "WARNING: The DirectX SDK Include directory contains a newer basetsd.h,\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1325
		"      which may indicate that you're using an incorrect version of DirectX SDK.\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1326
		"      This may result in a build failure.\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1327
		"      The DirectX SDK Include dir was obtained from the following location:\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1328
		" 	  $(DXSDK_INCLUDE_PATH) \n" \
887
0aab8d3fa11a 6725214: D3D: forward-port the new pipeline from 6u10
tdv
parents: 308
diff changeset
  1329
		"      Please change your DirectX SDK to version 9 (Summer 2004 Update or newer).\n" \
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1330
	        "      Microsoft DirectX 9 SDK can be downloaded from the following location:\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1331
	        "          http://msdn.microsoft.com/library/default.asp?url=/downloads/list/directx.asp\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1332
		"      Or  http://www.microsoft.com/directx\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1333
  		"" >> $(WARNING_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1334
	      fi \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1335
	    fi \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1336
	  fi \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1337
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1338
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1339
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1340
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1341
# Check the linker version(s)
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1342
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1343
ifeq ($(PLATFORM), windows)
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1344
  LINK_CHECK  :=$(call CheckVersions,$(LINK_VER),$(REQUIRED_LINK_VER))
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1345
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1346
sane-link:
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1347
ifdef LINK_VER
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1348
	@if [ "$(LINK_CHECK)" = "missing" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1349
	  $(ECHO) "ERROR: The Linker version is undefined. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1350
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1351
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1352
	@if [ "$(LINK_CHECK)" != "same" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1353
	  $(ECHO) "WARNING: To build Java 2 SDK $(JDK_VERSION) you need : \n" \
2186
53da56fa3bf9 6816311: Changes to allow builds with latest Windows SDK 6.1 on 64bit Windows 2003
ohair
parents: 2158
diff changeset
  1354
	    "      $(REQUIRED_COMPILER_VERSION) - link.exe version \"$(REQUIRED_LINK_VER)\" \n" \
53da56fa3bf9 6816311: Changes to allow builds with latest Windows SDK 6.1 on 64bit Windows 2003
ohair
parents: 2158
diff changeset
  1355
	      "      Specifically the $(REQUIRED_COMPILER_NAME) link.exe. \n " \
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1356
	    "      $(YOU_ARE_USING) Linker version \"$(LINK_VER)\" \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1357
	    "" >> $(WARNING_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1358
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1359
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1360
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1361
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1362
# Check the compiler version(s)
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1363
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1364
CC_CHECK  :=$(call CheckVersions,$(CC_VER),$(REQUIRED_CC_VER))
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1365
sane-compiler: sane-link
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1366
	@if [ "$(CC_CHECK)" = "missing" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1367
	  $(ECHO) "ERROR: The Compiler version is undefined. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1368
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1369
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1370
ifndef OPENJDK
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1371
	@if [ "$(CC_CHECK)" != "same" ]; then \
2186
53da56fa3bf9 6816311: Changes to allow builds with latest Windows SDK 6.1 on 64bit Windows 2003
ohair
parents: 2158
diff changeset
  1372
	      $(ECHO) "WARNING: The $(PLATFORM) compiler is not version $(REQUIRED_COMPILER_VERSION) $(REQUIRED_CC_VER) \n" \
53da56fa3bf9 6816311: Changes to allow builds with latest Windows SDK 6.1 on 64bit Windows 2003
ohair
parents: 2158
diff changeset
  1373
	      "      Specifically the $(REQUIRED_COMPILER_NAME) compiler. \n " \
53da56fa3bf9 6816311: Changes to allow builds with latest Windows SDK 6.1 on 64bit Windows 2003
ohair
parents: 2158
diff changeset
  1374
	      "      $(YOU_ARE_USING) $(COMPILER_VERSION): $(CC_VER) \n" \
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1375
	      "      The compiler was obtained from the following location: \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1376
	      "          $(COMPILER_PATH) \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1377
	      "" >> $(WARNING_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1378
         fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1379
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1380
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1381
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1382
# Check that ALSA headers and libs are installed and 
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1383
# that the header has the right version. We only
2158
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
  1384
# need /usr/include/alsa/version.h and /usr/lib/libasound.so
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1385
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1386
2158
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
  1387
ifdef REQUIRED_ALSA_VERSION
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
  1388
  ALSA_CHECK := $(call CheckVersions,$(ALSA_VERSION),$(REQUIRED_ALSA_VERSION))
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1389
endif
2158
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
  1390
sane-alsa-headers:
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
  1391
ifdef REQUIRED_ALSA_VERSION
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
  1392
        if [ "$(ALSA_CHECK)" != "same" -a "$(ALSA_CHECK)" != "newer"  ] ; then \
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
  1393
	    $(ECHO) "ERROR: The ALSA version must be $(REQUIRED_ALSA_VERSION) or higher. \n" \
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
  1394
	      "      You have the following ALSA version installed: $${alsa_version) \n" \
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1395
	      "      Please reinstall ALSA (drivers and lib). You can download \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1396
	      "      the source distribution from http://www.alsa-project.org \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1397
	      "      or go to http://www.freshrpms.net/docs/alsa/ for precompiled RPM packages. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1398
	      "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1399
	  fi \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1400
	else \
2158
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
  1401
	  $(ECHO) "ERROR: You seem to not have installed ALSA $(REQUIRED_ALSA_VERSION) or higher. \n" \
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1402
	  "      Please install ALSA (drivers and lib). You can download the \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1403
	  "      source distribution from http://www.alsa-project.org or go to \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1404
	  "      http://www.freshrpms.net/docs/alsa/ for precompiled RPM packages. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1405
	  "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1406
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1407
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1408
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1409
# If a sanity file doesn't exist, just make sure it's dir exists
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1410
$(SANITY_FILES):
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1411
	-@$(prep-target)
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1412
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1413
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1414
# dump out the variable settings...
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1415
######################################################
2158
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
  1416
sane-settings::
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1417
	@$(ECHO)  >> $(MESSAGE_FILE)
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1418
	@$(ECHO) $(ALL_SETTINGS)  >> $(MESSAGE_FILE)
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1419
	@$(ECHO)  >> $(MESSAGE_FILE)
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1420
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1421
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1422
# Check for existence of DEPLOY_MSSDK on windows
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1423
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1424
sane-mssdk_path:
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1425
ifeq ($(PLATFORM), windows)
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1426
	@if [ -z "$(DEPLOY_MSSDK)" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1427
	  $(ECHO) "WARNING: Your DEPLOY_MSSDK setting is empty.\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1428
	    "        It is recommended to set ALT_DEPLOY_MSSDK.\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1429
	    "" >> $(WARNING_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1430
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1431
	@if [ ! -r "$(DEPLOY_MSSDK)" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1432
	  $(ECHO) "ERROR: You do not have a valid DEPLOY_MSSDK setting. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1433
	    "      Please check your access to \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1434
	    "          $(DEPLOY_MSSDK) \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1435
	    "      and/or check your value of ALT_DEPLOY_MSSDK. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1436
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1437
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1438
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1439
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1440
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1441
# Check for existence of INSTALL_MSSDK on windows
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1442
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1443
sane-install-mssdk_path:
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1444
ifeq ($(PLATFORM), windows)
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1445
	@if [ -z "$(INSTALL_MSSDK)" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1446
	  $(ECHO) "WARNING: Your INSTALL_MSSDK setting is empty.\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1447
	    "        It is recommended to set ALT_INSTALL_MSSDK.\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1448
	    "" >> $(WARNING_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1449
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1450
	@if [ ! -r "$(INSTALL_MSSDK)" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1451
	  $(ECHO) "ERROR: You do not have a valid INSTALL_MSSDK setting. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1452
	    "      Please check your access to \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1453
	    "          $(INSTALL_MSSDK) \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1454
	    "      and/or check your value of ALT_INSTALL_MSSDK. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1455
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1456
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1457
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1458
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1459
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1460
# Check for existence of INSTALL_MSIVAL2 on windows
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1461
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1462
sane-install-msival2_path:
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1463
ifeq ($(PLATFORM), windows)
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1464
	@if [ -z "$(INSTALL_MSIVAL2)" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1465
	  $(ECHO) "WARNING: Your INSTALL_MSIVAL2 setting is empty.\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1466
	    "        It is recommended to set ALT_INSTALL_MSIVAL2.\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1467
	    "" >> $(WARNING_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1468
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1469
	@if [ ! -r "$(INSTALL_MSIVAL2)" ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1470
	  $(ECHO) "ERROR: You do not have a valid INSTALL_MSIVAL2 setting. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1471
	    "      Please check your access to \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1472
	    "          $(INSTALL_MSIVAL2) \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1473
	    "      and/or check your value of ALT_INSTALL_MSIVAL2. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1474
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1475
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1476
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1477
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1478
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1479
# Check the Solaris GNU c++ compiler for solaris plugin
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1480
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1481
sane-gcc-compiler:
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1482
ifeq ($(PLATFORM), solaris)
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1483
  ifndef OPENJDK
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1484
    @if [ -r $(GCC_COMPILER_PATH) ]; then \
2158
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
  1485
	  if [ ! "$(GCC_VER)" = $(REQUIRED_GCC_VERSION) ]; then \
68869a085470 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
ohair
parents: 1776
diff changeset
  1486
	    $(ECHO) "ERROR: The Solaris GCC compiler version must be $(REQUIRED_GCC_VERSION). \n" \
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1487
	      "      You are using the following compiler version: $(GCC_VER) \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1488
	      "      The compiler was obtained from the following location: \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1489
	      "          $(GCC_COMPILER_PATH) \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1490
	      "      Please change your compiler. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1491
	      "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1492
    fi \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1493
	else \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1494
	  $(ECHO) "ERROR: You do not have a valid GCC_COMPILER_PATH setting. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1495
	    "      Please check your access to \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1496
	    "          $(GCC_COMPILER_PATH) \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1497
	    "      and/or check your value of ALT_GCC_COMPILER_PATH. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1498
	    "      This will affect you if you build the plugin target. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1499
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1500
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1501
  endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1502
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1503
  ifeq ($(PLATFORM), linux)
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1504
    ifdef ALT_GCC29_COMPILER_PATH
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1505
	@if [ ! -x $(ALT_GCC29_COMPILER_PATH)/bin/gcc ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1506
 	    $(ECHO) "ERROR: You do not have a valid ALT_GCC29_COMPILER_PATH setting. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1507
	         "      Please check your access to \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1508
	         "      $(ALT_GCC29_COMPILER_PATH)/bin/gcc \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1509
	         "      This will affect you if you build the plugin target. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1510
	         "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1511
    fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1512
    endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1513
    ifdef ALT_GCC29_PLUGIN_LIB_PATH
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1514
	@if [ ! -r $(ALT_GCC29_PLUGIN_LIB_PATH)/libjavaplugin_oji.so ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1515
	    $(ECHO) "Error: You do not have a valid ALT_GCC29_PLUGIN_LIB_PATH setting. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1516
		        " Please check your access to \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1517
		        " $(ALT_GCC29_PLUGIN_LIB_PATH)/libjavaplugin_oji.so \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1518
		        " This will affect you if you build the plugin target, specifically for gcc 2.9 version of OJI plugin library. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1519
		        "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1520
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1521
    else
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1522
	@if [ ! -r $(GCC29_COMPILER_PATH) ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1523
	    $(ECHO) "ERROR: You do not have a valid GCC29_COMPILER_PATH setting. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1524
	    	    " Please check your access to \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1525
	    	    " $(GCC29_COMPILER_PATH) \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1526
	    	    " and/or check your value of ALT_GCC29_COMPILER_PATH. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1527
	    	    " This will affect you if you build the plugin target. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1528
	    	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1529
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1530
    endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1531
  endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1532
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1533
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1534
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1535
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1536
# MOZILLA_HEADERS_PATH must be valid
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1537
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1538
sane-mozilla:
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1539
ifeq ($(ARCH_DATA_MODEL), 32)
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1540
  ifdef ALT_MOZILLA_HEADERS_PATH
4986
25108bab43ad 6931763: sanity checks broken with latest cygwin, newer egrep -i option problems
ohair
parents: 4917
diff changeset
  1541
	@if [ `$(ECHO) $(subst \,/,$(ALT_MOZILLA_HEADERS_PATH)) | $(EGREP) -c '^([A-Za-z]:)?/'` -ne 1 ]; then \
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1542
	  $(ECHO) "ERROR: ALT_MOZILLA_HEADERS_PATH must be an Absolute Path Name, \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1543
	    "      not a Relative Path Name. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1544
	    "      The current value of ALT_MOZILLA_HEADERS_PATH is \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1545
	    "          $(ALT_MOZILLA_HEADERS_PATH) \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1546
	    "      Please fix this and continue your build. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1547
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1548
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1549
  endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1550
	@#
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1551
	@# MOZILLA_HEADERS_PATH must be valid....
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1552
	@#
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1553
  ifeq ($(PLATFORM), windows)
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1554
	@if [ ! -r $(subst \,/,$(MOZILLA_HEADERS_PATH))/mozilla_headers_18.win32/java/bool.h ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1555
	  $(ECHO) "ERROR: You do not have access to valid Mozilla header files. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1556
	    "      Please check your access to \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1557
	    "          $(subst \,/,$(MOZILLA_HEADERS_PATH))/mozilla_headers_18.win32/java/bool.h \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1558
	    "      and/or check your value of ALT_JDK_DEVTOOLS_DIR, ALT_MOZILLA_HEADERS_PATH, \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1559
	    "	   and on Windows, ALT_JDK_JAVA_DRIVE. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1560
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1561
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1562
  else
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1563
	@if [ ! -r $(subst \,/,$(MOZILLA_HEADERS_PATH))/mozilla_headers_18/java/bool.h ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1564
	  $(ECHO) "ERROR: You do not have access to valid Mozilla header files. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1565
	    "      Please check your access to \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1566
	    "          $(subst \,/,$(MOZILLA_HEADERS_PATH))/mozilla_headers_18/java/bool.h \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1567
	    "      and/or check your value of ALT_JDK_DEVTOOLS_DIR, ALT_MOZILLA_HEADERS_PATH, \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1568
	    "" >> $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1569
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1570
  endif
3111
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1571
	@#
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1572
	@# Check for presence of headers required for new Java Plug-In ("plugin2")
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1573
	@#
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1574
	@if [ ! -r $(subst \,/,$(MOZILLA_HEADERS_PATH))/plugin2_mozilla_headers/npapi.h ]; then \
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1575
	  $(ECHO) "ERROR: You do not have access to valid Mozilla header files for the new Java Plug-In. \n" \
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1576
	    "      Please check your access to \n" \
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1577
	    "          $(subst \,/,$(MOZILLA_HEADERS_PATH))/plugin2_mozilla_headers/npapi.h \n" \
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1578
	    "      and/or check your value of ALT_JDK_DEVTOOLS_DIR, ALT_MOZILLA_HEADERS_PATH, \n" \
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1579
	    "" >> $(ERROR_FILE) ; \
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1580
	fi
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1581
endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1582
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1583
142
f78032e8a30b 6627817: Remove ^M characters in all files (Makefiles too)
ohair
parents: 140
diff changeset
  1584
######################################################
3111
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1585
# Make sure Java Kernel VM is accessible
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1586
######################################################
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1587
sane-kernel-vm:
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1588
ifeq ($(PLATFORM), windows)
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1589
  ifeq ($(ARCH_DATA_MODEL), 32)
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1590
	@if [ ! -r $(HOTSPOT_KERNEL_PATH)/jvm.dll ]; then \
3113
f0bf2ece88e1 6852646: JDK 7 cannot build w/o ALT_HOTSPOT_KERNEL_PATH set.
herrick
parents: 3112
diff changeset
  1591
	    $(ECHO) "WARNING: Your HOTSPOT_IMPORT_PATH does not include a Kernel VM... \n" \
f0bf2ece88e1 6852646: JDK 7 cannot build w/o ALT_HOTSPOT_KERNEL_PATH set.
herrick
parents: 3112
diff changeset
  1592
		    "     The kernel installer may not be built (unless hotspot is also). \n" \
3111
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1593
		    "     $(HOTSPOT_KERNEL_PATH)/jvm.dll \n" \
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1594
		    "     Please check the value of ALT_HOTSPOT_IMPORT_PATH. \n" \
3113
f0bf2ece88e1 6852646: JDK 7 cannot build w/o ALT_HOTSPOT_KERNEL_PATH set.
herrick
parents: 3112
diff changeset
  1595
		    >> $(WARNING_FILE) ; \
3111
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1596
	fi
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1597
  endif
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1598
endif
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1599
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1600
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1601
######################################################
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1602
# SECURITY_BASELINE_131 test
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1603
######################################################
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1604
security_baseline_131:
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1605
ifeq ($(PLATFORM), windows)
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1606
	@if [ -z "$(SECURITY_BASELINE_131)" ]; then \
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1607
	    $(ECHO) "WARNING: Your SECURITY_BASELINE_131 setting is empty.\n" \
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1608
		"        Setting it to the default value of 1.3.1_20.\n" \
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1609
		"        It is recommended to set SECURITY_BASELINE_131.\n" \
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1610
		"" >> $(WARNING_FILE) ; \
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1611
	fi
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1612
endif
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1613
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1614
######################################################
142
f78032e8a30b 6627817: Remove ^M characters in all files (Makefiles too)
ohair
parents: 140
diff changeset
  1615
# SECURITY_BASELINE_142 test
f78032e8a30b 6627817: Remove ^M characters in all files (Makefiles too)
ohair
parents: 140
diff changeset
  1616
######################################################
f78032e8a30b 6627817: Remove ^M characters in all files (Makefiles too)
ohair
parents: 140
diff changeset
  1617
security_baseline_142:
f78032e8a30b 6627817: Remove ^M characters in all files (Makefiles too)
ohair
parents: 140
diff changeset
  1618
ifeq ($(PLATFORM), windows)
f78032e8a30b 6627817: Remove ^M characters in all files (Makefiles too)
ohair
parents: 140
diff changeset
  1619
	@if [ -z "$(SECURITY_BASELINE_142)" ]; then \
f78032e8a30b 6627817: Remove ^M characters in all files (Makefiles too)
ohair
parents: 140
diff changeset
  1620
	    $(ECHO) "WARNING: Your SECURITY_BASELINE_142 setting is empty.\n" \
f78032e8a30b 6627817: Remove ^M characters in all files (Makefiles too)
ohair
parents: 140
diff changeset
  1621
		"        Setting it to the default value of 1.4.2_10.\n" \
f78032e8a30b 6627817: Remove ^M characters in all files (Makefiles too)
ohair
parents: 140
diff changeset
  1622
		"        It is recommended to set SECURITY_BASELINE_142.\n" \
f78032e8a30b 6627817: Remove ^M characters in all files (Makefiles too)
ohair
parents: 140
diff changeset
  1623
		"" >> $(WARNING_FILE) ; \
f78032e8a30b 6627817: Remove ^M characters in all files (Makefiles too)
ohair
parents: 140
diff changeset
  1624
	fi
f78032e8a30b 6627817: Remove ^M characters in all files (Makefiles too)
ohair
parents: 140
diff changeset
  1625
endif
f78032e8a30b 6627817: Remove ^M characters in all files (Makefiles too)
ohair
parents: 140
diff changeset
  1626
f78032e8a30b 6627817: Remove ^M characters in all files (Makefiles too)
ohair
parents: 140
diff changeset
  1627
######################################################
f78032e8a30b 6627817: Remove ^M characters in all files (Makefiles too)
ohair
parents: 140
diff changeset
  1628
# SECURITY_BASELINE_150 test
f78032e8a30b 6627817: Remove ^M characters in all files (Makefiles too)
ohair
parents: 140
diff changeset
  1629
######################################################
f78032e8a30b 6627817: Remove ^M characters in all files (Makefiles too)
ohair
parents: 140
diff changeset
  1630
security_baseline_150:
f78032e8a30b 6627817: Remove ^M characters in all files (Makefiles too)
ohair
parents: 140
diff changeset
  1631
ifeq ($(PLATFORM), windows)
f78032e8a30b 6627817: Remove ^M characters in all files (Makefiles too)
ohair
parents: 140
diff changeset
  1632
	@if [ -z "$(SECURITY_BASELINE_150)" ]; then \
f78032e8a30b 6627817: Remove ^M characters in all files (Makefiles too)
ohair
parents: 140
diff changeset
  1633
	    $(ECHO) "WARNING: Your SECURITY_BASELINE_150 setting is empty.\n" \
f78032e8a30b 6627817: Remove ^M characters in all files (Makefiles too)
ohair
parents: 140
diff changeset
  1634
		"        Setting it to the default value of 1.5.0_07.\n" \
f78032e8a30b 6627817: Remove ^M characters in all files (Makefiles too)
ohair
parents: 140
diff changeset
  1635
		"        It is recommended to set SECURITY_BASELINE_150.\n" \
f78032e8a30b 6627817: Remove ^M characters in all files (Makefiles too)
ohair
parents: 140
diff changeset
  1636
		"" >> $(WARNING_FILE) ; \
f78032e8a30b 6627817: Remove ^M characters in all files (Makefiles too)
ohair
parents: 140
diff changeset
  1637
	fi
f78032e8a30b 6627817: Remove ^M characters in all files (Makefiles too)
ohair
parents: 140
diff changeset
  1638
endif
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1639
3111
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1640
######################################################
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1641
# SECURITY_BASELINE_160 test
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1642
######################################################
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1643
security_baseline_160:
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1644
ifeq ($(PLATFORM), windows)
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1645
	@if [ -z "$(SECURITY_BASELINE_160)" ]; then \
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1646
	    $(ECHO) "WARNING: Your SECURITY_BASELINE_160 setting is empty.\n" \
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1647
		"        Setting it to the default value of 1.6.0_11.\n" \
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1648
		"        It is recommended to set SECURITY_BASELINE_160.\n" \
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1649
		"" >> $(WARNING_FILE) ; \
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1650
	fi
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1651
endif
fefdeafb7ab9 6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
herrick
parents: 2660
diff changeset
  1652
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1653
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1654
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1655
# this should be the last rule in any target's sanity rule.
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1656
######################################################
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1657
sane-lastrule:
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1658
ifndef EXTERNALSANITYCONTROL
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1659
	@if [ -r $(MESSAGE_FILE) ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1660
	  $(CAT) $(MESSAGE_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1661
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1662
	@if [ -r $(WARNING_FILE) ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1663
	  $(CAT) $(WARNING_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1664
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1665
	@if [ "x$(INSANE)" != x ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1666
	  $(ECHO) "INSANE mode requested. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1667
	    "Sanity will not force a build termination, even with errors.\n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1668
	    "" >> $(ERROR_FILE); \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1669
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1670
	@if [ -r $(ERROR_FILE) ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1671
	  if [ "x$(INSANE)" = x ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1672
	    $(ECHO) "Exiting because of the above error(s). \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1673
	      "">> $(ERROR_FILE); \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1674
	  fi ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1675
	  $(CAT) $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1676
	  if [ "x$(INSANE)" = x ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1677
	    exit 1 ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1678
	  fi ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1679
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1680
ifdef PEDANTIC
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1681
	@if [ -r $(WARNING_FILE) ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1682
	  $(ECHO) "PEDANTIC mode requested. \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1683
	    "Exiting because of the above warning(s). \n" \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1684
	    "" >> $(ERROR_FILE); \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1685
	  $(CAT) $(ERROR_FILE) ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1686
	  exit 1 ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1687
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1688
endif # PEDANTIC
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1689
	@if [ ! -r $(ERROR_FILE) ]; then \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1690
	  $(ECHO) "Sanity check passed." ; \
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1691
	fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1692
endif #  EXTERNALSANITYCONTROL
90ce3da70b43 Initial load
duke
parents:
diff changeset
  1693