1 | #
|
---|
2 | # Copyright (c) 1995, 2007, 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 | ifeq ($(PLATFORM), os2)
|
---|
32 | LIBRARY_SHORT = jawtos2
|
---|
33 | endif
|
---|
34 |
|
---|
35 | #
|
---|
36 | # Tell Defs.gmk that VIS is needed
|
---|
37 | #
|
---|
38 | VIS_NEEDED=true
|
---|
39 |
|
---|
40 | include $(BUILDDIR)/common/Defs.gmk
|
---|
41 |
|
---|
42 | #
|
---|
43 | # Use highest optimization level
|
---|
44 | #
|
---|
45 | _OPT = $(CC_HIGHEST_OPT)
|
---|
46 |
|
---|
47 | OTHER_CFLAGS += -D__MEDIALIB_OLD_NAMES -D__USE_J2D_NAMES
|
---|
48 |
|
---|
49 | #
|
---|
50 | # Files
|
---|
51 | #
|
---|
52 |
|
---|
53 | #
|
---|
54 | # Include all Java source files in sun/awt and sun/java2d, except for:
|
---|
55 | # sun/awt/resources handled by java/awt/Makefile
|
---|
56 | # sun/java2d/pisces handled by sun/pisces/Makefile
|
---|
57 | #
|
---|
58 | AUTO_FILES_JAVA_DIRS = sun/awt sun/java2d
|
---|
59 | AUTO_JAVA_PRUNE = resources pisces
|
---|
60 |
|
---|
61 | ifeq ($(PLATFORM), windows)
|
---|
62 | # vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv WINDOWS
|
---|
63 |
|
---|
64 | #
|
---|
65 | # Files
|
---|
66 | #
|
---|
67 | include FILES_c_windows.gmk
|
---|
68 | include FILES_export_windows.gmk
|
---|
69 |
|
---|
70 | #
|
---|
71 | # Prune files that are currently unused on Windows (but still used on
|
---|
72 | # Solaris/Linux).
|
---|
73 | #
|
---|
74 | AUTO_JAVA_PRUNE += RemoteOffScreenImage.java
|
---|
75 |
|
---|
76 | OTHER_CXXFLAGS += -DD3D_OVERLOADS
|
---|
77 | OTHER_CFLAGS += $(GX_OPTION) -DMLIB_NO_LIBSUNMATH -DUNICODE -D_UNICODE
|
---|
78 | OTHER_CXXFLAGS += $(GX_OPTION) -DUNICODE -D_UNICODE
|
---|
79 |
|
---|
80 | ifeq ($(ARCH_DATA_MODEL), 64)
|
---|
81 | OTHER_CFLAGS += -DMLIB_OS64BIT
|
---|
82 | endif
|
---|
83 |
|
---|
84 | # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ WINDOWS
|
---|
85 | endif # PLATFORM
|
---|
86 |
|
---|
87 | ifeq ($(PLATFORM), os2)
|
---|
88 | # vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv OS/2
|
---|
89 |
|
---|
90 | #
|
---|
91 | # Files
|
---|
92 | #
|
---|
93 | include FILES_c_windows.gmk
|
---|
94 | include FILES_export_windows.gmk
|
---|
95 |
|
---|
96 | FILES_cpp += jdk_DllMain.cpp
|
---|
97 | CXXFLAGS_OPT/jdk_DllMain.obj += -DHAVE_DLLMAIN
|
---|
98 | CXXFLAGS_DBG/jdk_DllMain.obj += -DHAVE_DLLMAIN
|
---|
99 |
|
---|
100 | #
|
---|
101 | # Prune files that are currently unused on Windows (but still used on
|
---|
102 | # Solaris/Linux).
|
---|
103 | #
|
---|
104 | AUTO_JAVA_PRUNE += RemoteOffScreenImage.java
|
---|
105 |
|
---|
106 | OTHER_CXXFLAGS += -DD3D_OVERLOADS
|
---|
107 | OTHER_CFLAGS += -DUNICODE -D_UNICODE
|
---|
108 | OTHER_CXXFLAGS += -DUNICODE -D_UNICODE
|
---|
109 |
|
---|
110 | # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ OS/2
|
---|
111 | endif # PLATFORM
|
---|
112 |
|
---|
113 | ifneq ($(filter-out windows os2, $(PLATFORM)),)
|
---|
114 | # vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv SOLARIS/LINUX
|
---|
115 |
|
---|
116 | #
|
---|
117 | # Files
|
---|
118 | #
|
---|
119 | include FILES_c_unix.gmk
|
---|
120 | include FILES_export_unix.gmk
|
---|
121 | #
|
---|
122 | # Prune the sun/awt/X11 subdirectory, which is handled by sun/xawt/Makefile.
|
---|
123 | # Also prune files that are currently unused on Solaris/Linux (but still
|
---|
124 | # used on Windows).
|
---|
125 | #
|
---|
126 | AUTO_JAVA_PRUNE += X11 AWTCharset.java
|
---|
127 |
|
---|
128 | ifeq ($(PLATFORM), solaris)
|
---|
129 | FILES_c = $(FILES_2D_c)
|
---|
130 | FILES_c += awt_LoadLibrary.c
|
---|
131 | OTHER_LDLIBS = $(JVMLIB) $(LIBM) -ldl
|
---|
132 | ifeq ($(CC_VER), 5.8)
|
---|
133 | ifndef REMOVE_ALL_WORKAROUNDS
|
---|
134 | ifeq ($(ARCH_FAMILY), i586)
|
---|
135 | # If on Solaris 11 (or dlfcn.h has unknown_control_flow pragmas in it)
|
---|
136 | # we trigger a SS11 bug that causes the compiler to crash (bug 6343678)
|
---|
137 | # Here we check to see if we need this workaround and change the opt
|
---|
138 | # settings for this one file.
|
---|
139 | USE_WORKAROUND:=$(shell $(GREP) unknown_control_flow /usr/include/dlfcn.h)
|
---|
140 | ifneq ($(USE_WORKAROUND),)
|
---|
141 | ifeq ($(FASTDEBUG), true)
|
---|
142 | CFLAGS_DBG/awt_Mlib.o = -xO0 \
|
---|
143 | $(warning "WARNING: Using workaround for SS11 bug 6343678, on $@")
|
---|
144 | endif
|
---|
145 | # Compiler bug 6343678 need to prevent a SEGV in the compiler
|
---|
146 | CFLAGS_OPT/awt_Mlib.o = -g \
|
---|
147 | $(warning "WARNING: Using workaround for SS11 bug 6343678, on $@")
|
---|
148 | endif
|
---|
149 | endif
|
---|
150 | endif
|
---|
151 | endif
|
---|
152 | endif
|
---|
153 |
|
---|
154 | ifeq ($(PLATFORM), linux)
|
---|
155 | FILES_c = $(FILES_2D_c)
|
---|
156 | FILES_c += awt_LoadLibrary.c
|
---|
157 | OTHER_CFLAGS += -DMLIB_NO_LIBSUNMATH
|
---|
158 | OTHER_CFLAGS += -DMOTIF_VERSION=2
|
---|
159 | OTHER_LDLIBS = $(JVMLIB) $(LIBM) -ldl
|
---|
160 | endif
|
---|
161 |
|
---|
162 | FILES_c += initIDs.c
|
---|
163 |
|
---|
164 | # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ SOLARIS/LINUX
|
---|
165 | endif # PLATFORM
|
---|
166 |
|
---|
167 | # vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv SOLARIS-SPARC
|
---|
168 | # solaris-sparc and solaris-sparcv9 both build 'vis'
|
---|
169 | ifeq ("$(PLATFORM)-$(ARCH_FAMILY)", "solaris-sparc")
|
---|
170 | FILES_c += $(FILES_2D_vis)
|
---|
171 | ASFLAGS += -P
|
---|
172 | FILES_s += mlib_v_ImageCopy_blk.s
|
---|
173 | INLINE_VIS = $(PLATFORM_SRC)/native/sun/awt/medialib/vis_$(ARCH_DATA_MODEL).il
|
---|
174 | CFLAGS_sparcv9 = -DMLIB_OS64BIT
|
---|
175 |
|
---|
176 | CFLAGS += $(CFLAGS_$(ARCH)) -DMLIB_ADD_SUFF $(INLINE_VIS) \
|
---|
177 | -I$(SHARE_SRC)/native/sun/awt/medialib \
|
---|
178 | -I$(PLATFORM_SRC)/native/sun/awt/medialib \
|
---|
179 | -I$(PLATFORM_SRC)/native/sun/java2d/loops
|
---|
180 |
|
---|
181 | vpath %.c $(PLATFORM_SRC)/native/sun/java2d/loops
|
---|
182 | vpath %.c $(SHARE_SRC)/native/sun/awt/medialib
|
---|
183 | vpath %.c $(PLATFORM_SRC)/native/sun/awt/medialib
|
---|
184 | vpath %.s $(PLATFORM_SRC)/native/sun/awt/medialib
|
---|
185 |
|
---|
186 | else
|
---|
187 | FILES_c += MapAccelFunc.c
|
---|
188 | endif
|
---|
189 | # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ SOLARIS-SPARC
|
---|
190 |
|
---|
191 | #
|
---|
192 | # Resources
|
---|
193 | #
|
---|
194 | LOCALE_SET_DEFINITION = jre
|
---|
195 | ifeq ($(filter-out windows os2, $(PLATFORM)),)
|
---|
196 | RESOURCE_BUNDLES_COMPILED_PROPERTIES += \
|
---|
197 | sun/awt/windows/awtLocalization.properties
|
---|
198 | endif
|
---|
199 |
|
---|
200 | #
|
---|
201 | # Rules
|
---|
202 | #
|
---|
203 | ifeq ($(PLATFORM), linux)
|
---|
204 | FILES_m = mapfile-vers-linux
|
---|
205 | # libawt.so on Linux is statically linked with Motif and contains all the
|
---|
206 | # Xm symbols. Mapfile is disabled so the symbols will remain public.
|
---|
207 | LDNOMAP=true
|
---|
208 | endif
|
---|
209 |
|
---|
210 | include $(BUILDDIR)/common/Mapfile-vers.gmk
|
---|
211 | include $(BUILDDIR)/common/Library.gmk
|
---|
212 |
|
---|
213 | build: fontconfigs
|
---|
214 |
|
---|
215 |
|
---|
216 | ifeq ($(PLATFORM), windows)
|
---|
217 | # vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv WINDOWS
|
---|
218 | #
|
---|
219 | # Additional dependencies.
|
---|
220 | #
|
---|
221 | # If make.depend is not working correctly, then it can be omitted
|
---|
222 | # if you always build from a clean workspace.
|
---|
223 |
|
---|
224 | include make.depend
|
---|
225 |
|
---|
226 | # required additional rules:
|
---|
227 |
|
---|
228 | # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ WINDOWS
|
---|
229 | endif # PLATFORM
|
---|
230 |
|
---|
231 | ifneq ($(filter-out windows os2, $(PLATFORM)),)
|
---|
232 | # vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv SOLARIS/LINUX
|
---|
233 |
|
---|
234 | ifndef OPENJDK
|
---|
235 | build: dgalibs
|
---|
236 | endif
|
---|
237 | # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ SOLARIS/LINUX
|
---|
238 | endif # PLATFORM
|
---|
239 |
|
---|
240 | clobber clean:: java2d.clean motif.clean fontconfigs.clean
|
---|
241 |
|
---|
242 | ifndef OPENJDK
|
---|
243 | clobber clean:: dgalib.clean
|
---|
244 | endif
|
---|
245 |
|
---|
246 | java2d.clean:
|
---|
247 | $(RM) -r $(CLASSBINDIR)/sun/java2d .classes.*
|
---|
248 |
|
---|
249 | #
|
---|
250 | # Add to the ambient vpath to pick up files in subdirectories
|
---|
251 | #
|
---|
252 | vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/image
|
---|
253 | vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/image/gif
|
---|
254 | vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/image/cvutils
|
---|
255 | vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/shell
|
---|
256 | vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/medialib
|
---|
257 | vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/debug
|
---|
258 | vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/../java2d
|
---|
259 | vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/../java2d/loops
|
---|
260 | vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/../java2d/pipe
|
---|
261 | vpath %.cpp $(SHARE_SRC)/native/$(PKGDIR)/image
|
---|
262 | ifeq ($(filter-out windows os2, $(PLATFORM)),)
|
---|
263 | # vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv WINDOWS
|
---|
264 | ifeq ($(PLATFORM), os2)
|
---|
265 | vpath %.cpp $(PLATFORM_SRC_OS2)/native/sun/os2
|
---|
266 | endif
|
---|
267 | vpath %.cpp $(PLATFORM_SRC)/native/sun/windows
|
---|
268 | vpath %.cpp $(PLATFORM_SRC)/native/$(PKGDIR)
|
---|
269 | vpath %.cpp $(PLATFORM_SRC)/native/$(PKGDIR)/../java2d/windows
|
---|
270 | vpath %.cpp $(PLATFORM_SRC)/native/$(PKGDIR)/../java2d/d3d
|
---|
271 | vpath %.c $(PLATFORM_SRC)/native/$(PKGDIR)/../java2d/opengl
|
---|
272 | vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/../java2d/opengl
|
---|
273 | vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/../font
|
---|
274 | # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ WINDOWS
|
---|
275 | endif # PLATFORM
|
---|
276 |
|
---|
277 | ifeq ($(PLATFORM), linux)
|
---|
278 | # vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv LINUX
|
---|
279 | vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/../java2d/opengl
|
---|
280 | vpath %.c $(PLATFORM_SRC)/native/$(PKGDIR)/../java2d/opengl
|
---|
281 | vpath %.c $(PLATFORM_SRC)/native/$(PKGDIR)/../java2d/x11
|
---|
282 | vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/../font
|
---|
283 | # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ LINUX
|
---|
284 | endif # PLATFORM
|
---|
285 |
|
---|
286 | ifeq ($(PLATFORM), windows)
|
---|
287 | # vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv WINDOWS
|
---|
288 | ifeq ($(ARCH_DATA_MODEL), 64)
|
---|
289 | OTHER_LDLIBS = kernel32.lib user32.lib gdi32.lib winspool.lib \
|
---|
290 | imm32.lib ole32.lib uuid.lib $(JVMLIB) \
|
---|
291 | shell32.lib
|
---|
292 | else
|
---|
293 | OTHER_LDLIBS = /nod:kernel32.lib /nod:advapi32.lib /nod:user32.lib \
|
---|
294 | /nod:gdi32.lib /nod:shell32.lib /nod:comdlg32.lib \
|
---|
295 | /nod:version.lib /nod:mpr.lib /nod:rasapi32.lib \
|
---|
296 | /nod:winmm.lib /nod:winspool.lib /nod:vfw32.lib \
|
---|
297 | /nod:secur32.lib /nod:oleacc.lib /nod:oledlg.lib \
|
---|
298 | /nod:sensapi.lib $(UNICOWS_LIB_PATH)/unicows.lib \
|
---|
299 | kernel32.lib user32.lib gdi32.lib winspool.lib \
|
---|
300 | imm32.lib ole32.lib uuid.lib $(JVMLIB) \
|
---|
301 | shell32.lib
|
---|
302 | endif
|
---|
303 |
|
---|
304 | clean:: awt.clean
|
---|
305 |
|
---|
306 | awt.clean:
|
---|
307 | $(RM) $(TEMPDIR)/awt.ico
|
---|
308 | $(RM) $(TEMPDIR)/awt.res
|
---|
309 | $(RM) $(TEMPDIR)/hand.cur
|
---|
310 | $(RM) $(TEMPDIR)/check.bmp
|
---|
311 | # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ WINDOWS
|
---|
312 | endif # PLATFORM
|
---|
313 |
|
---|
314 | ifeq ($(PLATFORM), os2)
|
---|
315 | # vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv OS/2
|
---|
316 | OTHER_LDLIBS = -lkernel32.lib -ladvapi32.lib -luser32.lib \
|
---|
317 | -lgdi32.lib -lshell32.lib -lcomdlg32.lib \
|
---|
318 | -lversion.lib -lmpr.lib -lrasapi32.lib \
|
---|
319 | -lwinmm.lib -lwinspool.lib \
|
---|
320 | -lsecur32.lib -loleacc.lib -loledlg.lib \
|
---|
321 | -lkernel32.lib -luser32.lib -lgdi32.lib -lwinspool.lib \
|
---|
322 | -limm32os2.lib -lole32.lib -lguidlib.lib $(JVMLIB) \
|
---|
323 | -lddraw.lib -lshell32.lib
|
---|
324 |
|
---|
325 | clean:: awt.clean
|
---|
326 |
|
---|
327 | awt.clean:
|
---|
328 | $(RM) $(TEMPDIR)/awt.ico
|
---|
329 | $(RM) $(TEMPDIR)/awt.res
|
---|
330 | $(RM) $(TEMPDIR)/hand.cur
|
---|
331 | $(RM) $(TEMPDIR)/check.bmp
|
---|
332 | # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ OS/2
|
---|
333 | endif # PLATFORM
|
---|
334 |
|
---|
335 | ifneq ($(filter-out windows os2, $(PLATFORM)),)
|
---|
336 | # vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv SOLARIS/LINUX
|
---|
337 |
|
---|
338 | ifeq ($(STATIC_MOTIF),true)
|
---|
339 | LIBXM = $(MOTIF_LIB)/libXm.a -lXp
|
---|
340 | else # STATIC_MOTIF
|
---|
341 | LIBXM = -lXm
|
---|
342 | endif # STATIC_MOTIF
|
---|
343 |
|
---|
344 | LIBXTST = -lXtst
|
---|
345 |
|
---|
346 | # Use -lXmu for EditRes support
|
---|
347 | LIBXMU_DBG = -lXmu
|
---|
348 | LIBXMU_OPT =
|
---|
349 | LIBXMU = $(LIBXMU_$(VARIANT))
|
---|
350 |
|
---|
351 | #
|
---|
352 | # Extra C flags.
|
---|
353 | #
|
---|
354 | INIT += motif
|
---|
355 |
|
---|
356 | motif: $(OBJDIR)/.library.dirs.$(ARCH) $(OBJDIR)/.library.motif.$(ARCH)
|
---|
357 |
|
---|
358 | $(OBJDIR)/.library.motif.$(ARCH): $(MOTIF_LIB)/libXm.so.3
|
---|
359 | $(CP) $(MOTIF_LIB)/libXm.so.3 $(LIBDIR)/$(LIBARCH)/$(TSOBJDIR)
|
---|
360 | $(CD) $(LIBDIR)/$(LIBARCH)/$(TSOBJDIR); $(RM) libXm.so; \
|
---|
361 | $(LN) -s libXm.so.3 libXm.so
|
---|
362 | @-$(TOUCH) $(OBJDIR)/.library.motif.$(ARCH)
|
---|
363 |
|
---|
364 | clean:: motif.clean
|
---|
365 |
|
---|
366 | motif.clean :
|
---|
367 | $(RM) $(LIBDIR)/$(LIBARCH)/$(TSOBJDIR)/libXm.*
|
---|
368 |
|
---|
369 | ifndef OPENJDK
|
---|
370 |
|
---|
371 | #
|
---|
372 | # Solaris X11 Direct Graphics Access library
|
---|
373 | #
|
---|
374 |
|
---|
375 | _DGALIBS_sparc = \
|
---|
376 | libxinerama.so \
|
---|
377 | libjdgaSUNWcg6.so \
|
---|
378 | libjdgaSUNWffb.so \
|
---|
379 | libjdgaSUNWm64.so \
|
---|
380 | libjdgaSUNWafb.so
|
---|
381 |
|
---|
382 | _DGALIBS_sparcv9 = \
|
---|
383 | libxinerama.so \
|
---|
384 | libjdgaSUNWcg6.so \
|
---|
385 | libjdgaSUNWffb.so \
|
---|
386 | libjdgaSUNWm64.so \
|
---|
387 | libjdgaSUNWafb.so
|
---|
388 |
|
---|
389 | _DGALIBS_i586 = # no i586 library yet
|
---|
390 |
|
---|
391 | _DGALIBS_amd64 = # no amd64 library yet
|
---|
392 |
|
---|
393 | DGALIBS = $(_DGALIBS_$(ARCH):%=$(LIBDIR)/$(LIBARCH)/%)
|
---|
394 |
|
---|
395 | dgalibs: $(DGALIBS)
|
---|
396 |
|
---|
397 | $(LIBDIR)/$(LIBARCH)/libxinerama.so: $(CLOSED_SRC)/solaris/lib/$(ARCH)/libxinerama.so
|
---|
398 | $(install-file)
|
---|
399 | $(CHMOD) a+x $@
|
---|
400 |
|
---|
401 | $(LIBDIR)/$(LIBARCH)/libjdgaSUNW%.so: $(CLOSED_SRC)/solaris/lib/$(ARCH)/libjdgaSUNW%.so
|
---|
402 | $(install-file)
|
---|
403 | $(CHMOD) a+x $@
|
---|
404 |
|
---|
405 | $(LIBDIR)/$(LIBARCH)/libjdgaSUNWafb.so: $(LIBDIR)/$(LIBARCH)/libjdgaSUNWffb.so
|
---|
406 | $(prep-target)
|
---|
407 | $(LN) -s libjdgaSUNWffb.so $(LIBDIR)/$(LIBARCH)/libjdgaSUNWafb.so
|
---|
408 |
|
---|
409 | clean:: dgalib.clean
|
---|
410 |
|
---|
411 | dgalib.clean:
|
---|
412 | $(RM) $(LIBDIR)/$(LIBARCH)/libjdgaSUNW* $(LIBDIR)/$(LIBARCH)/libxinerama.so
|
---|
413 | endif
|
---|
414 |
|
---|
415 | # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ SOLARIS/LINUX
|
---|
416 | endif # PLATFORM
|
---|
417 |
|
---|
418 | #
|
---|
419 | # Font configs
|
---|
420 | #
|
---|
421 |
|
---|
422 | ifeq ($(PLATFORM), windows)
|
---|
423 | # vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv WINDOWS
|
---|
424 |
|
---|
425 | FONTCONFIGS_SRC = $(PLATFORM_SRC)/classes/sun/awt/windows
|
---|
426 | _FONTCONFIGS = \
|
---|
427 | fontconfig.properties \
|
---|
428 | fontconfig.98.properties
|
---|
429 |
|
---|
430 | FONTCONFIGS_SRC_PREFIX =
|
---|
431 |
|
---|
432 | # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ WINDOWS
|
---|
433 | endif # PLATFORM
|
---|
434 |
|
---|
435 | ifeq ($(PLATFORM), os2)
|
---|
436 | # vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv OS/2
|
---|
437 |
|
---|
438 | FONTCONFIGS_SRC = $(PLATFORM_SRC_OS2)/classes/sun/awt/os2
|
---|
439 | _FONTCONFIGS = \
|
---|
440 | fontconfig.properties \
|
---|
441 | fontconfig.liberation.properties
|
---|
442 |
|
---|
443 | FONTCONFIGS_SRC_PREFIX =
|
---|
444 |
|
---|
445 | # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ OS/2
|
---|
446 | endif # PLATFORM
|
---|
447 |
|
---|
448 | ifeq ($(PLATFORM), linux)
|
---|
449 | # vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv LINUX
|
---|
450 | ifdef OPENJDK
|
---|
451 |
|
---|
452 | FONTCONFIGS_SRC = $(PLATFORM_SRC)/classes/sun/awt/fontconfigs
|
---|
453 | _FONTCONFIGS = \
|
---|
454 | fontconfig.properties \
|
---|
455 | fontconfig.SuSE.properties \
|
---|
456 | fontconfig.Ubuntu.properties \
|
---|
457 | fontconfig.Fedora.properties
|
---|
458 | else
|
---|
459 |
|
---|
460 | FONTCONFIGS_SRC = $(CLOSED_SRC)/solaris/classes/sun/awt/fontconfigs
|
---|
461 | _FONTCONFIGS = \
|
---|
462 | fontconfig.properties \
|
---|
463 | fontconfig.RedHat.properties \
|
---|
464 | fontconfig.RedHat.2.1.properties \
|
---|
465 | fontconfig.RedHat.3.properties \
|
---|
466 | fontconfig.RedHat.4.properties \
|
---|
467 | fontconfig.Sun.properties \
|
---|
468 | fontconfig.Turbo.properties \
|
---|
469 | fontconfig.SuSE.properties
|
---|
470 | endif
|
---|
471 |
|
---|
472 | FONTCONFIGS_SRC_PREFIX = $(PLATFORM).
|
---|
473 |
|
---|
474 | # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ LINUX
|
---|
475 | endif # PLATFORM
|
---|
476 |
|
---|
477 | ifeq ($(PLATFORM), solaris)
|
---|
478 | # vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv SOLARIS
|
---|
479 |
|
---|
480 | FONTCONFIGS_SRC = $(PLATFORM_SRC)/classes/sun/awt/fontconfigs
|
---|
481 | _FONTCONFIGS = \
|
---|
482 | fontconfig.properties \
|
---|
483 | fontconfig.5.9.properties \
|
---|
484 | fontconfig.5.8.properties
|
---|
485 |
|
---|
486 | FONTCONFIGS_SRC_PREFIX = $(PLATFORM).
|
---|
487 |
|
---|
488 | # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ SOLARIS
|
---|
489 | endif # PLATFORM
|
---|
490 |
|
---|
491 | FONTCONFIGS = $(_FONTCONFIGS:%=$(LIBDIR)/%.src)
|
---|
492 | BINARYFONTCONFIGS = $(_FONTCONFIGS:%.properties=$(LIBDIR)/%.bfc)
|
---|
493 |
|
---|
494 | ifeq ($(PLATFORM), os2)
|
---|
495 | # copy the default fontconfig file to fontconfig.default.* for convenience
|
---|
496 | FONTCONFIGS += $(LIBDIR)/fontconfig.default.properties.src
|
---|
497 | BINARYFONTCONFIGS += $(LIBDIR)/fontconfig.default.bfc
|
---|
498 | $(LIBDIR)/fontconfig.default.properties.src: $(LIBDIR)/fontconfig.properties.src
|
---|
499 | $(install-file)
|
---|
500 | $(LIBDIR)/fontconfig.default.bfc: $(LIBDIR)/fontconfig.bfc
|
---|
501 | $(install-file)
|
---|
502 | endif
|
---|
503 |
|
---|
504 | fontconfigs: $(FONTCONFIGS) $(BINARYFONTCONFIGS)
|
---|
505 |
|
---|
506 | $(LIBDIR)/%.src: $(FONTCONFIGS_SRC)/$(FONTCONFIGS_SRC_PREFIX)%
|
---|
507 | $(install-file)
|
---|
508 |
|
---|
509 | COMPILEFONTCONFIG_JARFILE = $(BUILDTOOLJARDIR)/compilefontconfig.jar
|
---|
510 |
|
---|
511 | $(LIBDIR)/%.bfc: $(FONTCONFIGS_SRC)/$(FONTCONFIGS_SRC_PREFIX)%.properties \
|
---|
512 | $(COMPILEFONTCONFIG_JARFILE)
|
---|
513 | $(prep-target)
|
---|
514 | $(BOOT_JAVA_CMD) -jar $(COMPILEFONTCONFIG_JARFILE) $< $@
|
---|
515 | $(CHMOD) 444 $(@)
|
---|
516 | @$(java-vm-cleanup)
|
---|
517 |
|
---|
518 | fontconfigs.clean :
|
---|
519 | $(RM) $(FONTCONFIGS)
|
---|
520 | $(RM) $(BINARYFONTCONFIGS)
|
---|
521 |
|
---|
522 | ifeq ($(PLATFORM), windows)
|
---|
523 | # vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv WINDOWS
|
---|
524 | OTHER_CFLAGS += $(GX_OPTION) -DUNICODE -D_UNICODE
|
---|
525 |
|
---|
526 | ifeq ($(MILESTONE), internal)
|
---|
527 | CPPFLAGS += -DINTERNAL_BUILD
|
---|
528 | endif
|
---|
529 |
|
---|
530 | #
|
---|
531 | # Useful variables that name parts of the src tree.
|
---|
532 | #
|
---|
533 | WINAWT_native = $(PLATFORM_SRC)/native/sun/windows
|
---|
534 | WINAWT_COMMON_native = $(PLATFORM_SRC)/native/sun/awt_common
|
---|
535 |
|
---|
536 | # FIXME: awt shouldn't have to see the VM's private headers.
|
---|
537 | # FIXME: if you re-order this list, the build breaks, possibly because
|
---|
538 | # of filename collision. Such a collision, if present, is pure
|
---|
539 | # evil. Need to investigate this.
|
---|
540 |
|
---|
541 | OTHER_INCLUDES += -I$(CLASSHDRDIR)/../../java/jvm \
|
---|
542 | -I$(OBJDIR) \
|
---|
543 | -I$(SHARE_SRC)/native/common \
|
---|
544 | -I$(WINAWT_native) \
|
---|
545 | -I$(DXSDK_INCLUDE_PATH) \
|
---|
546 | -I$(SHARE_SRC)/native/sun/awt/image/cvutils \
|
---|
547 | -I$(SHARE_SRC)/native/sun/awt/image \
|
---|
548 | -I$(SHARE_SRC)/native/sun/java2d/loops \
|
---|
549 | -I$(SHARE_SRC)/native/sun/java2d \
|
---|
550 | -I$(PLATFORM_SRC)/native/sun/java2d \
|
---|
551 | -I$(SHARE_SRC)/native/sun/java2d/opengl \
|
---|
552 | -I$(PLATFORM_SRC)/native/sun/java2d/d3d \
|
---|
553 | -I$(PLATFORM_SRC)/native/sun/java2d/opengl \
|
---|
554 | -I$(PLATFORM_SRC)/native/sun/java2d/windows \
|
---|
555 | -I$(SHARE_SRC)/native/sun/font \
|
---|
556 | -I$(SHARE_SRC)/native/sun/java2d/pipe \
|
---|
557 | -I$(SHARE_SRC)/native/sun/dc/path \
|
---|
558 | -I$(SHARE_SRC)/native/sun/dc/doe \
|
---|
559 | -I$(SHARE_SRC)/native/sun/awt/debug \
|
---|
560 | -I$(PLATFORM_SRC)/native/sun/awt \
|
---|
561 | # -I$(WINAWT_COMMON_native)
|
---|
562 |
|
---|
563 | # this is only required for compiling )/native/sun/awt/medialib/*.c files
|
---|
564 | #
|
---|
565 | OTHER_INCLUDES += -I$(SHARE_SRC)/native/sun/awt/medialib
|
---|
566 |
|
---|
567 | #
|
---|
568 | # .res file construction.
|
---|
569 | #
|
---|
570 |
|
---|
571 | ifdef OPENJDK
|
---|
572 | RC_FLAGS += -i "$(PLATFORM_SRC)/resource/icons"
|
---|
573 | else
|
---|
574 | RC_FLAGS += -i "$(CLOSED_SRC)/windows/native/sun/windows"
|
---|
575 | endif
|
---|
576 | VERSIONINFO_RESOURCE = $(WINAWT_native)/awt.rc
|
---|
577 |
|
---|
578 | # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ WINDOWS
|
---|
579 | endif # PLATFORM
|
---|
580 |
|
---|
581 | ifeq ($(PLATFORM), os2)
|
---|
582 | # vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv OS/2
|
---|
583 |
|
---|
584 | #
|
---|
585 | # Useful variables that name parts of the src tree.
|
---|
586 | #
|
---|
587 | WINAWT_native = $(PLATFORM_SRC)/native/sun/windows
|
---|
588 | WINAWT_COMMON_native = $(PLATFORM_SRC)/native/sun/awt_common
|
---|
589 |
|
---|
590 | # FIXME: awt shouldn't have to see the VM's private headers.
|
---|
591 | # FIXME: if you re-order this list, the build breaks, possibly because
|
---|
592 | # of filename collision. Such a collision, if present, is pure
|
---|
593 | # evil. Need to investigate this.
|
---|
594 |
|
---|
595 | OTHER_INCLUDES += -I$(CLASSHDRDIR)/../../java/jvm \
|
---|
596 | -I$(OBJDIR) \
|
---|
597 | -I$(SHARE_SRC)/native/common \
|
---|
598 | -I$(WINAWT_native) \
|
---|
599 | -I$(SHARE_SRC)/native/sun/awt/image/cvutils \
|
---|
600 | -I$(SHARE_SRC)/native/sun/awt/image \
|
---|
601 | -I$(SHARE_SRC)/native/sun/java2d/loops \
|
---|
602 | -I$(SHARE_SRC)/native/sun/java2d \
|
---|
603 | -I$(PLATFORM_SRC)/native/sun/java2d \
|
---|
604 | -I$(SHARE_SRC)/native/sun/java2d/opengl \
|
---|
605 | -I$(PLATFORM_SRC)/native/sun/java2d/d3d \
|
---|
606 | -I$(PLATFORM_SRC)/native/sun/java2d/opengl \
|
---|
607 | -I$(PLATFORM_SRC)/native/sun/java2d/windows \
|
---|
608 | -I$(SHARE_SRC)/native/sun/font \
|
---|
609 | -I$(SHARE_SRC)/native/sun/java2d/pipe \
|
---|
610 | -I$(SHARE_SRC)/native/sun/dc/path \
|
---|
611 | -I$(SHARE_SRC)/native/sun/dc/doe \
|
---|
612 | -I$(SHARE_SRC)/native/sun/awt/debug \
|
---|
613 | -I$(PLATFORM_SRC)/native/sun/awt \
|
---|
614 | # -I$(WINAWT_COMMON_native)
|
---|
615 |
|
---|
616 | # this is only required for compiling )/native/sun/awt/medialib/*.c files
|
---|
617 | #
|
---|
618 | OTHER_INCLUDES += -I$(SHARE_SRC)/native/sun/awt/medialib
|
---|
619 |
|
---|
620 | #
|
---|
621 | # .res file construction.
|
---|
622 | #
|
---|
623 |
|
---|
624 | ifdef OPENJDK
|
---|
625 | RC_FLAGS += -i "$(PLATFORM_SRC)/resource/icons"
|
---|
626 | else
|
---|
627 | RC_FLAGS += -i "$(CLOSED_SRC)/windows/native/sun/windows"
|
---|
628 | endif
|
---|
629 | VERSIONINFO_RESOURCE = $(WINAWT_native)/awt.rc
|
---|
630 |
|
---|
631 | # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ OS/2
|
---|
632 | endif # PLATFORM
|
---|
633 |
|
---|
634 | ifneq ($(filter-out windows os2, $(PLATFORM)),)
|
---|
635 | # vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv SOLARIS/LINUX
|
---|
636 |
|
---|
637 | #
|
---|
638 | # Other extra flags needed for compiling.
|
---|
639 | #
|
---|
640 |
|
---|
641 | ifeq ($(PLATFORM), linux)
|
---|
642 | CPPFLAGS += -I$(MOTIF_DIR)/include \
|
---|
643 | -I$(OPENWIN_HOME)/include \
|
---|
644 | -I$(OPENWIN_HOME)/include/X11/extensions \
|
---|
645 | -I$(PLATFORM_SRC)/native/$(PKGDIR)/font
|
---|
646 | endif
|
---|
647 | CPPFLAGS += -I$(SHARE_SRC)/native/$(PKGDIR)/debug \
|
---|
648 | -I$(SHARE_SRC)/native/$(PKGDIR)/../font \
|
---|
649 | -I$(PLATFORM_SRC)/native/$(PKGDIR)/../font \
|
---|
650 | -I$(SHARE_SRC)/native/$(PKGDIR)/image \
|
---|
651 | -I$(SHARE_SRC)/native/$(PKGDIR)/image/cvutils \
|
---|
652 | -I$(SHARE_SRC)/native/$(PKGDIR)/shell \
|
---|
653 | -I$(SHARE_SRC)/native/$(PKGDIR)/medialib \
|
---|
654 | -I$(PLATFORM_SRC)/native/$(PKGDIR)/medialib \
|
---|
655 | -I$(SHARE_SRC)/native/$(PKGDIR)/../java2d \
|
---|
656 | -I$(PLATFORM_SRC)/native/$(PKGDIR)/../java2d \
|
---|
657 | -I$(SHARE_SRC)/native/$(PKGDIR)/../java2d/loops \
|
---|
658 | -I$(SHARE_SRC)/native/$(PKGDIR)/../java2d/pipe \
|
---|
659 | -I$(SHARE_SRC)/native/$(PKGDIR)/../java2d/opengl \
|
---|
660 | -I$(PLATFORM_SRC)/native/$(PKGDIR)/../java2d/opengl \
|
---|
661 | -I$(PLATFORM_SRC)/native/$(PKGDIR)/../java2d/x11 \
|
---|
662 | -I$(SHARE_SRC)/native/$(PKGDIR)/../dc/doe \
|
---|
663 | -I$(SHARE_SRC)/native/$(PKGDIR)/../dc/path \
|
---|
664 | -I$(PLATFORM_SRC)/native/$(PKGDIR)/../jdga \
|
---|
665 | -I$(PLATFORM_SRC)/native/$(PKGDIR) \
|
---|
666 | $(EVENT_MODEL)
|
---|
667 |
|
---|
668 | ifeq ($(PLATFORM), linux)
|
---|
669 | LDFLAGS += -L$(MOTIF_LIB) -L$(OPENWIN_LIB)
|
---|
670 | endif
|
---|
671 |
|
---|
672 | LDFLAGS += -L$(LIBDIR)/$(LIBARCH)/$(TSOBJDIR) \
|
---|
673 | $(AWT_RUNPATH)
|
---|
674 |
|
---|
675 | # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ SOLARIS/LINUX
|
---|
676 | endif # PLATFORM
|
---|
677 |
|
---|
678 | CLASSES.export += java.io.InputStream \
|
---|
679 | java.lang.Integer \
|
---|
680 | java.lang.ThreadGroup
|
---|
681 |
|
---|
682 | .PHONY: dgalibs dgalib.clean fontconfigs fontconfigs.clean
|
---|
683 |
|
---|