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