blob: 02bfc4ccb75f60dd63b7adabc94416b0fee79c47 [file] [log] [blame]
duke6e45e102007-12-01 00:00:00 +00001#
dcubed768ddaa2012-03-23 09:27:44 -07002# Copyright (c) 1999, 2012, Oracle and/or its affiliates. All rights reserved.
duke6e45e102007-12-01 00:00:00 +00003# 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
ohair2283b9d2010-05-25 15:58:33 -07007# published by the Free Software Foundation. Oracle designates this
duke6e45e102007-12-01 00:00:00 +00008# particular file as subject to the "Classpath" exception as provided
ohair2283b9d2010-05-25 15:58:33 -07009# by Oracle in the LICENSE file that accompanied this code.
duke6e45e102007-12-01 00:00:00 +000010#
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#
ohair2283b9d2010-05-25 15:58:33 -070021# 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.
duke6e45e102007-12-01 00:00:00 +000024#
25
26#
27# Makefile to specify compiler flags for programs and libraries
28# targeted to Linux. Should not contain any rules.
29#
30# WARNING: This file is shared with other workspaces.
31# So when it includes other files, it must use JDK_TOPDIR.
32#
33
34# Warning: the following variables are overriden by Defs.gmk. Set
35# values will be silently ignored:
36# CFLAGS (set $(OTHER_CFLAGS) instead)
37# CPPFLAGS (set $(OTHER_CPPFLAGS) instead)
38# CXXFLAGS (set $(OTHER_CXXFLAGS) instead)
39# LDFLAGS (set $(OTHER_LDFAGS) instead)
40# LDLIBS (set $(EXTRA_LIBS) instead)
41# LDLIBS_COMMON (set $(EXTRA_LIBS) instead)
42
43# Get shared JDK settings
44include $(JDK_MAKE_SHARED_DIR)/Defs.gmk
45
46# Part of INCREMENTAL_BUILD mechanism.
47# Compiler emits things like: path/file.o: file.h
48# We want something like: relative_path/file.o relative_path/file.d: file.h
49CC_DEPEND = -MM
50CC_DEPEND_FILTER = $(SED) -e 's!$*\.$(OBJECT_SUFFIX)!$(dir $@)& $(dir $@)$*.$(DEPEND_SUFFIX)!g'
51
52ifndef PLATFORM_SRC
ohair26e0af62008-03-04 09:52:54 -080053 PLATFORM_SRC = $(BUILDDIR)/../src/solaris
duke6e45e102007-12-01 00:00:00 +000054endif # PLATFORM_SRC
55
kizune43045ca2012-04-04 20:31:50 +040056# Location of the various .properties files specific to Linux platform
57ifndef PLATFORM_PROPERTIES
58 PLATFORM_PROPERTIES = $(BUILDDIR)/../src/solaris/lib
59endif # PLATFORM_SRC
60
duke6e45e102007-12-01 00:00:00 +000061# Platform specific closed sources
62ifndef OPENJDK
63 ifndef CLOSED_PLATFORM_SRC
ohair26e0af62008-03-04 09:52:54 -080064 CLOSED_PLATFORM_SRC = $(BUILDDIR)/../src/closed/solaris
duke6e45e102007-12-01 00:00:00 +000065 endif
66endif
67
68# platform specific include files
69PLATFORM_INCLUDE_NAME = $(PLATFORM)
70PLATFORM_INCLUDE = $(INCLUDEDIR)/$(PLATFORM_INCLUDE_NAME)
71
72# suffix used for make dependencies files.
73DEPEND_SUFFIX = d
74# The suffix applied to the library name for FDLIBM
75FDDLIBM_SUFFIX = a
76# The suffix applied to scripts (.bat for windows, nothing for unix)
77SCRIPT_SUFFIX =
78# CC compiler object code output directive flag value
79CC_OBJECT_OUTPUT_FLAG = -o #trailing blank required!
duke6e45e102007-12-01 00:00:00 +000080
dcubedb896fcf2012-04-03 12:57:47 -070081# The Full Debug Symbols (FDS) default for VARIANT == OPT builds is
82# enabled with debug info files ZIP'ed to save space. For VARIANT !=
83# OPT builds, FDS is always enabled, after all a debug build without
84# debug info isn't very useful. The ZIP_DEBUGINFO_FILES option only has
85# meaning when FDS is enabled.
86#
87# If you invoke a build with FULL_DEBUG_SYMBOLS=0, then FDS will be
88# disabled for a VARIANT == OPT build.
89#
90# Note: Use of a different variable name for the FDS override option
91# versus the FDS enabled check is intentional (FULL_DEBUG_SYMBOLS
92# versus ENABLE_FULL_DEBUG_SYMBOLS). For auto build systems that pass
93# in options via environment variables, use of distinct variables
94# prevents strange behaviours. For example, in a VARIANT != OPT build,
95# the FULL_DEBUG_SYMBOLS environment variable will be 0, but the
96# ENABLE_FULL_DEBUG_SYMBOLS make variable will be 1. If the same
97# variable name is used, then different values can be picked up by
98# different parts of the build. Just to be clear, we only need two
99# variable names because the incoming option value can be overridden
100# in some situations, e.g., a VARIANT != OPT build.
101
102ifeq ($(VARIANT), OPT)
103 FULL_DEBUG_SYMBOLS ?= 1
104 ENABLE_FULL_DEBUG_SYMBOLS = $(FULL_DEBUG_SYMBOLS)
dcubed46b99222011-09-20 19:16:21 -0700105else
dcubedb896fcf2012-04-03 12:57:47 -0700106 # debug variants always get Full Debug Symbols (if available)
107 ENABLE_FULL_DEBUG_SYMBOLS = 1
dcubed46b99222011-09-20 19:16:21 -0700108endif
dcubedb896fcf2012-04-03 12:57:47 -0700109_JUNK_ := $(shell \
110 echo >&2 "INFO: ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS)")
dcubed768ddaa2012-03-23 09:27:44 -0700111# since objcopy is optional, we set ZIP_DEBUGINFO_FILES later
dcubed46b99222011-09-20 19:16:21 -0700112
dcubed768ddaa2012-03-23 09:27:44 -0700113ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
114 # Default OBJCOPY comes from GNU Binutils on Linux:
115 DEF_OBJCOPY=/usr/bin/objcopy
116 ifdef CROSS_COMPILE_ARCH
117 # don't try to generate .debuginfo files when cross compiling
118 _JUNK_ := $(shell \
119 echo >&2 "INFO: cross compiling for ARCH $(CROSS_COMPILE_ARCH)," \
120 "skipping .debuginfo generation.")
121 OBJCOPY=
dcubed46b99222011-09-20 19:16:21 -0700122 else
dcubed768ddaa2012-03-23 09:27:44 -0700123 OBJCOPY=$(shell test -x $(DEF_OBJCOPY) && echo $(DEF_OBJCOPY))
124 ifneq ($(ALT_OBJCOPY),)
125 _JUNK_ := $(shell echo >&2 "INFO: ALT_OBJCOPY=$(ALT_OBJCOPY)")
126 # disable .debuginfo support by setting ALT_OBJCOPY to a non-existent path
127 OBJCOPY=$(shell test -x $(ALT_OBJCOPY) && echo $(ALT_OBJCOPY))
128 endif
dcubed46b99222011-09-20 19:16:21 -0700129 endif
130
dcubed768ddaa2012-03-23 09:27:44 -0700131 # Setting ENABLE_FULL_DEBUG_SYMBOLS=1 (and OBJCOPY) above enables the
132 # JDK build to import .debuginfo or .diz files from the HotSpot build.
133 # However, adding FDS support to the JDK build will occur in phases
134 # so a different make variable (LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS)
135 # is used to indicate that a particular library supports FDS.
136
137 ifeq ($(OBJCOPY),)
138 _JUNK_ := $(shell \
139 echo >&2 "INFO: no objcopy cmd found so cannot create .debuginfo files.")
140 ENABLE_FULL_DEBUG_SYMBOLS=0
141 else
142 _JUNK_ := $(shell \
143 echo >&2 "INFO: $(OBJCOPY) cmd found so will create .debuginfo files.")
144
145 # Library stripping policies for .debuginfo configs:
146 # all_strip - strips everything from the library
147 # min_strip - strips most stuff from the library; leaves minimum symbols
148 # no_strip - does not strip the library at all
149 #
150 # Oracle security policy requires "all_strip". A waiver was granted on
151 # 2011.09.01 that permits using "min_strip" in the Java JDK and Java JRE.
152 #
153 # Currently, STRIP_POLICY is only used when Full Debug Symbols is enabled.
154 STRIP_POLICY ?= min_strip
155
156 _JUNK_ := $(shell \
157 echo >&2 "INFO: STRIP_POLICY=$(STRIP_POLICY)")
158
dcubedb896fcf2012-04-03 12:57:47 -0700159 # HACK: disable ZIP_DEBUGINFO_FILES by default until install repo
160 # changes are promoted
161 ZIP_DEBUGINFO_FILES ?= 0
dcubed768ddaa2012-03-23 09:27:44 -0700162
163 _JUNK_ := $(shell \
164 echo >&2 "INFO: ZIP_DEBUGINFO_FILES=$(ZIP_DEBUGINFO_FILES)")
165 endif
dcubed46b99222011-09-20 19:16:21 -0700166endif
167
duke6e45e102007-12-01 00:00:00 +0000168#
duke6e45e102007-12-01 00:00:00 +0000169# Default optimization
170#
duke6e45e102007-12-01 00:00:00 +0000171
ohair850fb252008-07-30 19:40:57 -0700172ifndef OPTIMIZATION_LEVEL
173 ifeq ($(PRODUCT), java)
174 OPTIMIZATION_LEVEL = HIGHER
175 else
176 OPTIMIZATION_LEVEL = LOWER
177 endif
duke6e45e102007-12-01 00:00:00 +0000178endif
ohairb99e3e32009-03-31 16:10:31 -0700179ifndef FASTDEBUG_OPTIMIZATION_LEVEL
180 FASTDEBUG_OPTIMIZATION_LEVEL = LOWER
181endif
duke6e45e102007-12-01 00:00:00 +0000182
ohair850fb252008-07-30 19:40:57 -0700183CC_OPT/NONE =
184CC_OPT/LOWER = -O2
185CC_OPT/HIGHER = -O3
186CC_OPT/HIGHEST = -O3
187
188CC_OPT = $(CC_OPT/$(OPTIMIZATION_LEVEL))
189
duke6e45e102007-12-01 00:00:00 +0000190# For all platforms, do not omit the frame pointer register usage.
191# We need this frame pointer to make it easy to walk the stacks.
192# This should be the default on X86, but ia64 and amd64 may not have this
193# as the default.
194CFLAGS_REQUIRED_amd64 += -fno-omit-frame-pointer -D_LITTLE_ENDIAN
195CFLAGS_REQUIRED_i586 += -fno-omit-frame-pointer -D_LITTLE_ENDIAN
196CFLAGS_REQUIRED_ia64 += -fno-omit-frame-pointer -D_LITTLE_ENDIAN
197CFLAGS_REQUIRED_sparcv9 += -m64 -mcpu=v9
198LDFLAGS_COMMON_sparcv9 += -m64 -mcpu=v9
199CFLAGS_REQUIRED_sparc += -m32 -mcpu=v9
200LDFLAGS_COMMON_sparc += -m32 -mcpu=v9
dholmes70a4d1a2011-03-16 18:54:50 -0400201CFLAGS_REQUIRED_arm += -fsigned-char -D_LITTLE_ENDIAN
202CFLAGS_REQUIRED_ppc += -fsigned-char -D_BIG_ENDIAN
gbenson24e3a5d2009-10-15 13:27:59 +0100203ifeq ($(ZERO_BUILD), true)
204 CFLAGS_REQUIRED = $(ZERO_ARCHFLAG)
205 ifeq ($(ZERO_ENDIANNESS), little)
206 CFLAGS_REQUIRED += -D_LITTLE_ENDIAN
207 endif
208 LDFLAGS_COMMON += $(ZERO_ARCHFLAG)
209else
210 CFLAGS_REQUIRED = $(CFLAGS_REQUIRED_$(ARCH))
211 LDFLAGS_COMMON += $(LDFLAGS_COMMON_$(ARCH))
212endif
duke6e45e102007-12-01 00:00:00 +0000213
ohair8df39292009-01-31 17:31:21 -0800214# If this is a --hash-style=gnu system, use --hash-style=both
215# The gnu .hash section won't work on some Linux systems like SuSE 10.
216_HAS_HASH_STYLE_GNU:=$(shell $(CC) -dumpspecs | $(GREP) -- '--hash-style=gnu')
217ifneq ($(_HAS_HASH_STYLE_GNU),)
218 LDFLAGS_HASH_STYLE = -Wl,--hash-style=both
219endif
220LDFLAGS_COMMON += $(LDFLAGS_HASH_STYLE)
221
duke6e45e102007-12-01 00:00:00 +0000222#
223# Selection of warning messages
224#
225GCC_INHIBIT = -Wno-unused -Wno-parentheses
226GCC_STYLE =
227GCC_WARNINGS = -W -Wall $(GCC_STYLE) $(GCC_INHIBIT)
228
229#
230# Treat compiler warnings as errors, if warnings not allowed
231#
232ifeq ($(COMPILER_WARNINGS_FATAL),true)
233 GCC_WARNINGS += -Werror
234endif
235
236#
237# Misc compiler options
238#
dholmes70a4d1a2011-03-16 18:54:50 -0400239ifneq ($(ARCH),ppc)
duke6e45e102007-12-01 00:00:00 +0000240 CFLAGS_COMMON = -fno-strict-aliasing
dholmes70a4d1a2011-03-16 18:54:50 -0400241endif
duke6e45e102007-12-01 00:00:00 +0000242PIC_CODE_LARGE = -fPIC
243PIC_CODE_SMALL = -fpic
244GLOBAL_KPIC = $(PIC_CODE_LARGE)
ohairab4f1212008-07-27 18:42:57 -0700245CFLAGS_COMMON += $(GLOBAL_KPIC) $(GCC_WARNINGS)
duke6e45e102007-12-01 00:00:00 +0000246ifeq ($(ARCH), amd64)
ohairab4f1212008-07-27 18:42:57 -0700247 CFLAGS_COMMON += -pipe
duke6e45e102007-12-01 00:00:00 +0000248endif
249
250# Linux 64bit machines use Dwarf2, which can be HUGE, have fastdebug use -g1
251DEBUG_FLAG = -g
252ifeq ($(FASTDEBUG), true)
253 ifeq ($(ARCH_DATA_MODEL), 64)
254 DEBUG_FLAG = -g1
255 endif
256endif
257
aphd46bd762009-04-17 15:56:20 +0100258# DEBUG_BINARIES overrides everything, use full -g debug information
259ifeq ($(DEBUG_BINARIES), true)
260 DEBUG_FLAG = -g
261 CFLAGS_REQUIRED += $(DEBUG_FLAG)
262endif
263
ohair850fb252008-07-30 19:40:57 -0700264CFLAGS_OPT = $(CC_OPT)
duke6e45e102007-12-01 00:00:00 +0000265CFLAGS_DBG = $(DEBUG_FLAG)
266CFLAGS_COMMON += $(CFLAGS_REQUIRED)
267
268CXXFLAGS_COMMON = $(GLOBAL_KPIC) -DCC_NOEX $(GCC_WARNINGS)
ohair850fb252008-07-30 19:40:57 -0700269CXXFLAGS_OPT = $(CC_OPT)
duke6e45e102007-12-01 00:00:00 +0000270CXXFLAGS_DBG = $(DEBUG_FLAG)
271CXXFLAGS_COMMON += $(CFLAGS_REQUIRED)
272
273# FASTDEBUG: Optimize the code in the -g versions, gives us a faster debug java
274ifeq ($(FASTDEBUG), true)
ohairb99e3e32009-03-31 16:10:31 -0700275 CFLAGS_DBG += $(CC_OPT/$(FASTDEBUG_OPTIMIZATION_LEVEL))
276 CXXFLAGS_DBG += $(CC_OPT/$(FASTDEBUG_OPTIMIZATION_LEVEL))
duke6e45e102007-12-01 00:00:00 +0000277endif
278
andrew2ed7e052010-06-03 18:49:35 +0100279CPP_ARCH_FLAGS = -DARCH='"$(ARCH)"'
280
281# Alpha arch does not like "alpha" defined (potential general arch cleanup issue here)
282ifneq ($(ARCH),alpha)
283 CPP_ARCH_FLAGS += -D$(ARCH)
284else
285 CPP_ARCH_FLAGS += -D_$(ARCH)_
286endif
287
288CPPFLAGS_COMMON = $(CPP_ARCH_FLAGS) -DLINUX $(VERSION_DEFINES) \
duke6e45e102007-12-01 00:00:00 +0000289 -D_LARGEFILE64_SOURCE -D_GNU_SOURCE -D_REENTRANT
290
291ifeq ($(ARCH_DATA_MODEL), 64)
292CPPFLAGS_COMMON += -D_LP64=1
293endif
294
ohair5a916662009-07-08 09:11:24 -0700295CPPFLAGS_OPT = -DNDEBUG
duke6e45e102007-12-01 00:00:00 +0000296CPPFLAGS_DBG = -DDEBUG
ohair850fb252008-07-30 19:40:57 -0700297ifneq ($(PRODUCT), java)
298 CPPFLAGS_DBG += -DLOGGING
299endif
duke6e45e102007-12-01 00:00:00 +0000300
301ifdef LIBRARY
302 # Libraries need to locate other libraries at runtime, and you can tell
303 # a library where to look by way of the dynamic runpaths (RPATH or RUNPATH)
304 # buried inside the .so. The $ORIGIN says to look relative to where
305 # the library itself is and it can be followed with relative paths from
306 # that. By default we always look in $ORIGIN, optionally we add relative
307 # paths if the Makefile sets LD_RUNPATH_EXTRAS to those relative paths.
308 # On Linux we add a flag -z origin, not sure if this is necessary, but
309 # doesn't seem to hurt.
310 # The environment variable LD_LIBRARY_PATH will over-ride these runpaths.
311 # Try: 'readelf -d lib*.so' to see these settings in a library.
312 #
dholmes70a4d1a2011-03-16 18:54:50 -0400313 Z_ORIGIN_FLAG/sparc = -Xlinker -z -Xlinker origin
314 Z_ORIGIN_FLAG/i586 = -Xlinker -z -Xlinker origin
315 Z_ORIGIN_FLAG/amd64 = -Xlinker -z -Xlinker origin
316 Z_ORIGIN_FLAG/ia64 = -Xlinker -z -Xlinker origin
317 Z_ORIGIN_FLAG/arm =
318 Z_ORIGIN_FLAG/ppc =
319 Z_ORIGIN_FLAG/zero = -Xlinker -z -Xlinker origin
320
321 LDFLAG_Z_ORIGIN = $(Z_ORIGIN_FLAG/$(ARCH_FAMILY))
322
323 LDFLAGS_COMMON += $(LDFLAG_Z_ORIGIN) -Xlinker -rpath -Xlinker \$$ORIGIN
324 LDFLAGS_COMMON += $(LD_RUNPATH_EXTRAS:%=$(LDFLAG_Z_ORIGIN) -Xlinker -rpath -Xlinker \$$ORIGIN/%)
325
duke6e45e102007-12-01 00:00:00 +0000326endif
327
328EXTRA_LIBS += -lc
329
gbenson24e3a5d2009-10-15 13:27:59 +0100330LDFLAGS_DEFS_OPTION = -Xlinker -z -Xlinker defs
duke6e45e102007-12-01 00:00:00 +0000331LDFLAGS_COMMON += $(LDFLAGS_DEFS_OPTION)
332
333#
334# -L paths for finding and -ljava
335#
336LDFLAGS_OPT = -Xlinker -O1
337LDFLAGS_COMMON += -L$(LIBDIR)/$(LIBARCH)
338LDFLAGS_COMMON += -Wl,-soname=$(LIB_PREFIX)$(LIBRARY).$(LIBRARY_SUFFIX)
339
340#
341# -static-libgcc is a gcc-3 flag to statically link libgcc, gcc-2.9x always
342# statically link libgcc but will print a warning with the flag. We don't
343# want the warning, so check gcc version first.
344#
ohaire74b8592011-04-21 18:26:04 -0700345ifeq ($(CC_MAJORVER),3)
346 OTHER_LDFLAGS += -static-libgcc
duke6e45e102007-12-01 00:00:00 +0000347endif
348
349# Automatic precompiled header option to use (if COMPILE_APPROACH=batch)
350# (See Rules.gmk) The gcc 5 compiler might have an option for this?
351AUTOMATIC_PCH_OPTION =
352
353#
354# Post Processing of libraries/executables
355#
356ifeq ($(VARIANT), OPT)
357 ifneq ($(NO_STRIP), true)
aphd46bd762009-04-17 15:56:20 +0100358 ifneq ($(DEBUG_BINARIES), true)
359 # Debug 'strip -g' leaves local function Elf symbols (better stack
360 # traces)
361 POST_STRIP_PROCESS = $(STRIP) -g
362 endif
duke6e45e102007-12-01 00:00:00 +0000363 endif
364endif
365
366#
367# Use: ld $(LD_MAPFILE_FLAG) mapfile *.o
368#
369LD_MAPFILE_FLAG = -Xlinker --version-script -Xlinker
370
371#
372# Support for Quantify.
373#
374ifdef QUANTIFY
375QUANTIFY_CMD = quantify
376QUANTIFY_OPTIONS = -cache-dir=/tmp/quantify -always-use-cache-dir=yes
377LINK_PRE_CMD = $(QUANTIFY_CMD) $(QUANTIFY_OPTIONS)
378endif
379
380#
381# Path and option to link against the VM, if you have to. Note that
382# there are libraries that link against only -ljava, but they do get
383# -L to the -ljvm, this is because -ljava depends on -ljvm, whereas
384# the library itself should not.
385#
386VM_NAME = server
387JVMLIB = -L$(LIBDIR)/$(LIBARCH)/$(VM_NAME) -ljvm
388JAVALIB = -ljava $(JVMLIB)
389
390#
391# We want to privatize JVM symbols on Solaris. This is so the user can
392# write a function called FindClass and this should not override the
393# FindClass that is inside the JVM. At this point in time we are not
394# concerned with other JNI libraries because we hope that there will
395# not be as many clashes there.
396#
397PRIVATIZE_JVM_SYMBOLS = false
398
399USE_PTHREADS = true
400override ALT_CODESET_KEY = _NL_CTYPE_CODESET_NAME
401override AWT_RUNPATH =
402override HAVE_ALTZONE = false
403override HAVE_FILIOH = false
404override HAVE_GETHRTIME = false
405override HAVE_GETHRVTIME = false
406override HAVE_SIGIGNORE = true
407override LEX_LIBRARY = -lfl
408ifeq ($(STATIC_CXX),true)
409override LIBCXX = -Wl,-Bstatic -lstdc++ -lgcc -Wl,-Bdynamic
410else
411override LIBCXX = -lstdc++
412endif
413override LIBPOSIX4 =
414override LIBSOCKET =
martind5089e02010-06-10 15:54:25 -0700415override LIBNSL =
okutsu953b5b22011-10-05 15:13:40 +0900416override LIBSCF =
duke6e45e102007-12-01 00:00:00 +0000417override LIBTHREAD =
michaelm5ac8c152012-03-06 20:34:38 +0000418override LIBDL = -ldl
duke6e45e102007-12-01 00:00:00 +0000419override MOOT_PRIORITIES = true
420override NO_INTERRUPTIBLE_IO = true
duke6e45e102007-12-01 00:00:00 +0000421ifeq ($(ARCH), amd64)
422override OPENWIN_LIB = $(OPENWIN_HOME)/lib64
423else
424override OPENWIN_LIB = $(OPENWIN_HOME)/lib
425endif
426override OTHER_M4FLAGS = -D__GLIBC__ -DGNU_ASSEMBLER
427override SUN_CMM_SUBDIR =
428override THREADS_FLAG = native
429override USE_GNU_M4 = true
430override USING_GNU_TAR = true
431override WRITE_LIBVERSION = false
432
433# USE_EXECNAME forces the launcher to look up argv[0] on $PATH, and put the
434# resulting resolved absolute name of the executable in the environment
435# variable EXECNAME. That executable name is then used that to locate the
436# installation area.
437override USE_EXECNAME = true
438
439# If your platform has DPS, it will have Type1 fonts too, in which case
440# it is best to enable DPS support until such time as 2D's rasteriser
441# can fully handle Type1 fonts in all cases. Default is "yes".
442# HAVE_DPS should only be "no" if the platform has no DPS headers or libs
443# DPS (Displayable PostScript) is available on Solaris machines
444HAVE_DPS = no
445
446#
447# Japanese manpages
448#
449JA_SOURCE_ENCODING = eucJP
ogino55ad4162011-04-26 21:46:20 -0700450JA_TARGET_ENCODINGS = UTF-8
duke6e45e102007-12-01 00:00:00 +0000451
452# Settings for the JDI - Serviceability Agent binding.
453HOTSPOT_SALIB_PATH = $(HOTSPOT_IMPORT_PATH)/jre/lib/$(LIBARCH)
454SALIB_NAME = $(LIB_PREFIX)saproc.$(LIBRARY_SUFFIX)
dcubed46b99222011-09-20 19:16:21 -0700455SA_DEBUGINFO_NAME = $(LIB_PREFIX)saproc.debuginfo
dcubed768ddaa2012-03-23 09:27:44 -0700456SA_DIZ_NAME = $(LIB_PREFIX)saproc.diz
duke6e45e102007-12-01 00:00:00 +0000457
458# The JDI - Serviceability Agent binding is not currently supported
459# on Linux-ia64.
460ifeq ($(ARCH), ia64)
461 INCLUDE_SA = false
462else
463 INCLUDE_SA = true
464endif
465
dholmes70a4d1a2011-03-16 18:54:50 -0400466ifdef CROSS_COMPILE_ARCH
467 # X11 headers are not under /usr/include
468 OTHER_CFLAGS += -I$(OPENWIN_HOME)/include
469 OTHER_CXXFLAGS += -I$(OPENWIN_HOME)/include
470 OTHER_CPPFLAGS += -I$(OPENWIN_HOME)/include
471endif