1 #
2 # Copyright (c) 1999, 2011, 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
56 # Platform specific closed sources
57 ifndef OPENJDK
58 ifndef CLOSED_PLATFORM_SRC
59 CLOSED_PLATFORM_SRC = $(BUILDDIR)/../src/closed/solaris
60 endif
61 endif
62
63 # platform specific include files
64 PLATFORM_INCLUDE_NAME = $(PLATFORM)
65 PLATFORM_INCLUDE = $(INCLUDEDIR)/$(PLATFORM_INCLUDE_NAME)
66
67 # suffix used for make dependencies files.
68 DEPEND_SUFFIX = d
69 # The suffix applied to the library name for FDLIBM
70 FDDLIBM_SUFFIX = a
71 # The suffix applied to scripts (.bat for windows, nothing for unix)
72 SCRIPT_SUFFIX =
73 # CC compiler object code output directive flag value
74 CC_OBJECT_OUTPUT_FLAG = -o #trailing blank required!
75
76 # Default OBJCOPY comes from GNU Binutils on Linux:
77 DEF_OBJCOPY=/usr/bin/objcopy
78 ifdef CROSS_COMPILE_ARCH
79 # don't try to generate .debuginfo files when cross compiling
80 _JUNK_ := $(shell \
81 echo >&2 "INFO: cross compiling for ARCH $(CROSS_COMPILE_ARCH)," \
82 "skipping .debuginfo generation.")
83 OBJCOPY=
84 else
85 OBJCOPY=$(shell test -x $(DEF_OBJCOPY) && echo $(DEF_OBJCOPY))
86 ifneq ($(ALT_OBJCOPY),)
87 _JUNK_ := $(shell echo >&2 "INFO: ALT_OBJCOPY=$(ALT_OBJCOPY)")
88 # disable .debuginfo support by setting ALT_OBJCOPY to a non-existent path
89 OBJCOPY=$(shell test -x $(ALT_OBJCOPY) && echo $(ALT_OBJCOPY))
90 endif
91 endif
92
93 ifdef LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS
94 # The setting of OBJCOPY above enables the JDK build to import
95 # .debuginfo files from the HotSpot build. However, adding FDS
96 # support to the JDK build will occur in phases so a different
97 # make variable is used to indicate that a particular library
98 # supports FDS.
99
100 ifeq ($(OBJCOPY),)
101 _JUNK_ := $(shell \
102 echo >&2 "INFO: no objcopy cmd found so cannot create .debuginfo files.")
103 else
104 _JUNK_ := $(shell \
105 echo >&2 "INFO: $(OBJCOPY) cmd found so will create .debuginfo files.")
106
107 # Library stripping policies for .debuginfo configs:
108 # all_strip - strips everything from the library
109 # min_strip - strips most stuff from the library; leaves minimum symbols
110 # no_strip - does not strip the library at all
111 #
112 # Oracle security policy requires "all_strip". A waiver was granted on
113 # 2011.09.01 that permits using "min_strip" in the Java JDK and Java JRE.
114 #
115 DEF_STRIP_POLICY="min_strip"
116 ifeq ($(ALT_STRIP_POLICY),)
117 STRIP_POLICY=$(DEF_STRIP_POLICY)
118 else
119 STRIP_POLICY=$(ALT_STRIP_POLICY)
120 endif
121
122 _JUNK_ := $(shell \
123 echo >&2 "INFO: STRIP_POLICY=$(STRIP_POLICY)")
124 endif
125 endif
126
127 #
128 # Default optimization
129 #
130
131 ifndef OPTIMIZATION_LEVEL
132 ifeq ($(PRODUCT), java)
133 OPTIMIZATION_LEVEL = HIGHER
134 else
135 OPTIMIZATION_LEVEL = LOWER
136 endif
137 endif
138 ifndef FASTDEBUG_OPTIMIZATION_LEVEL
139 FASTDEBUG_OPTIMIZATION_LEVEL = LOWER
140 endif
141
142 CC_OPT/NONE =
143 CC_OPT/LOWER = -O2
144 CC_OPT/HIGHER = -O3
145 CC_OPT/HIGHEST = -O3
395 # installation area.
396 override USE_EXECNAME = true
397
398 # If your platform has DPS, it will have Type1 fonts too, in which case
399 # it is best to enable DPS support until such time as 2D's rasteriser
400 # can fully handle Type1 fonts in all cases. Default is "yes".
401 # HAVE_DPS should only be "no" if the platform has no DPS headers or libs
402 # DPS (Displayable PostScript) is available on Solaris machines
403 HAVE_DPS = no
404
405 #
406 # Japanese manpages
407 #
408 JA_SOURCE_ENCODING = eucJP
409 JA_TARGET_ENCODINGS = UTF-8
410
411 # Settings for the JDI - Serviceability Agent binding.
412 HOTSPOT_SALIB_PATH = $(HOTSPOT_IMPORT_PATH)/jre/lib/$(LIBARCH)
413 SALIB_NAME = $(LIB_PREFIX)saproc.$(LIBRARY_SUFFIX)
414 SA_DEBUGINFO_NAME = $(LIB_PREFIX)saproc.debuginfo
415
416 # The JDI - Serviceability Agent binding is not currently supported
417 # on Linux-ia64.
418 ifeq ($(ARCH), ia64)
419 INCLUDE_SA = false
420 else
421 INCLUDE_SA = true
422 endif
423
424 ifdef CROSS_COMPILE_ARCH
425 # X11 headers are not under /usr/include
426 OTHER_CFLAGS += -I$(OPENWIN_HOME)/include
427 OTHER_CXXFLAGS += -I$(OPENWIN_HOME)/include
428 OTHER_CPPFLAGS += -I$(OPENWIN_HOME)/include
429 endif
|
1 #
2 # Copyright (c) 1999, 2012, 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
56 # Platform specific closed sources
57 ifndef OPENJDK
58 ifndef CLOSED_PLATFORM_SRC
59 CLOSED_PLATFORM_SRC = $(BUILDDIR)/../src/closed/solaris
60 endif
61 endif
62
63 # platform specific include files
64 PLATFORM_INCLUDE_NAME = $(PLATFORM)
65 PLATFORM_INCLUDE = $(INCLUDEDIR)/$(PLATFORM_INCLUDE_NAME)
66
67 # suffix used for make dependencies files.
68 DEPEND_SUFFIX = d
69 # The suffix applied to the library name for FDLIBM
70 FDDLIBM_SUFFIX = a
71 # The suffix applied to scripts (.bat for windows, nothing for unix)
72 SCRIPT_SUFFIX =
73 # CC compiler object code output directive flag value
74 CC_OBJECT_OUTPUT_FLAG = -o #trailing blank required!
75
76 ENABLE_FULL_DEBUG_SYMBOLS ?= 1
77 # since objcopy is optional, we set ZIP_DEBUGINFO_FILES later
78
79 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
80 # Default OBJCOPY comes from GNU Binutils on Linux:
81 DEF_OBJCOPY=/usr/bin/objcopy
82 ifdef CROSS_COMPILE_ARCH
83 # don't try to generate .debuginfo files when cross compiling
84 _JUNK_ := $(shell \
85 echo >&2 "INFO: cross compiling for ARCH $(CROSS_COMPILE_ARCH)," \
86 "skipping .debuginfo generation.")
87 OBJCOPY=
88 else
89 OBJCOPY=$(shell test -x $(DEF_OBJCOPY) && echo $(DEF_OBJCOPY))
90 ifneq ($(ALT_OBJCOPY),)
91 _JUNK_ := $(shell echo >&2 "INFO: ALT_OBJCOPY=$(ALT_OBJCOPY)")
92 # disable .debuginfo support by setting ALT_OBJCOPY to a non-existent path
93 OBJCOPY=$(shell test -x $(ALT_OBJCOPY) && echo $(ALT_OBJCOPY))
94 endif
95 endif
96
97 # Setting ENABLE_FULL_DEBUG_SYMBOLS=1 (and OBJCOPY) above enables the
98 # JDK build to import .debuginfo or .diz files from the HotSpot build.
99 # However, adding FDS support to the JDK build will occur in phases
100 # so a different make variable (LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS)
101 # is used to indicate that a particular library supports FDS.
102
103 ifeq ($(OBJCOPY),)
104 _JUNK_ := $(shell \
105 echo >&2 "INFO: no objcopy cmd found so cannot create .debuginfo files.")
106 ENABLE_FULL_DEBUG_SYMBOLS=0
107 else
108 _JUNK_ := $(shell \
109 echo >&2 "INFO: $(OBJCOPY) cmd found so will create .debuginfo files.")
110
111 # Library stripping policies for .debuginfo configs:
112 # all_strip - strips everything from the library
113 # min_strip - strips most stuff from the library; leaves minimum symbols
114 # no_strip - does not strip the library at all
115 #
116 # Oracle security policy requires "all_strip". A waiver was granted on
117 # 2011.09.01 that permits using "min_strip" in the Java JDK and Java JRE.
118 #
119 # Currently, STRIP_POLICY is only used when Full Debug Symbols is enabled.
120 STRIP_POLICY ?= min_strip
121
122 _JUNK_ := $(shell \
123 echo >&2 "INFO: STRIP_POLICY=$(STRIP_POLICY)")
124
125 ZIP_DEBUGINFO_FILES ?= 1
126
127 _JUNK_ := $(shell \
128 echo >&2 "INFO: ZIP_DEBUGINFO_FILES=$(ZIP_DEBUGINFO_FILES)")
129 endif
130 endif
131
132 #
133 # Default optimization
134 #
135
136 ifndef OPTIMIZATION_LEVEL
137 ifeq ($(PRODUCT), java)
138 OPTIMIZATION_LEVEL = HIGHER
139 else
140 OPTIMIZATION_LEVEL = LOWER
141 endif
142 endif
143 ifndef FASTDEBUG_OPTIMIZATION_LEVEL
144 FASTDEBUG_OPTIMIZATION_LEVEL = LOWER
145 endif
146
147 CC_OPT/NONE =
148 CC_OPT/LOWER = -O2
149 CC_OPT/HIGHER = -O3
150 CC_OPT/HIGHEST = -O3
400 # installation area.
401 override USE_EXECNAME = true
402
403 # If your platform has DPS, it will have Type1 fonts too, in which case
404 # it is best to enable DPS support until such time as 2D's rasteriser
405 # can fully handle Type1 fonts in all cases. Default is "yes".
406 # HAVE_DPS should only be "no" if the platform has no DPS headers or libs
407 # DPS (Displayable PostScript) is available on Solaris machines
408 HAVE_DPS = no
409
410 #
411 # Japanese manpages
412 #
413 JA_SOURCE_ENCODING = eucJP
414 JA_TARGET_ENCODINGS = UTF-8
415
416 # Settings for the JDI - Serviceability Agent binding.
417 HOTSPOT_SALIB_PATH = $(HOTSPOT_IMPORT_PATH)/jre/lib/$(LIBARCH)
418 SALIB_NAME = $(LIB_PREFIX)saproc.$(LIBRARY_SUFFIX)
419 SA_DEBUGINFO_NAME = $(LIB_PREFIX)saproc.debuginfo
420 SA_DIZ_NAME = $(LIB_PREFIX)saproc.diz
421
422 # The JDI - Serviceability Agent binding is not currently supported
423 # on Linux-ia64.
424 ifeq ($(ARCH), ia64)
425 INCLUDE_SA = false
426 else
427 INCLUDE_SA = true
428 endif
429
430 ifdef CROSS_COMPILE_ARCH
431 # X11 headers are not under /usr/include
432 OTHER_CFLAGS += -I$(OPENWIN_HOME)/include
433 OTHER_CXXFLAGS += -I$(OPENWIN_HOME)/include
434 OTHER_CPPFLAGS += -I$(OPENWIN_HOME)/include
435 endif
|