jdk/make/common/shared/Defs-versions.gmk
author andrew
Wed, 15 Aug 2012 14:35:36 +0100
changeset 13567 b124faa29aef
parent 12047 320a714614e9
child 14342 8435a30053c1
permissions -rw-r--r--
7110151: Use underlying platform's zlib library for Java zlib support Summary: Make SYSTEM_ZLIB more flexible by using ZLIB_{CFLAGS,LIBS} and building on more than just MACOSX. Reviewed-by: sherman, alanb

#
# Copyright (c) 2009, 2011, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation.  Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#

#
# WARNING: This file is shared with other workspaces.
#

# This file needs these set: PLATFORM, ARCH_FAMILY, and ARCH_DATA_MODEL.

# Windows uses Microsoft compilers by default
ifeq ($(PLATFORM), windows)
  override CC_VERSION = msvc
endif

# Solaris uses Sun Studio compilers by default
ifeq ($(PLATFORM), solaris)
  override CC_VERSION = sun
endif

# Linux uses GNU compilers by default
ifeq ($(PLATFORM), linux)
  override CC_VERSION = gcc
endif

# Mac OS X uses LLVM by default
ifeq ($(PLATFORM), macosx)
  override CC_VERSION = llvm
endif

##########################################################################
#
# List of JDK official minimum, expected, or required versions:
#
# REQUIRED_ALSA_VERSION
#   Linux only: The ALSA sound library version expected.
#
# REQUIRED_ANT_VER
#   The minimum 'ant' version.
#
# REQUIRED_BOOT_VER
#   The minimum boot jdk version.
#
# REQUIRED_CC_VER
#   The primary C compiler version expected.
#
# REQUIRED_COMPILER_NAME
#   The long descriptive name of the compiler we should use
#
# REQUIRED_COMPILER_VERSION
#   The one word name that identifies the compilers being used.
#
# REQUIRED_CYGWIN_VER
#   Windows only: If CYGWIN is used, the minimum CYGWIN version.
#
# REQUIRED_DXSDK_VER
#   Windows only: The version of DirectX SDK expected.
#
# REQUIRED_FREETYPE_VERSION
#   If we are using freetype, the freetype version expected.
#
# REQUIRED_GCC_VER
#   Solaris and Linux only. The required version of gcc/g++ for the legacy OJI plugin.
#
# REQUIRED_LINK_VER
#   Windows only: The version of link.exe expected.
#
# REQUIRED_MAKE_VER
#   The minimum version of GNU make.
#
# REQUIRED_MKS_VER
#   Windows only: If MKS used instead of CYGWIN, the minimum version of MKS.
#
# REQUIRED_OS_VARIANT_NAME
#   The OS variation name required.
#     Solaris: Solaris or OpenSolaris
#     Windows: Windows2000, WindowsXP, Windows2003, etc.
#     Linux: Fedora, RedHat, SuSE, Ubuntu, etc.
#
# REQUIRED_OS_VARIANT_VERSION
#   The version number associated with the above OS variant name.
#     Solaris: output of uname -r
#     Windows: 5.0 for Windows2000, 5.1 for WindowsXP, 5.2 for Windows2003, etc.
#     Linux: number for the variant, e.g. 9 for Fedora 9
#
# REQUIRED_OS_VERSION
#   The formal OS version number.
#     Solaris & Windows: same as REQUIRED_OS_VARIANT_VERSION
#     Linux: the kernel version, or output of uname -r
#
# REQUIRED_UNZIP_VER
#   The minimum version of unzip.
#
# REQUIRED_ZIP_VER
#   The minimum version of unzip.
#
###########
#
# Differences in the build platform from these versions may trigger warnings
#   messages during the sanity checking when building the JDK.
#
# When building the OpenJDK most of these required or expected  versions are 
#  ignored or allowed to vary widely to accomodate the many build situations
#  of the OpenJDK.
#
##########################################################################

