1 #
   2 # Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
   3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4 #
   5 # This code is free software; you can redistribute it and/or modify it
   6 # under the terms of the GNU General Public License version 2 only, as
   7 # published by the Free Software Foundation.  Oracle designates this
   8 # particular file as subject to the "Classpath" exception as provided
   9 # by Oracle in the LICENSE file that accompanied this code.
  10 #
  11 # This code is distributed in the hope that it will be useful, but WITHOUT
  12 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  13 # FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  14 # version 2 for more details (a copy is included in the LICENSE file that
  15 # accompanied this code).
  16 #
  17 # You should have received a copy of the GNU General Public License version
  18 # 2 along with this work; if not, write to the Free Software Foundation,
  19 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  20 #
  21 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  22 # or visit www.oracle.com if you need additional information or have any
  23 # questions.
  24 #
  25 
  26 #
  27 # Shared sanity settings file. Fills in the variable ALL_SETTINGS.
  28 #
  29 
  30 # On Windows in particular, it can happen that quotes get into the PATH
  31 #    variable. This is very bad, and must be caught early or you can
  32 #    see errors like: sh: -c: line 0: syntax error near unexpected token
  33 #
  34 ifneq ($(PATH), $(subst ",,$(PATH)))
  35   dummy1:=$(error ERROR: PATH variable contains double quotes, fix your PATH.)
  36 endif
  37 ifneq ($(PATH), $(subst ',,$(PATH)))
  38   dummy1:=$(error ERROR: PATH variable contains single quotes, fix your PATH.)
  39 endif
  40 
  41 # Used to add a heading to ALL_SETTINGS
  42 define addHeading
  43 "\n$1:\n"
  44 endef
  45 
  46 # Used to add a line to ALL_SETTINGS for an optional value
  47 #   (need if test for windows which has issues with ; characters in values)
  48 define addOptionalSetting
  49 $(if $($1)," $1 = $($1)\n"," $1 = $($1)\n")
  50 endef
  51 
  52 # Used to add a line to ALL_SETTINGS for something that must have a value
  53 define addRequiredSetting
  54 $(if $($1)," $1 = $($1)\n",$(warning WARNING: $1 should not be empty [Sanity-Settings.gmk]))
  55 endef
  56 
  57 # Used to add a line to ALL_SETTINGS for something that must have a value
  58 define addRequiredVersionSetting
  59 $(if $($1)," $1 = $($1) [requires at least $(REQUIRED_$1)]\n",$(warning WARNING: $1 should not be empty [Sanity-Settings.gmk]))
  60 endef
  61 
  62 # Used to add a series of lines to ALL_SETTINGS
  63 define addAltSetting
  64 " $1 = $($1)\n    ALT_$1 = $(ALT_$1)\n"
  65 endef
  66 
  67 # Variable that contains a string of all information
  68 
  69 # Make sure this is a 'do it now' variable.
  70 ALL_SETTINGS:=$(call addHeading,Bootstrap Settings)
  71 ALL_SETTINGS+=$(call addAltSetting,BOOTDIR)
  72 ALL_SETTINGS+=$(call addRequiredVersionSetting,BOOT_VER)
  73 ALL_SETTINGS+=$(call addAltSetting,OUTPUTDIR)
  74 ALL_SETTINGS+=$(call addRequiredSetting,ABS_OUTPUTDIR)
  75 
  76 
  77 ALL_SETTINGS+=$(call addHeading,Build Tool Settings)
  78 ALL_SETTINGS+=$(call addAltSetting,SLASH_JAVA)
  79 ALL_SETTINGS+=$(call addRequiredSetting,VARIANT)
  80 ALL_SETTINGS+=$(call addAltSetting,JDK_DEVTOOLS_DIR)
  81 ALL_SETTINGS+=$(call addOptionalSetting,ANT_HOME)
  82 ALL_SETTINGS+=$(call addAltSetting,UNIXCOMMAND_PATH)
  83 ALL_SETTINGS+=$(call addAltSetting,COMPILER_PATH)
  84 ALL_SETTINGS+=$(call addAltSetting,DEVTOOLS_PATH)
  85 ifeq ($(PLATFORM),linux)
  86   ALL_SETTINGS+=$(call addAltSetting,UNIXCCS_PATH)
  87   ALL_SETTINGS+=$(call addAltSetting,USRBIN_PATH)
  88   ifndef OPENJDK
  89     ALL_SETTINGS+=$(call addAltSetting,GCC29_COMPILER_PATH)
  90   endif
  91 endif
  92 ifeq ($(PLATFORM),solaris)
  93   ALL_SETTINGS+=$(call addAltSetting,UNIXCCS_PATH)
  94   ifndef OPENJDK
  95     ALL_SETTINGS+=$(call addAltSetting,GCC_COMPILER_PATH)
  96   endif
  97 endif
  98 ifeq ($(PLATFORM),windows)
  99   ALL_SETTINGS+=$(call addAltSetting,MSVCRT_DLL_PATH)
 100   ifneq ($(MSVCRNN_DLL),)
 101     ALL_SETTINGS+=$(call addAltSetting,MSVCRNN_DLL_PATH)
 102   endif
 103   ALL_SETTINGS+=$(call addRequiredSetting,INCLUDE)
 104   ALL_SETTINGS+=$(call addRequiredSetting,LIB)
 105 endif
 106 ALL_SETTINGS+=$(call addOptionalSetting,COMPILER_NAME)
 107 ALL_SETTINGS+=$(call addOptionalSetting,COMPILER_VERSION)
 108 ALL_SETTINGS+=$(call addRequiredVersionSetting,CC_VER)
 109 ifeq ($(PLATFORM),solaris)
 110   ifeq ($(ARCH_DATA_MODEL), 32)
 111     ifndef OPENJDK
 112       ALL_SETTINGS+=$(call addRequiredVersionSetting,GCC_VER)
 113     endif
 114   endif
 115 endif
 116 ALL_SETTINGS+=$(call addRequiredVersionSetting,ZIP_VER)
 117 ALL_SETTINGS+=$(call addRequiredVersionSetting,UNZIP_VER)
 118 ifeq ($(PLATFORM),windows)
 119   ALL_SETTINGS+=$(call addRequiredVersionSetting,LINK_VER)
 120 endif
 121 ALL_SETTINGS+=$(call addRequiredVersionSetting,ANT_VER)
 122 ALL_SETTINGS+=$(call addRequiredSetting,TEMPDIR)
 123 
 124 
 125 ALL_SETTINGS+=$(call addHeading,Build Directives)
 126 ALL_SETTINGS+=$(call addOptionalSetting,OPENJDK)
 127 ALL_SETTINGS+=$(call addOptionalSetting,USE_HOTSPOT_INTERPRETER_MODE)
 128 ALL_SETTINGS+=$(call addOptionalSetting,PEDANTIC)
 129 ALL_SETTINGS+=$(call addOptionalSetting,DEV_ONLY)
 130 ALL_SETTINGS+=$(call addOptionalSetting,NO_DOCS)
 131 ALL_SETTINGS+=$(call addOptionalSetting,NO_IMAGES)
 132 ALL_SETTINGS+=$(call addOptionalSetting,TOOLS_ONLY)
 133 ALL_SETTINGS+=$(call addOptionalSetting,INSANE)
 134 ALL_SETTINGS+=$(call addRequiredSetting,COMPILE_APPROACH)
 135 ifeq ($(COMPILE_APPROACH), parallel)
 136   ALL_SETTINGS+=$(call addAltSetting,PARALLEL_COMPILE_JOBS)
 137 endif
 138 ALL_SETTINGS+=$(call addOptionalSetting,FASTDEBUG)
 139 ALL_SETTINGS+=$(call addRequiredSetting,COMPILER_WARNINGS_FATAL)
 140 ALL_SETTINGS+=$(call addOptionalSetting,COMPILER_WARNING_LEVEL)
 141 ALL_SETTINGS+=$(call addRequiredSetting,INCREMENTAL_BUILD)
 142 ALL_SETTINGS+=$(call addOptionalSetting,CC_HIGHEST_OPT)
 143 ALL_SETTINGS+=$(call addOptionalSetting,CC_HIGHER_OPT)
 144 ALL_SETTINGS+=$(call addOptionalSetting,CC_LOWER_OPT)
 145 ALL_SETTINGS+=$(call addOptionalSetting,CXXFLAGS)
 146 ALL_SETTINGS+=$(call addOptionalSetting,CFLAGS)
 147 
 148 ALL_SETTINGS+=$(call addOptionalSetting,BOOT_JAVA_CMD)
 149 ALL_SETTINGS+=$(call addOptionalSetting,BOOT_JAVAC_CMD)
 150 ALL_SETTINGS+=$(call addOptionalSetting,BOOT_JAR_CMD)
 151 ALL_SETTINGS+=$(call addOptionalSetting,BOOT_JARSIGNER_CMD)
 152 
 153 # These don't print out well with windows due to the ';' characters
 154 ifneq ($(PLATFORM),windows)
 155   ALL_SETTINGS+=$(call addOptionalSetting,JAVAC_CMD)
 156   ALL_SETTINGS+=$(call addOptionalSetting,JAVAH_CMD)
 157   ALL_SETTINGS+=$(call addOptionalSetting,JAVADOC_CMD)
 158 endif
 159 
 160 ALL_SETTINGS+=$(call addHeading,Build Platform Settings)
 161 ALL_SETTINGS+=$(call addRequiredSetting,USER)
 162 ALL_SETTINGS+=$(call addRequiredSetting,PLATFORM)
 163 ALL_SETTINGS+=$(call addRequiredSetting,ARCH)
 164 ALL_SETTINGS+=$(call addRequiredSetting,LIBARCH)
 165 ALL_SETTINGS+=$(call addRequiredSetting,ARCH_FAMILY)
 166 ALL_SETTINGS+=$(call addRequiredSetting,ARCH_DATA_MODEL)
 167 ALL_SETTINGS+=$(call addRequiredSetting,ARCHPROP)
 168 ifeq ($(PLATFORM),windows)
 169   ALL_SETTINGS+=$(call addRequiredSetting,PROCESSOR_ARCHITECTURE)
 170   ALL_SETTINGS+=$(call addRequiredSetting,PROCESSOR_IDENTIFIER)
 171   ifdef USING_CYGWIN
 172     ALL_SETTINGS+=$(call addRequiredSetting,USING_CYGWIN)
 173     ALL_SETTINGS+=$(call addRequiredVersionSetting,CYGWIN_VER)
 174     ALL_SETTINGS+=$(call addRequiredSetting,CYGPATH_CMD)
 175   else
 176     ALL_SETTINGS+=$(call addRequiredVersionSetting,MKS_VER)
 177     ALL_SETTINGS+=$(call addOptionalSetting,DOSNAME_CMD)
 178   endif
 179 endif
 180 ifeq ($(PLATFORM),linux)
 181   ALL_SETTINGS+=$(call addRequiredSetting,ALSA_VERSION)
 182 endif
 183 ALL_SETTINGS+=$(call addRequiredVersionSetting,OS_VERSION)
 184 ALL_SETTINGS+=$(call addOptionalSetting,OS_VARIANT_NAME)
 185 ALL_SETTINGS+=$(call addOptionalSetting,OS_VARIANT_VERSION)
 186 ALL_SETTINGS+=$(call addRequiredSetting,TEMP_FREE_SPACE)
 187 ALL_SETTINGS+=$(call addRequiredSetting,FREE_SPACE)
 188 ALL_SETTINGS+=$(call addRequiredSetting,MB_OF_MEMORY)
 189 
 190 
 191 ALL_SETTINGS+=$(call addHeading,GNU Make Settings)
 192 ALL_SETTINGS+=$(call addRequiredSetting,MAKE)
 193 ALL_SETTINGS+=$(call addRequiredVersionSetting,MAKE_VER)
 194 ALL_SETTINGS+=$(call addOptionalSetting,MAKECMDGOALS)
 195 ALL_SETTINGS+=$(call addOptionalSetting,MAKEFLAGS)
 196 ALL_SETTINGS+=$(call addRequiredSetting,SHELL)
 197 
 198 
 199 ALL_SETTINGS+=$(call addHeading,Target Build Versions)
 200 ALL_SETTINGS+=$(call addRequiredSetting,JDK_VERSION)
 201 ALL_SETTINGS+=$(call addOptionalSetting,MILESTONE)
 202 ALL_SETTINGS+=$(call addOptionalSetting,RELEASE)
 203 ALL_SETTINGS+=$(call addRequiredSetting,FULL_VERSION)
 204 ALL_SETTINGS+=$(call addOptionalSetting,BUILD_NUMBER)
 205 
 206 
 207 ALL_SETTINGS+=$(call addHeading,External File/Binary Locations)
 208 ALL_SETTINGS+=$(call addRequiredSetting,USRJDKINSTANCES_PATH)
 209 ALL_SETTINGS+=$(call addAltSetting,BUILD_JDK_IMPORT_PATH)
 210 ALL_SETTINGS+=$(call addAltSetting,JDK_IMPORT_PATH)
 211 ALL_SETTINGS+=$(call addAltSetting,LANGTOOLS_DIST)
 212 ALL_SETTINGS+=$(call addAltSetting,CORBA_DIST)
 213 ALL_SETTINGS+=$(call addAltSetting,JAXP_DIST)
 214 ALL_SETTINGS+=$(call addAltSetting,JAXWS_DIST)
 215 ALL_SETTINGS+=$(call addAltSetting,HOTSPOT_DOCS_IMPORT_PATH)
 216 ALL_SETTINGS+=$(call addAltSetting,HOTSPOT_IMPORT_PATH)
 217 ifeq ($(ARCH_DATA_MODEL), 32)
 218   ALL_SETTINGS+=$(call addAltSetting,HOTSPOT_CLIENT_PATH)
 219 endif
 220 ALL_SETTINGS+=$(call addAltSetting,HOTSPOT_SERVER_PATH)
 221 ifeq ($(PLATFORM),windows)
 222   ALL_SETTINGS+=$(call addAltSetting,HOTSPOT_LIB_PATH)
 223   ALL_SETTINGS+=$(call addRequiredSetting,DXSDK_VER)
 224   ALL_SETTINGS+=$(call addAltSetting,DXSDK_PATH)
 225   ALL_SETTINGS+=$(call addAltSetting,DXSDK_INCLUDE_PATH)
 226   ALL_SETTINGS+=$(call addAltSetting,DXSDK_LIB_PATH)
 227   ALL_SETTINGS+=$(call addAltSetting,WINDOWSSDKDIR)
 228   ifndef OPENJDK
 229     ALL_SETTINGS+=$(call addAltSetting,DEPLOY_MSSDK)
 230     ALL_SETTINGS+=$(call addAltSetting,INSTALL_MSSDK)
 231     ALL_SETTINGS+=$(call addAltSetting,WSCRIPT)
 232     ALL_SETTINGS+=$(call addAltSetting,MSICERT)
 233     ALL_SETTINGS+=$(call addAltSetting,MSITRAN)
 234     ALL_SETTINGS+=$(call addAltSetting,MSIVAL2)
 235   endif
 236 endif
 237 ALL_SETTINGS+=$(call addAltSetting,CACERTS_FILE)
 238 ifndef OPENJDK
 239   ALL_SETTINGS+=$(call addAltSetting,MOZILLA_HEADERS_PATH)
 240 endif
 241 ifneq ($(PLATFORM),windows)
 242   ALL_SETTINGS+=$(call addAltSetting,CUPS_HEADERS_PATH)
 243 endif
 244 
 245 ifdef OPENJDK
 246   ALL_SETTINGS+=$(call addHeading,OpenJDK-specific settings)
 247   ALL_SETTINGS+=$(call addAltSetting,FREETYPE_HEADERS_PATH)
 248   ALL_SETTINGS+=$(call addAltSetting,FREETYPE_LIB_PATH)
 249 endif
 250 
 251 ifdef OPENJDK
 252   ALL_SETTINGS+=$(call addHeading,Previous JDK Settings)
 253   ALL_SETTINGS+=$(call addAltSetting,PREVIOUS_RELEASE_PATH)
 254   ALL_SETTINGS+=$(call addAltSetting,PREVIOUS_JDK_VERSION)
 255   ALL_SETTINGS+=$(call addAltSetting,PREVIOUS_JDK_FILE)
 256   ALL_SETTINGS+=$(call addAltSetting,PREVIOUS_JRE_FILE)
 257   ALL_SETTINGS+=$(call addAltSetting,PREVIOUS_RELEASE_IMAGE)
 258 endif
 259