blob: 099daf173482fd83f62d365960d56765e24fa1d3 [file] [log] [blame]
duke6e45e102007-12-01 00:00:00 +00001#
ohairbf91ea12011-04-06 22:06:11 -07002# Copyright (c) 1995, 2011, 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
26BUILDDIR = ../..
27PACKAGE = sun.awt
28LIBRARY = awt
29PRODUCT = sun
30
duke6e45e102007-12-01 00:00:00 +000031# Tell Defs.gmk that VIS is needed
duke6e45e102007-12-01 00:00:00 +000032VIS_NEEDED=true
33
duke6e45e102007-12-01 00:00:00 +000034# Use highest optimization level
ohair850fb252008-07-30 19:40:57 -070035OPTMIZATION_LEVEL = HIGHEST
36
37include $(BUILDDIR)/common/Defs.gmk
duke6e45e102007-12-01 00:00:00 +000038
39OTHER_CFLAGS += -D__MEDIALIB_OLD_NAMES -D__USE_J2D_NAMES
40
41#
42# Files
43#
44
45#
46# Include all Java source files in sun/awt and sun/java2d, except for:
47# sun/awt/resources handled by java/awt/Makefile
48# sun/java2d/pisces handled by sun/pisces/Makefile
49#
anthony421dab82009-02-04 11:58:13 +030050AUTO_FILES_JAVA_DIRS = sun/awt sun/java2d com/sun/awt
duke6e45e102007-12-01 00:00:00 +000051AUTO_JAVA_PRUNE = resources pisces
52
53ifeq ($(PLATFORM), windows)
54# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv WINDOWS
55
56#
57# Files
58#
59include FILES_c_windows.gmk
60include FILES_export_windows.gmk
61
62#
63# Prune files that are currently unused on Windows (but still used on
64# Solaris/Linux).
65#
66AUTO_JAVA_PRUNE += RemoteOffScreenImage.java
67
duke6e45e102007-12-01 00:00:00 +000068OTHER_CFLAGS += $(GX_OPTION) -DMLIB_NO_LIBSUNMATH -DUNICODE -D_UNICODE
69OTHER_CXXFLAGS += $(GX_OPTION) -DUNICODE -D_UNICODE
70
71ifeq ($(ARCH_DATA_MODEL), 64)
72 OTHER_CFLAGS += -DMLIB_OS64BIT
73endif
74
75# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ WINDOWS
76endif # PLATFORM
77
78ifneq ($(PLATFORM), windows)
79# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv SOLARIS/LINUX
80
81#
82# Files
83#
84include FILES_c_unix.gmk
85include FILES_export_unix.gmk
86#
87# Prune the sun/awt/X11 subdirectory, which is handled by sun/xawt/Makefile.
88# Also prune files that are currently unused on Solaris/Linux (but still
89# used on Windows).
90#
91AUTO_JAVA_PRUNE += X11 AWTCharset.java
92
93ifeq ($(PLATFORM), solaris)
94FILES_c = $(FILES_2D_c)
95FILES_c += awt_LoadLibrary.c
96OTHER_LDLIBS = $(JVMLIB) $(LIBM) -ldl
97ifeq ($(CC_VER), 5.8)
98 ifndef REMOVE_ALL_WORKAROUNDS
99 ifeq ($(ARCH_FAMILY), i586)
100 # If on Solaris 11 (or dlfcn.h has unknown_control_flow pragmas in it)
101 # we trigger a SS11 bug that causes the compiler to crash (bug 6343678)
102 # Here we check to see if we need this workaround and change the opt
103 # settings for this one file.
104 USE_WORKAROUND:=$(shell $(GREP) unknown_control_flow /usr/include/dlfcn.h)
105 ifneq ($(USE_WORKAROUND),)
106 ifeq ($(FASTDEBUG), true)
107 CFLAGS_DBG/awt_Mlib.o = -xO0 \
108 $(warning "WARNING: Using workaround for SS11 bug 6343678, on $@")
109 endif
110 # Compiler bug 6343678 need to prevent a SEGV in the compiler
111 CFLAGS_OPT/awt_Mlib.o = -g \
112 $(warning "WARNING: Using workaround for SS11 bug 6343678, on $@")
113 endif
114 endif
115 endif
116endif
117endif
118
119ifeq ($(PLATFORM), linux)
120FILES_c = $(FILES_2D_c)
121FILES_c += awt_LoadLibrary.c
122OTHER_CFLAGS += -DMLIB_NO_LIBSUNMATH
123OTHER_LDLIBS = $(JVMLIB) $(LIBM) -ldl
124endif
125
126FILES_c += initIDs.c
127
128# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ SOLARIS/LINUX
129endif # PLATFORM
130
131# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv SOLARIS-SPARC
132# solaris-sparc and solaris-sparcv9 both build 'vis'
133ifeq ("$(PLATFORM)-$(ARCH_FAMILY)", "solaris-sparc")
134 FILES_c += $(FILES_2D_vis)
135 ASFLAGS += -P
136 FILES_s += mlib_v_ImageCopy_blk.s
137 INLINE_VIS = $(PLATFORM_SRC)/native/sun/awt/medialib/vis_$(ARCH_DATA_MODEL).il
138 CFLAGS_sparcv9 = -DMLIB_OS64BIT
139
140 CFLAGS += $(CFLAGS_$(ARCH)) -DMLIB_ADD_SUFF $(INLINE_VIS) \
141 -I$(SHARE_SRC)/native/sun/awt/medialib \
142 -I$(PLATFORM_SRC)/native/sun/awt/medialib \
143 -I$(PLATFORM_SRC)/native/sun/java2d/loops
144
145vpath %.c $(PLATFORM_SRC)/native/sun/java2d/loops
146vpath %.c $(SHARE_SRC)/native/sun/awt/medialib
147vpath %.c $(PLATFORM_SRC)/native/sun/awt/medialib
148vpath %.s $(PLATFORM_SRC)/native/sun/awt/medialib
149
150else
151 FILES_c += MapAccelFunc.c
152endif
153# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ SOLARIS-SPARC
154
155#
156# Resources
157#
158LOCALE_SET_DEFINITION = jre
159ifeq ($(PLATFORM), windows)
160 RESOURCE_BUNDLES_COMPILED_PROPERTIES += \
161 sun/awt/windows/awtLocalization.properties
162endif
163
164#
165# Rules
166#
167ifeq ($(PLATFORM), linux)
168 FILES_m = mapfile-vers-linux
169 # libawt.so on Linux is statically linked with Motif and contains all the
170 # Xm symbols. Mapfile is disabled so the symbols will remain public.
171 LDNOMAP=true
172endif
173
174include $(BUILDDIR)/common/Mapfile-vers.gmk
175include $(BUILDDIR)/common/Library.gmk
176
okutsudb181462010-12-15 11:38:34 +0900177COMPILEFONTCONFIG_FLAGS =
178ifdef ALT_COMPILEFONTCONFIG_FLAGS
179 COMPILEFONTCONFIG_FLAGS += $(ALT_COMPILEFONTCONFIG_FLAGS)
180endif
duke6e45e102007-12-01 00:00:00 +0000181build: fontconfigs
182
183
184ifeq ($(PLATFORM), windows)
185# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv WINDOWS
186#
187# Additional dependencies.
188#
189# If make.depend is not working correctly, then it can be omitted
190# if you always build from a clean workspace.
191
192include make.depend
193
194# required additional rules:
195
196# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ WINDOWS
197endif # PLATFORM
198
199ifneq ($(PLATFORM), windows)
200# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv SOLARIS/LINUX
201
202ifndef OPENJDK
203build: dgalibs
204endif
205# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ SOLARIS/LINUX
206endif # PLATFORM
207
208clobber clean:: java2d.clean fontconfigs.clean
209
210ifndef OPENJDK
211clobber clean:: dgalib.clean
212endif
213
214java2d.clean:
215 $(RM) -r $(CLASSBINDIR)/sun/java2d .classes.*
216
217#
218# Add to the ambient vpath to pick up files in subdirectories
219#
220vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/image
221vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/image/gif
222vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/image/cvutils
223vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/shell
224vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/medialib
225vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/debug
art433d2732009-02-11 17:07:06 +0300226vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/utility
duke6e45e102007-12-01 00:00:00 +0000227vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/../java2d
228vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/../java2d/loops
229vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/../java2d/pipe
230vpath %.cpp $(SHARE_SRC)/native/$(PKGDIR)/image
231ifeq ($(PLATFORM), windows)
232# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv WINDOWS
233vpath %.cpp $(PLATFORM_SRC)/native/sun/windows
234vpath %.cpp $(PLATFORM_SRC)/native/$(PKGDIR)
235vpath %.cpp $(PLATFORM_SRC)/native/$(PKGDIR)/../java2d/windows
236vpath %.cpp $(PLATFORM_SRC)/native/$(PKGDIR)/../java2d/d3d
237vpath %.c $(PLATFORM_SRC)/native/$(PKGDIR)/../java2d/opengl
238vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/../java2d/opengl
239vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/../font
240# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ WINDOWS
241endif # PLATFORM
242
243ifeq ($(PLATFORM), linux)
244# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv LINUX
245vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/../java2d/opengl
246vpath %.c $(PLATFORM_SRC)/native/$(PKGDIR)/../java2d/opengl
247vpath %.c $(PLATFORM_SRC)/native/$(PKGDIR)/../java2d/x11
248vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/../font
249# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ LINUX
250endif # PLATFORM
251
252ifeq ($(PLATFORM), windows)
253# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv WINDOWS
254OTHER_LDLIBS = kernel32.lib user32.lib gdi32.lib winspool.lib \
art591952e2008-08-26 13:09:34 +0400255 imm32.lib ole32.lib uuid.lib shell32.lib \
uta28a2b552009-12-24 17:19:09 +0300256 comdlg32.lib winmm.lib comctl32.lib \
257 shlwapi.lib delayimp.lib \
art591952e2008-08-26 13:09:34 +0400258 $(JVMLIB) \
259 /DELAYLOAD:user32.dll /DELAYLOAD:gdi32.dll \
260 /DELAYLOAD:shell32.dll /DELAYLOAD:winmm.dll \
261 /DELAYLOAD:winspool.drv /DELAYLOAD:imm32.dll \
262 /DELAYLOAD:ole32.dll /DELAYLOAD:comdlg32.dll \
uta28a2b552009-12-24 17:19:09 +0300263 /DELAYLOAD:comctl32.dll /DELAYLOAD:shlwapi.dll
duke6e45e102007-12-01 00:00:00 +0000264
265clean:: awt.clean
266
267awt.clean:
268 $(RM) $(TEMPDIR)/awt.ico
269 $(RM) $(TEMPDIR)/awt.res
270 $(RM) $(TEMPDIR)/hand.cur
271 $(RM) $(TEMPDIR)/check.bmp
272# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ WINDOWS
273endif # PLATFORM
274
275ifneq ($(PLATFORM), windows)
276# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv SOLARIS/LINUX
277
278LIBXTST = -lXtst
279
280# Use -lXmu for EditRes support
281LIBXMU_DBG = -lXmu
282LIBXMU_OPT =
283LIBXMU = $(LIBXMU_$(VARIANT))
284
285#
286# Extra C flags.
287#
288
289
290ifndef OPENJDK
291
292#
293# Solaris X11 Direct Graphics Access library
294#
295
296_DGALIBS_sparc = \
297 libxinerama.so \
298 libjdgaSUNWcg6.so \
299 libjdgaSUNWffb.so \
300 libjdgaSUNWm64.so \
301 libjdgaSUNWafb.so
302
303_DGALIBS_sparcv9 = \
304 libxinerama.so \
305 libjdgaSUNWcg6.so \
306 libjdgaSUNWffb.so \
307 libjdgaSUNWm64.so \
308 libjdgaSUNWafb.so
309
310_DGALIBS_i586 = # no i586 library yet
311
312_DGALIBS_amd64 = # no amd64 library yet
313
314DGALIBS = $(_DGALIBS_$(ARCH):%=$(LIBDIR)/$(LIBARCH)/%)
315
316dgalibs: $(DGALIBS)
317
318$(LIBDIR)/$(LIBARCH)/libxinerama.so: $(CLOSED_SRC)/solaris/lib/$(ARCH)/libxinerama.so
319 $(install-file)
mchung3baa2d62010-01-07 08:14:48 -0800320 $(call chmod-file, a+x)
duke6e45e102007-12-01 00:00:00 +0000321
322$(LIBDIR)/$(LIBARCH)/libjdgaSUNW%.so: $(CLOSED_SRC)/solaris/lib/$(ARCH)/libjdgaSUNW%.so
323 $(install-file)
mchung3baa2d62010-01-07 08:14:48 -0800324 $(call chmod-file, a+x)
duke6e45e102007-12-01 00:00:00 +0000325
326$(LIBDIR)/$(LIBARCH)/libjdgaSUNWafb.so: $(LIBDIR)/$(LIBARCH)/libjdgaSUNWffb.so
327 $(prep-target)
mchung3baa2d62010-01-07 08:14:48 -0800328 $(call install-sym-link, libjdgaSUNWffb.so)
duke6e45e102007-12-01 00:00:00 +0000329
330clean:: dgalib.clean
331
332dgalib.clean:
333 $(RM) $(LIBDIR)/$(LIBARCH)/libjdgaSUNW* $(LIBDIR)/$(LIBARCH)/libxinerama.so
334endif
335
336# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ SOLARIS/LINUX
337endif # PLATFORM
338
339#
340# Font configs
341#
342
343ifeq ($(PLATFORM), windows)
344# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv WINDOWS
345
346FONTCONFIGS_SRC = $(PLATFORM_SRC)/classes/sun/awt/windows
347_FONTCONFIGS = \
prr943cc3b2008-12-18 11:25:09 -0800348 fontconfig.properties
duke6e45e102007-12-01 00:00:00 +0000349
350FONTCONFIGS_SRC_PREFIX =
351
352# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ WINDOWS
353endif # PLATFORM
354
355ifeq ($(PLATFORM), linux)
356# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv LINUX
357ifdef OPENJDK
358
359FONTCONFIGS_SRC = $(PLATFORM_SRC)/classes/sun/awt/fontconfigs
360_FONTCONFIGS = \
361 fontconfig.properties \
362 fontconfig.SuSE.properties \
363 fontconfig.Ubuntu.properties \
364 fontconfig.Fedora.properties
365else
366
367FONTCONFIGS_SRC = $(CLOSED_SRC)/solaris/classes/sun/awt/fontconfigs
368_FONTCONFIGS = \
369 fontconfig.properties \
dbucka6ed22f2012-01-16 11:52:51 +0400370 fontconfig.RedHat.5.properties \
371 fontconfig.RedHat.6.properties \
duke6e45e102007-12-01 00:00:00 +0000372 fontconfig.Turbo.properties \
okutsube547ff2010-12-09 12:36:58 +0900373 fontconfig.SuSE.10.properties \
374 fontconfig.SuSE.11.properties
duke6e45e102007-12-01 00:00:00 +0000375endif
376
377FONTCONFIGS_SRC_PREFIX = $(PLATFORM).
378
379# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ LINUX
380endif # PLATFORM
381
382ifeq ($(PLATFORM), solaris)
383# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv SOLARIS
384
385FONTCONFIGS_SRC = $(PLATFORM_SRC)/classes/sun/awt/fontconfigs
386_FONTCONFIGS = \
prr16f235f2011-01-20 13:56:26 -0800387 fontconfig.properties
duke6e45e102007-12-01 00:00:00 +0000388
389FONTCONFIGS_SRC_PREFIX = $(PLATFORM).
390
391# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ SOLARIS
392endif # PLATFORM
393
394FONTCONFIGS = $(_FONTCONFIGS:%=$(LIBDIR)/%.src)
395BINARYFONTCONFIGS = $(_FONTCONFIGS:%.properties=$(LIBDIR)/%.bfc)
396
397fontconfigs: $(FONTCONFIGS) $(BINARYFONTCONFIGS)
398
399$(LIBDIR)/%.src: $(FONTCONFIGS_SRC)/$(FONTCONFIGS_SRC_PREFIX)%
400 $(install-file)
401
402COMPILEFONTCONFIG_JARFILE = $(BUILDTOOLJARDIR)/compilefontconfig.jar
403
404$(LIBDIR)/%.bfc: $(FONTCONFIGS_SRC)/$(FONTCONFIGS_SRC_PREFIX)%.properties \
405 $(COMPILEFONTCONFIG_JARFILE)
406 $(prep-target)
okutsudb181462010-12-15 11:38:34 +0900407 $(BOOT_JAVA_CMD) -jar $(COMPILEFONTCONFIG_JARFILE) $(COMPILEFONTCONFIG_FLAGS) $< $@
mchung3baa2d62010-01-07 08:14:48 -0800408 $(call chmod-file, 444)
duke6e45e102007-12-01 00:00:00 +0000409 @$(java-vm-cleanup)
410
411fontconfigs.clean :
412 $(RM) $(FONTCONFIGS)
413 $(RM) $(BINARYFONTCONFIGS)
414
415ifeq ($(PLATFORM), windows)
416# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv WINDOWS
417OTHER_CFLAGS += $(GX_OPTION) -DUNICODE -D_UNICODE
418
419ifeq ($(MILESTONE), internal)
420 CPPFLAGS += -DINTERNAL_BUILD
421endif
422
423#
424# Useful variables that name parts of the src tree.
425#
426WINAWT_native = $(PLATFORM_SRC)/native/sun/windows
427WINAWT_COMMON_native = $(PLATFORM_SRC)/native/sun/awt_common
428
429# FIXME: awt shouldn't have to see the VM's private headers.
430# FIXME: if you re-order this list, the build breaks, possibly because
431# of filename collision. Such a collision, if present, is pure
432# evil. Need to investigate this.
433
434OTHER_INCLUDES += -I$(CLASSHDRDIR)/../../java/jvm \
435 -I$(OBJDIR) \
436 -I$(SHARE_SRC)/native/common \
437 -I$(WINAWT_native) \
438 -I$(DXSDK_INCLUDE_PATH) \
439 -I$(SHARE_SRC)/native/sun/awt/image/cvutils \
440 -I$(SHARE_SRC)/native/sun/awt/image \
441 -I$(SHARE_SRC)/native/sun/java2d/loops \
442 -I$(SHARE_SRC)/native/sun/java2d \
443 -I$(PLATFORM_SRC)/native/sun/java2d \
444 -I$(SHARE_SRC)/native/sun/java2d/opengl \
445 -I$(PLATFORM_SRC)/native/sun/java2d/d3d \
446 -I$(PLATFORM_SRC)/native/sun/java2d/opengl \
447 -I$(PLATFORM_SRC)/native/sun/java2d/windows \
448 -I$(SHARE_SRC)/native/sun/font \
449 -I$(SHARE_SRC)/native/sun/java2d/pipe \
450 -I$(SHARE_SRC)/native/sun/dc/path \
451 -I$(SHARE_SRC)/native/sun/dc/doe \
452 -I$(SHARE_SRC)/native/sun/awt/debug \
tdvcf2e2232008-07-18 10:48:44 -0700453 -I$(PLATFORM_SRC)/native/sun/awt
duke6e45e102007-12-01 00:00:00 +0000454# -I$(WINAWT_COMMON_native)
455
456# this is only required for compiling )/native/sun/awt/medialib/*.c files
457#
458OTHER_INCLUDES += -I$(SHARE_SRC)/native/sun/awt/medialib
459
460#
461# .res file construction.
462#
463
464ifdef OPENJDK
465 RC_FLAGS += -i "$(PLATFORM_SRC)/resource/icons"
466else
467 RC_FLAGS += -i "$(CLOSED_SRC)/windows/native/sun/windows"
468endif
469VERSIONINFO_RESOURCE = $(WINAWT_native)/awt.rc
470
471# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ WINDOWS
472endif # PLATFORM
473
474ifneq ($(PLATFORM), windows)
475# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv SOLARIS/LINUX
476
477#
478# Other extra flags needed for compiling.
479#
480
481ifeq ($(PLATFORM), linux)
482CPPFLAGS += -I$(OPENWIN_HOME)/include \
483 -I$(OPENWIN_HOME)/include/X11/extensions \
484 -I$(PLATFORM_SRC)/native/$(PKGDIR)/font
485endif
486CPPFLAGS += -I$(SHARE_SRC)/native/$(PKGDIR)/debug \
487 -I$(SHARE_SRC)/native/$(PKGDIR)/../font \
488 -I$(PLATFORM_SRC)/native/$(PKGDIR)/../font \
489 -I$(SHARE_SRC)/native/$(PKGDIR)/image \
490 -I$(SHARE_SRC)/native/$(PKGDIR)/image/cvutils \
491 -I$(SHARE_SRC)/native/$(PKGDIR)/shell \
492 -I$(SHARE_SRC)/native/$(PKGDIR)/medialib \
493 -I$(PLATFORM_SRC)/native/$(PKGDIR)/medialib \
494 -I$(SHARE_SRC)/native/$(PKGDIR)/../java2d \
495 -I$(PLATFORM_SRC)/native/$(PKGDIR)/../java2d \
496 -I$(SHARE_SRC)/native/$(PKGDIR)/../java2d/loops \
497 -I$(SHARE_SRC)/native/$(PKGDIR)/../java2d/pipe \
498 -I$(SHARE_SRC)/native/$(PKGDIR)/../java2d/opengl \
499 -I$(PLATFORM_SRC)/native/$(PKGDIR)/../java2d/opengl \
500 -I$(PLATFORM_SRC)/native/$(PKGDIR)/../java2d/x11 \
501 -I$(SHARE_SRC)/native/$(PKGDIR)/../dc/doe \
502 -I$(SHARE_SRC)/native/$(PKGDIR)/../dc/path \
503 -I$(PLATFORM_SRC)/native/$(PKGDIR)/../jdga \
504 -I$(PLATFORM_SRC)/native/$(PKGDIR) \
505 $(EVENT_MODEL)
506
507ifeq ($(PLATFORM), linux)
508LDFLAGS += -L$(OPENWIN_LIB)
509endif
510
511LDFLAGS += -L$(LIBDIR)/$(LIBARCH)/$(TSOBJDIR) \
512 $(AWT_RUNPATH)
513
514# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ SOLARIS/LINUX
515endif # PLATFORM
516
517CLASSES.export += java.io.InputStream \
518 java.lang.Integer \
519 java.lang.ThreadGroup
520
521.PHONY: dgalibs dgalib.clean fontconfigs fontconfigs.clean
522