# Solaris specific
ifeq ($(PLATFORM), solaris)
  REQUIRED_OS_NAME            = SunOS
  REQUIRED_OS_VERSION         = 5.10
  REQUIRED_OS_VARIANT_NAME    = Solaris
  REQUIRED_OS_VARIANT_VERSION = $(REQUIRED_OS_VERSION)
  REQUIRED_COMPILER_NAME      = Sun Studio 12 Update 1
  REQUIRED_COMPILER_VERSION   = SS12u1
  # Cross-compilation compiler versions are target specific
  # so don't set a required version if cross-compiling
  ifndef CROSS_COMPILE_ARCH
    ifeq ($(CC_VERSION),sun)
      REQUIRED_CC_VER           = 5.10
    endif
    ifeq ($(CC_VERSION),gcc)
      REQUIRED_CC_VER           = 3.4.3
    endif
  endif
  REQUIRED_GCC_VER            = 2.95.2
endif

# Linux specific
ifeq ($(PLATFORM), linux)
  REQUIRED_OS_NAME            = Linux
  REQUIRED_OS_VERSION         = 2.6
  REQUIRED_OS_VARIANT_NAME    = Fedora
  REQUIRED_OS_VARIANT_VERSION = 9
  REQUIRED_ALSA_VERSION       = 0.9.1
  REQUIRED_COMPILER_NAME      = GCC4
  REQUIRED_COMPILER_VERSION   = GCC4
  REQUIRED_GCC_VER            = 2.95
  # Cross-compilation compiler versions are target specific
  # so don't set a required version if cross-compiling
  ifndef CROSS_COMPILE_ARCH
    ifeq ($(CC_VERSION),gcc)
      REQUIRED_CC_VER           = 4.3.0
    endif
    ifeq ($(CC_VERSION),sun)
      REQUIRED_CC_VER           = 5.10
    endif
  endif
endif

# Mac specific
ifeq ($(PLATFORM), macosx)
  REQUIRED_OS_NAME            = Darwin
  REQUIRED_OS_VERSION         = 11.2
  REQUIRED_OS_VARIANT_NAME    = MacOSX
  REQUIRED_OS_VARIANT_VERSION = 10.7.2
  REQUIRED_COMPILER_NAME      = GCC4
  REQUIRED_COMPILER_VERSION   = GCC4
  REQUIRED_CC_VER             = 4.2.1
endif

# Windows specific
ifeq ($(PLATFORM), windows)
  REQUIRED_OS_NAME            = Windows
  ifeq ($(ARCH_DATA_MODEL),64)
    REQUIRED_OS_VERSION       = 5.2
    REQUIRED_OS_VARIANT_NAME  = Windows2003
  else
    REQUIRED_OS_VERSION       = 5.1
    REQUIRED_OS_VARIANT_NAME  = WindowsXP
  endif
  REQUIRED_OS_VARIANT_VERSION = $(REQUIRED_OS_VERSION)
  REQUIRED_CYGWIN_VER         = 4.0
  REQUIRED_MKS_VER            = 6.1
  REQUIRED_DXSDK_VER          = 0x0900
  ifeq ($(CC_VERSION),msvc)
    REQUIRED_COMPILER_NAME    = Visual Studio 10
    REQUIRED_COMPILER_VERSION = VS2010
    REQUIRED_CC_VER           = 16.00.30319.01
    REQUIRED_LINK_VER         = 10.00.30319.01
  endif
  ifeq ($(CC_VERSION),gcc)
    REQUIRED_CC_VER           = 3.4.3
  endif
endif

# Generic
REQUIRED_ANT_VER          = 1.7.1
REQUIRED_BOOT_VER         = 1.7
REQUIRED_FREETYPE_VERSION = 2.3.0
REQUIRED_MAKE_VER         = 3.81
REQUIRED_UNZIP_VER        = 5.12
REQUIRED_ZIP_VER          = 2.2