make/common/shared/Compiler-sun.gmk

Wed, 04 Jun 2008 09:27:06 -0700

author
ohair
date
Wed, 04 Jun 2008 09:27:06 -0700
changeset 10
9eeb4966acae
parent 1
55540e827aef
child 13
c0252adbb2ab
permissions
-rw-r--r--

6563752: Build and test JDK7 with Sun Studio 12 Express compilers (prep makefiles)
Summary: Changes to support building with SS12.
Reviewed-by: tbell

duke@1 1 #
duke@1 2 # Copyright 2005 Sun Microsystems, Inc. All Rights Reserved.
duke@1 3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
duke@1 4 #
duke@1 5 # This code is free software; you can redistribute it and/or modify it
duke@1 6 # under the terms of the GNU General Public License version 2 only, as
duke@1 7 # published by the Free Software Foundation. Sun designates this
duke@1 8 # particular file as subject to the "Classpath" exception as provided
duke@1 9 # by Sun in the LICENSE file that accompanied this code.
duke@1 10 #
duke@1 11 # This code is distributed in the hope that it will be useful, but WITHOUT
duke@1 12 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
duke@1 13 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
duke@1 14 # version 2 for more details (a copy is included in the LICENSE file that
duke@1 15 # accompanied this code).
duke@1 16 #
duke@1 17 # You should have received a copy of the GNU General Public License version
duke@1 18 # 2 along with this work; if not, write to the Free Software Foundation,
duke@1 19 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
duke@1 20 #
duke@1 21 # Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
duke@1 22 # CA 95054 USA or visit www.sun.com if you need additional information or
duke@1 23 # have any questions.
duke@1 24 #
duke@1 25
duke@1 26 #
duke@1 27 # Sun Studio Compiler settings
duke@1 28 #
duke@1 29
duke@1 30 COMPILER_NAME=Sun Studio
duke@1 31
duke@1 32 # Sun Studio Compiler settings specific to Solaris
duke@1 33 ifeq ($(PLATFORM), solaris)
ohair@10 34 # FIXUP: Change to SS12 when validated
ohair@10 35 #COMPILER_VERSION=SS12
ohair@10 36 #REQUIRED_CC_VER=5.9
duke@1 37 COMPILER_VERSION=SS11
duke@1 38 REQUIRED_CC_VER=5.8
duke@1 39 CC = $(COMPILER_PATH)cc
duke@1 40 CPP = $(COMPILER_PATH)cc -E
duke@1 41 CXX = $(COMPILER_PATH)CC
duke@1 42 LINT = $(COMPILER_PATH)lint
duke@1 43 # Option used to create a shared library
duke@1 44 SHARED_LIBRARY_FLAG = -G
duke@1 45 # But gcc is still needed no matter what on 32bit
duke@1 46 ifeq ($(ARCH_DATA_MODEL), 32)
duke@1 47 REQUIRED_GCC_VER = 2.95
duke@1 48 GCC =$(GCC_COMPILER_PATH)gcc
duke@1 49 _GCC_VER :=$(shell $(GCC) -dumpversion 2>&1 )
duke@1 50 GCC_VER :=$(call GetVersion,"$(_GCC_VER)")
duke@1 51 endif
duke@1 52 endif
duke@1 53
duke@1 54 # Sun Studio Compiler settings specific to Linux
duke@1 55 ifeq ($(PLATFORM), linux)
duke@1 56 # This has not been tested
ohair@10 57 COMPILER_VERSION=SS12
ohair@10 58 REQUIRED_CC_VER=5.9
duke@1 59 CC = $(COMPILER_PATH)cc
duke@1 60 CPP = $(COMPILER_PATH)cc -E
duke@1 61 CXX = $(COMPILER_PATH)CC
duke@1 62 LINT = $(COMPILER_PATH)lint
duke@1 63 # statically link libstdc++ before C++ ABI is stablized on Linux
duke@1 64 STATIC_CXX = true
duke@1 65 ifeq ($(STATIC_CXX),true)
duke@1 66 # CC always dynamically links libstdc++, even we use "-Wl,-Bstatic -lstdc++"
duke@1 67 # We need to use cc to statically link the C++ runtime.
duke@1 68 CXX = $(COMPILER_PATH)cc
duke@1 69 else
duke@1 70 CXX = $(COMPILER_PATH)CC
duke@1 71 endif
duke@1 72 # Option used to create a shared library
duke@1 73 SHARED_LIBRARY_FLAG = -G
duke@1 74 endif
duke@1 75
duke@1 76 # Get compiler version
duke@1 77 _CC_VER :=$(shell $(CC) -V 2>&1 | $(HEAD) -n 1)
duke@1 78 CC_VER :=$(call GetVersion,"$(_CC_VER)")
duke@1 79

mercurial