blob: 3851ab99ecac3e70a3361b2a0b39814909f60d6f [file] [log] [blame]
ohair92de5662012-04-10 08:22:03 -07001#
2# Copyright (c) 2011, 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
26defalt: all
27
28include $(SPEC)
29include MakeBase.gmk
30include NativeCompilation.gmk
31
32# Setup the java compilers for the JDK build.
33include Setup.gmk
34
35# Copy files (can now depend on $(COPY_FILES))
36include CopyFiles.gmk
37
38# Include the javah generated headers.
39CFLAGS_JDKLIB += -I$(JDK_OUTPUTDIR)/gensrc_headers
40CXXFLAGS_JDKLIB += -I$(JDK_OUTPUTDIR)/gensrc_headers
41
42# Put the libraries here. Different locations for different host apis.
43ifeq ($(HOST_OS_API),posix)
44 ifneq ($(HOST_OS),macosx)
45 INSTALL_LIBRARIES_HERE:=$(JDK_OUTPUTDIR)/lib/$(LIBARCH)
46 LIBARCHDIR=$(LIBARCH)/
47 else
48 INSTALL_LIBRARIES_HERE:=$(JDK_OUTPUTDIR)/lib
49 LIBARCHDIR=/
50 endif
51else
52 INSTALL_LIBRARIES_HERE:=$(JDK_OUTPUTDIR)/bin
53endif
54
erikje78df742012-06-07 20:40:50 -070055$(INSTALL_LIBRARIES_HERE)/%$(SHARED_LIBRARY_SUFFIX) : $(JDK_OUTPUTDIR)/objs/%$(SHARED_LIBRARY_SUFFIX)
56 $(ECHO) Copying $(@F)
ohair92de5662012-04-10 08:22:03 -070057 $(CP) $< $@
58
59BUILD_LIBRARIES=
60
61# TODO: Temporary until awt is converted:
62# OBJDIRNAME is the name of the directory where the object code is to
63# be placed. It's name depends on whether the data model architecture
64# is 32-bit or not.
65ifneq ($(ARCH_DATA_MODEL), 32)
66 OBJDIRNAME = obj$(ARCH_DATA_MODEL)$(OBJDIRNAME_SUFFIX)
67else
68 OBJDIRNAME = obj$(OBJDIRNAME_SUFFIX)
69endif
70
71##########################################################################################
72
erikje78df742012-06-07 20:40:50 -070073BUILD_LIBZIP_FILES := \
74 CRC32.c \
75 Adler32.c \
76 Deflater.c \
77 Inflater.c \
78 ZipFile.c \
79 zip_util.c
80
81ifeq ($(USE_EXTERNAL_LIBZ),true)
82 LIBZ := -lz
83else
84BUILD_LIBZIP_FILES += \
85 compress.c \
86 deflate.c \
87 gzclose.c \
88 gzlib.c \
89 gzread.c \
90 gzwrite.c \
91 infback.c \
92 inffast.c \
93 inflate.c \
94 inftrees.c \
95 trees.c \
96 uncompr.c \
97 zadler32.c \
98 zcrc32.c \
99 zutil.c
100 LIBZ_INCLUDE := -I$(JDK_TOPDIR)/src/share/native/java/util/zip/zlib-1.2.5
101endif
102
ohair92de5662012-04-10 08:22:03 -0700103$(eval $(call SetupNativeCompilation,BUILD_LIBZIP,\
erikje78df742012-06-07 20:40:50 -0700104 SRC:=$(JDK_TOPDIR)/src/share/native/java/util/zip \
105 $(JDK_TOPDIR)/src/share/native/java/util/zip/zlib-1.2.5,\
106 INCLUDE_FILES := $(BUILD_LIBZIP_FILES), \
ohair92de5662012-04-10 08:22:03 -0700107 LANG:=C,\
108 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) \
erikje78df742012-06-07 20:40:50 -0700109 $(LIBZ_INCLUDE) \
ohair92de5662012-04-10 08:22:03 -0700110 -I$(JDK_TOPDIR)/src/share/native/java/io \
111 -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/java/io,\
erikje78df742012-06-07 20:40:50 -0700112 CFLAGS_posix:=-DUSE_MMAP -UDEBUG,\
113 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libzip/mapfile-vers, \
ohair92de5662012-04-10 08:22:03 -0700114 LDFLAGS:=$(LDFLAGS_JDKLIB) \
erikje78df742012-06-07 20:40:50 -0700115 $(EXPORT_ZIP_FUNCS), \
ohair92de5662012-04-10 08:22:03 -0700116 LDFLAGS_winapi:=-export:ZIP_Open -export:ZIP_Close -export:ZIP_FindEntry \
erikje78df742012-06-07 20:40:50 -0700117 -export:ZIP_ReadEntry -export:ZIP_GetNextEntry jvm.lib \
118 java.lib,\
119 LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX) $(LIBZ),\
120 BIN:=$(JDK_OUTPUTDIR)/objs/libzip,\
121 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)zip$(SHARED_LIBRARY_SUFFIX)))
122
123$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)zip$(SHARED_LIBRARY_SUFFIX) : \
124 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)java$(SHARED_LIBRARY_SUFFIX)
ohair92de5662012-04-10 08:22:03 -0700125
126BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)zip$(SHARED_LIBRARY_SUFFIX)
127
128##########################################################################################
129
erikje78df742012-06-07 20:40:50 -0700130LIBUNPACK_LIB_FILE := $(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)unpack$(SHARED_LIBRARY_SUFFIX)
ohair92de5662012-04-10 08:22:03 -0700131
132$(eval $(call SetupNativeCompilation,BUILD_LIBUNPACK,\
133 SRC:=$(JDK_TOPDIR)/src/share/native/com/sun/java/util/jar/pack,\
134 EXCLUDE_FILES:=main.cpp,\
135 LANG:=C++,\
136 CFLAGS:=$(CXXFLAGS_JDKLIB) $(CXX_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) \
137 -DNO_ZLIB -DUNPACK_JNI -DFULL,\
138 CFLAGS_release:=-DPRODUCT,\
erikje78df742012-06-07 20:40:50 -0700139 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libunpack/mapfile-vers, \
ohair92de5662012-04-10 08:22:03 -0700140 LDFLAGS:=$(LDFLAGS_JDKLIB)\
ohair92de5662012-04-10 08:22:03 -0700141 $(call SET_SHARED_LIBRARY_ORIGIN),\
erikje78df742012-06-07 20:40:50 -0700142 LDFLAGS_winapi:=-map:$(JDK_OUTPUTDIR)/objs/unpack.map /debug \
143 jvm.lib java.lib,\
ohair92de5662012-04-10 08:22:03 -0700144 LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\
145 LDFLAGS_SUFFIX_posix:=$(LIBCXX),\
erikje78df742012-06-07 20:40:50 -0700146 BIN:=$(JDK_OUTPUTDIR)/objs/libunpack,\
ohair92de5662012-04-10 08:22:03 -0700147 LIB:=$(LIBUNPACK_LIB_FILE),\
148 VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\
149 RC_FLAGS:=$(RC_FLAGS)\
150 /D "JDK_FNAME=unpack.dll" \
151 /D "JDK_INTERNAL_NAME=unpack" \
152 /D "JDK_FTYPE=0x2L"))
153
erikje78df742012-06-07 20:40:50 -0700154$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)unpack$(SHARED_LIBRARY_SUFFIX) : \
155 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)java$(SHARED_LIBRARY_SUFFIX)
156
ohair92de5662012-04-10 08:22:03 -0700157BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)unpack$(SHARED_LIBRARY_SUFFIX)
158
159ifeq ($(HOST_OS_API),winapi)
160 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)unpack.map: $(LIBUNPACK_LIB_FILE)
erikje78df742012-06-07 20:40:50 -0700161 $(ECHO) Copying $(@F)
ohair92de5662012-04-10 08:22:03 -0700162 $(CP) $(patsubst %$(SHARED_LIBRARY_SUFFIX),%.map,$<) $@
163
164 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)unpack.pdb: $(LIBUNPACK_LIB_FILE)
erikje78df742012-06-07 20:40:50 -0700165 $(ECHO) Copying $(@F)
ohair92de5662012-04-10 08:22:03 -0700166 $(CP) $(patsubst %$(SHARED_LIBRARY_SUFFIX),%.pdb,$<) $@
167endif
168
169##########################################################################################
170
erikje78df742012-06-07 20:40:50 -0700171BUILD_LIBFDLIBM_OPTIMIZATION:= $(C_O_FLAG_HI)
ohair92de5662012-04-10 08:22:03 -0700172
erikje78df742012-06-07 20:40:50 -0700173ifneq ($(PLATFORM), solaris)
174 BUILD_LIBFDLIBM_OPTIMIZATION := $(C_O_FLAG_NONE)
175endif
ohair92de5662012-04-10 08:22:03 -0700176
erikje78df742012-06-07 20:40:50 -0700177ifneq ($(PLATFORM),macosx)
ohair92de5662012-04-10 08:22:03 -0700178$(eval $(call SetupNativeCompilation,BUILD_LIBFDLIBM,\
179 SRC:=$(JDK_TOPDIR)/src/share/native/java/lang/fdlibm/src,\
180 LANG:=C,\
erikje78df742012-06-07 20:40:50 -0700181 CFLAGS:=$(CFLAGS_JDKLIB) $(BUILD_LIBFDLIBM_OPTIMIZATION) \
ohair92de5662012-04-10 08:22:03 -0700182 -I$(JDK_TOPDIR)/src/share/native/java/lang/fdlibm/include,\
183 CFLAGS_winapi_debug:=-DLOGGING,\
184 ARFLAGS:=$(ARFLAGS),\
erikje78df742012-06-07 20:40:50 -0700185 BIN:=$(JDK_OUTPUTDIR)/objs/libfdlibm,\
186 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)fdlibm$(STATIC_LIBRARY_SUFFIX)))
187else
188#
189# On macosx they do partial (incremental) linking of fdlibm
190# code it here...rather than add support to NativeCompilation
191# as this is firt time I see it
192$(eval $(call SetupNativeCompilation,BUILD_LIBFDLIBM,\
193 SRC:=$(JDK_TOPDIR)/src/share/native/java/lang/fdlibm/src,\
194 LANG:=C,\
195 CFLAGS:=$(CFLAGS_JDKLIB) $(BUILD_LIBFDLIBM_OPTIMIZATION) \
196 -I$(JDK_TOPDIR)/src/share/native/java/lang/fdlibm/include,\
197 LDFLAGS := -nostdlib -r,\
198 BIN:=$(JDK_OUTPUTDIR)/objs/libfdlibm,\
199 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)fdlibm$(SHARED_LIBRARY_SUFFIX)))
ohair92de5662012-04-10 08:22:03 -0700200
erikje78df742012-06-07 20:40:50 -0700201$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)fdlibm$(STATIC_LIBRARY_SUFFIX) : \
202 $(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)fdlibm$(SHARED_LIBRARY_SUFFIX)
203 $(CP) -a $< $@
204endif
205
206
207BUILD_LIBRARIES += $(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)fdlibm$(STATIC_LIBRARY_SUFFIX)
ohair92de5662012-04-10 08:22:03 -0700208
209##########################################################################################
210
211LIBATTACH_EXCLUDE_FILES:=
212ifneq ($(PLATFORM),solaris)
213 LIBATTACH_EXCLUDE_FILES+=SolarisVirtualMachine.c
214endif
215ifneq ($(PLATFORM),linux)
216 LIBATTACH_EXCLUDE_FILES+=LinuxVirtualMachine.c
217endif
218ifneq ($(PLATFORM),macosx)
219 LIBATTACH_EXCLUDE_FILES+=BsdVirtualMachine.c
220endif
221
222$(eval $(call SetupNativeCompilation,BUILD_LIBATTACH,\
223 SRC:=$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/tools/attach,\
224 EXCLUDE_FILES:=$(LIBATTACH_EXCLUDE_FILES),\
225 LANG:=C,\
226 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS),\
erikje78df742012-06-07 20:40:50 -0700227 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libattach/mapfile-$(PLATFORM), \
ohair92de5662012-04-10 08:22:03 -0700228 LDFLAGS:=$(LDFLAGS_JDKLIB) \
ohair92de5662012-04-10 08:22:03 -0700229 $(call SET_SHARED_LIBRARY_ORIGIN),\
230 LDFLAGS_solaris:=-ldoor,\
erikje78df742012-06-07 20:40:50 -0700231 LDFLAGS_winapi:=psapi.lib advapi32.lib java.lib jvm.lib,\
ohair92de5662012-04-10 08:22:03 -0700232 LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\
erikje78df742012-06-07 20:40:50 -0700233 BIN:=$(JDK_OUTPUTDIR)/objs/libattach,\
234 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)attach$(SHARED_LIBRARY_SUFFIX)))
235
236$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)attach$(SHARED_LIBRARY_SUFFIX) : \
237 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)java$(SHARED_LIBRARY_SUFFIX)
ohair92de5662012-04-10 08:22:03 -0700238
239BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)attach$(SHARED_LIBRARY_SUFFIX)
240
241##########################################################################################
242
243$(eval $(call SetupNativeCompilation,BUILD_LIBDT_SOCKET,\
244 SRC:=$(JDK_TOPDIR)/src/share/transport/socket \
245 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/transport/socket,\
246 LANG:=C,\
247 CFLAGS:=$(CFLAGS_JDKLIB) -DUSE_MMAP $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) \
248 -I$(INCLUDEDIR) -I$(JDK_OUTPUTDIR)/include/$(PLATFORM) \
249 -I$(JDK_TOPDIR)/src/share/transport/socket \
250 -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/transport/socket \
251 -I$(JDK_TOPDIR)/src/share/back/export \
252 -I$(JDK_TOPDIR)/src/share/back,\
erikje78df742012-06-07 20:40:50 -0700253 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libdt_socket/mapfile-vers, \
254 LDFLAGS:=$(LDFLAGS_JDKLIB), \
ohair92de5662012-04-10 08:22:03 -0700255 LDFLAGS_SUFFIX_linux:=-lpthread,\
256 LDFLAGS_SUFFIX_solaris:=-lnsl -lsocket,\
257 LDFLAGS_SUFFIX_winapi:=-export:jdwpTransport_OnLoad ws2_32.lib,\
258 LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\
erikje78df742012-06-07 20:40:50 -0700259 BIN:=$(JDK_OUTPUTDIR)/objs/libdt_socket,\
260 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)dt_socket$(SHARED_LIBRARY_SUFFIX)))
261
262$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)dt_socket$(SHARED_LIBRARY_SUFFIX) : \
263 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)java$(SHARED_LIBRARY_SUFFIX)
ohair92de5662012-04-10 08:22:03 -0700264
265BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)dt_socket$(SHARED_LIBRARY_SUFFIX)
266
267##########################################################################################
268
269ifeq ($(HOST_OS_API),winapi)
270
271 $(eval $(call SetupNativeCompilation,BUILD_LIBDT_SHMEM,\
272 SRC:= $(JDK_TOPDIR)/src/share/native/com/sun/tools/jdi \
273 $(JDK_TOPDIR)/src/share/transport/shmem \
274 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/transport/shmem,\
275 LANG:=C,\
276 CFLAGS:=$(CFLAGS_JDKLIB) -DUSE_MMAP $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS)\
277 -I$(INCLUDEDIR) -I$(JDK_OUTPUTDIR)/include/$(PLATFORM) \
278 -I$(JDK_TOPDIR)/src/share/transport/shmem \
279 -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/transport/shmem \
280 -I$(JDK_TOPDIR)/src/share/back/export, \
281 LDFLAGS:=$(LDFLAGS_JDKLIB),\
282 LDFLAGS_winapi:=-export:jdwpTransport_OnLoad,\
283 LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\
erikje78df742012-06-07 20:40:50 -0700284 BIN:=$(JDK_OUTPUTDIR)/objs/libdt_shmem,\
285 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)dt_shmem$(SHARED_LIBRARY_SUFFIX)))
ohair92de5662012-04-10 08:22:03 -0700286
287 BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)dt_shmem$(SHARED_LIBRARY_SUFFIX)
288
289endif # PLATFORM
290
291##########################################################################################
292# JDWP_LOGGING causes log messages to be compiled into the library. These reference the
293# __FILE__ macro which here expands to the absolute path of the file while the old build
294# system used a relative path. This causes the binaries to differ in size.
295$(eval $(call SetupNativeCompilation,BUILD_LIBJDWP,\
296 SRC:=$(JDK_TOPDIR)/src/share/back $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/back,\
297 LANG:=C,\
298 CFLAGS:=$(CFLAGS_JDKLIB) -DJDWP_LOGGING $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS)\
299 -I$(JDK_TOPDIR)/src/share/transport/export \
300 -I$(JDK_TOPDIR)/src/share/back/export \
301 -I$(JDK_TOPDIR)/src/share/npt \
302 -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/npt \
303 -I$(JDK_TOPDIR)/src/share/back \
304 -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/back \
305 -I$(JDK_OUTPUTDIR)/gensrc_jdwp_headers,\
erikje78df742012-06-07 20:40:50 -0700306 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libjdwp/mapfile-vers, \
307 LDFLAGS:=$(filter-out -ljava,$(LDFLAGS_JDKLIB)), \
ohair92de5662012-04-10 08:22:03 -0700308 LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\
erikje78df742012-06-07 20:40:50 -0700309 LDFLAGS_SUFFIX_linux:=$(LIBDL),\
310 BIN:=$(JDK_OUTPUTDIR)/objs/libjdwp,\
311 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)jdwp$(SHARED_LIBRARY_SUFFIX)))
312
313$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)jdwp$(SHARED_LIBRARY_SUFFIX) : \
314 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)java$(SHARED_LIBRARY_SUFFIX)
ohair92de5662012-04-10 08:22:03 -0700315
316BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)jdwp$(SHARED_LIBRARY_SUFFIX)
317
318##########################################################################################
319
erikje78df742012-06-07 20:40:50 -0700320LIBJAAS_MAPFILE :=
ohair92de5662012-04-10 08:22:03 -0700321ifneq ($(PLATFORM),solaris)
322 LIBJAAS_EXCLUDE_FILES:=Solaris.c
erikje78df742012-06-07 20:40:50 -0700323else
324 # only on solaris...wonder why
325 LIBJAAS_MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libjaas/mapfile-vers
ohair92de5662012-04-10 08:22:03 -0700326endif
327
328$(eval $(call SetupNativeCompilation,BUILD_LIBJAAS,\
329 SRC:=$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/com/sun/security/auth/module,\
330 LANG:=C,\
331 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS),\
erikje78df742012-06-07 20:40:50 -0700332 MAPFILE := $(LIBJAAS_MAPFILE),\
ohair92de5662012-04-10 08:22:03 -0700333 LDFLAGS:=$(filter-out -ljava,$(LDFLAGS_JDKLIB)) \
334 $(call SET_SHARED_LIBRARY_ORIGIN),\
335 LDFLAGS_winapi:=netapi32.lib user32.lib mpr.lib advapi32.lib,\
ohair92de5662012-04-10 08:22:03 -0700336 LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\
337 EXCLUDE_FILES:=$(LIBJAAS_EXCLUDE_FILES),\
erikje78df742012-06-07 20:40:50 -0700338 BIN:=$(JDK_OUTPUTDIR)/objs/libjaas,\
339 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)jaas$(SHARED_LIBRARY_SUFFIX)))
ohair92de5662012-04-10 08:22:03 -0700340
erikje78df742012-06-07 20:40:50 -0700341$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)jaas$(SHARED_LIBRARY_SUFFIX) : \
342 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)java$(SHARED_LIBRARY_SUFFIX)
343
344BUILD_LIBRARIES += $(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)jaas$(SHARED_LIBRARY_SUFFIX)
ohair92de5662012-04-10 08:22:03 -0700345
346# Oddly enough, it is called jaas_nt.dll under winapi and libjaas_unix.so under posix.
347ifeq ($(PLATFORM),windows)
erikje78df742012-06-07 20:40:50 -0700348 $(INSTALL_LIBRARIES_HERE)/jaas_nt.dll : $(JDK_OUTPUTDIR)/objs/jaas.dll
349 $(ECHO) Copying $(@F)
ohair92de5662012-04-10 08:22:03 -0700350 $(CP) $< $@
351 BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/jaas_nt.dll
352else
erikje78df742012-06-07 20:40:50 -0700353 $(INSTALL_LIBRARIES_HERE)/libjaas_unix$(SHARED_LIBRARY_SUFFIX) : $(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)jaas$(SHARED_LIBRARY_SUFFIX)
354 $(ECHO) Copying $(@F)
ohair92de5662012-04-10 08:22:03 -0700355 $(CP) $< $@
356 BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/libjaas_unix$(SHARED_LIBRARY_SUFFIX)
357endif
358
359##########################################################################################
360
361ifeq ($(HOST_OS_API),posix)
362 # TODO make this work on macosx
363 ifneq ($(HOST_OS),macosx)
erikje78df742012-06-07 20:40:50 -0700364
ohair92de5662012-04-10 08:22:03 -0700365 $(eval $(call SetupNativeCompilation,BUILD_LIBSCTP,\
366 SRC:=$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/nio/ch/sctp,\
367 LANG:=C,\
368 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS)\
369 -I$(JDK_TOPDIR)/src/share/native/sun/nio/ch \
370 -I$(JDK_TOPDIR)/src/share/native/sun/nio/ch/sctp \
371 -I$(JDK_TOPDIR)/src/share/native/java/net \
372 -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/nio/ch \
373 -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/java/net,\
374 CFLAGS_linux:=-Werror,\
erikje78df742012-06-07 20:40:50 -0700375 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libsctp/mapfile-vers, \
376 LDFLAGS:=$(LDFLAGS_JDKLIB) \
ohair92de5662012-04-10 08:22:03 -0700377 $(call SET_SHARED_LIBRARY_ORIGIN),\
378 LDFLAGS_SUFFIX_linux:=-lpthread,\
erikje78df742012-06-07 20:40:50 -0700379 LDFLAGS_SUFFIX_posix:=$(LIBDL) -lnio -lnet,\
ohair92de5662012-04-10 08:22:03 -0700380 LDFLAGS_SUFFIX_solaris:=-lsocket,\
381 LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\
382 INCLUDE_FILES:=SctpNet.c SctpChannelImpl.c SctpServerChannelImpl.c,\
erikje78df742012-06-07 20:40:50 -0700383 BIN:=$(JDK_OUTPUTDIR)/objs/libsctp,\
384 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)sctp$(SHARED_LIBRARY_SUFFIX)))
ohair92de5662012-04-10 08:22:03 -0700385
386 BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)sctp$(SHARED_LIBRARY_SUFFIX)
erikje78df742012-06-07 20:40:50 -0700387
388 $(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)sctp$(SHARED_LIBRARY_SUFFIX) : $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)nio$(SHARED_LIBRARY_SUFFIX)
ohair92de5662012-04-10 08:22:03 -0700389 endif
390endif
391
392##########################################################################################
393
394$(eval $(call SetupNativeCompilation,BUILD_LIBJSDT,\
395 SRC:=$(JDK_TOPDIR)/src/share/native/sun/tracing/dtrace\
396 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/tracing/dtrace,\
397 LANG:=C,\
398 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS)\
399 -I$(JDK_TOPDIR)/src/share/native/sun/tracing/dtrace,\
erikje78df742012-06-07 20:40:50 -0700400 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libjsdt/mapfile-vers, \
ohair92de5662012-04-10 08:22:03 -0700401 LDFLAGS:=$(LDFLAGS_JDKLIB) \
ohair92de5662012-04-10 08:22:03 -0700402 $(call SET_SHARED_LIBRARY_ORIGIN),\
erikje78df742012-06-07 20:40:50 -0700403 LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX) $(LIBDL),\
404 BIN:=$(JDK_OUTPUTDIR)/objs/libjsdt,\
405 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)jsdt$(SHARED_LIBRARY_SUFFIX)))
406
407$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)jsdt$(SHARED_LIBRARY_SUFFIX) : \
408 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)java$(SHARED_LIBRARY_SUFFIX)
ohair92de5662012-04-10 08:22:03 -0700409
410BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)jsdt$(SHARED_LIBRARY_SUFFIX)
411
412##########################################################################################
413
414ifdef OPENJDK
415 # TODO: Update awt lib path when awt is converted
416 $(eval $(call SetupNativeCompilation,BUILD_LIBLCMS,\
417 SRC:=$(JDK_TOPDIR)/src/share/native/sun/java2d/cmm/lcms \
418 $(JDK_TOPDIR)/src/share/native/sun/java2d/,\
419 INCLUDE_FILES:=cmscam02.c cmscgats.c cmscnvrt.c cmserr.c \
420 cmsgamma.c cmsgmt.c cmsintrp.c cmsio0.c \
421 cmsio1.c cmslut.c cmsmd5.c cmsmtrx.c \
422 cmsnamed.c cmsopt.c cmspack.c cmspcs.c \
423 cmsplugin.c cmsps2.c cmssamp.c cmssm.c \
424 cmstypes.c cmsvirt.c cmswtpnt.c cmsxform.c \
425 LCMS.c,\
426 LANG:=C,\
427 CFLAGS:=$(filter-out -xc99=%none,$(CFLAGS_JDKLIB)) $(C_O_FLAG_NORM) \
428 $(SHARED_LIBRARY_FLAGS) \
429 -I$(JDK_TOPDIR)/src/share/native/sun/java2d \
430 -I$(JDK_TOPDIR)/src/share/native/sun/awt/debug,\
431 CFLAGS_solaris:=-xc99=no_lib,\
432 CFLAGS_winapi:=-DCMS_IS_WINDOWS_,\
erikje78df742012-06-07 20:40:50 -0700433 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/liblcms/mapfile-vers, \
434 LDFLAGS:=$(LDFLAGS_JDKLIB), \
ohair92de5662012-04-10 08:22:03 -0700435 LDFLAGS_solaris:=/usr/lib$(ISA_DIR)/libm.so.2,\
erikje78df742012-06-07 20:40:50 -0700436 LDFLAGS_winapi:=awt.lib java.lib,\
ohair92de5662012-04-10 08:22:03 -0700437 LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\
438 LDFLAGS_SUFFIX_posix:=-lawt,\
439 LDFLAGS_SUFFIX_linux:=-lm,\
erikje78df742012-06-07 20:40:50 -0700440 BIN:=$(JDK_OUTPUTDIR)/objs/liblcms,\
441 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)lcms$(SHARED_LIBRARY_SUFFIX)))
ohair92de5662012-04-10 08:22:03 -0700442
443 BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)lcms$(SHARED_LIBRARY_SUFFIX)
erikje78df742012-06-07 20:40:50 -0700444
445 $(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)lcms$(SHARED_LIBRARY_SUFFIX) : \
446 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)awt$(SHARED_LIBRARY_SUFFIX)
ohair92de5662012-04-10 08:22:03 -0700447endif
448
449##########################################################################################
450
451ifdef OPENJDK
erikje78df742012-06-07 20:40:50 -0700452 BUILD_LIBJPEG_MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libjpeg/mapfile-vers
ohair92de5662012-04-10 08:22:03 -0700453else
erikje78df742012-06-07 20:40:50 -0700454 BUILD_LIBJPEG_MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libjpeg/mapfile-vers-closed
ohair92de5662012-04-10 08:22:03 -0700455 BUILD_LIBJPEG_CLOSED_SRC := $(JDK_TOPDIR)/src/closed/share/native/sun/awt/image/jpeg
456 BUILD_LIBJPEG_CLOSED_INCLUDES := -I$(BUILD_LIBJPEG_CLOSED_SRC)
457endif
458
erikje78df742012-06-07 20:40:50 -0700459BUILD_LIBJPEG_REORDER :=
ohair92de5662012-04-10 08:22:03 -0700460ifeq ($(PLATFORM), solaris)
461 ifneq ($(ARCH), amd64)
462 BUILD_LIBJPEG_REORDER := $(JDK_TOPDIR)/makefiles/mapfiles/libjpeg/reorder-$(ARCH)
ohair92de5662012-04-10 08:22:03 -0700463 endif
464endif
465
466# Suppress gcc warnings like "variable might be clobbered by 'longjmp'
467# or 'vfork'": this warning indicates that some variable is placed to
468# a register by optimized compiler and it's value might be lost on longjmp().
469# Recommended way to avoid such warning is to declare the variable as
470# volatile to prevent the optimization. However, this approach does not
471# work because we have to declare all variables as volatile in result.
472#ifndef CROSS_COMPILE_ARCH
473# CC_43_OR_NEWER := \
474# $(shell $(EXPR) $(CC_MAJORVER) \> 4 \| \
475# \( $(CC_MAJORVER) = 4 \& $(CC_MINORVER) \>= 3 \) )
476# ifeq ($(CC_43_OR_NEWER),1)
477# BUILD_LIBJPEG_CFLAGS_linux += -Wno-clobbered
478# endif
479#endif
480
481$(eval $(call SetupNativeCompilation,BUILD_LIBJPEG,\
482 SRC:=$(BUILD_LIBJPEG_CLOSED_SRC) \
483 $(JDK_TOPDIR)/src/share/native/sun/awt/image/jpeg,\
484 LANG:=C,\
erikje78df742012-06-07 20:40:50 -0700485 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_HIGHEST) $(SHARED_LIBRARY_FLAGS) \
ohair92de5662012-04-10 08:22:03 -0700486 $(BUILD_LIBJPEG_CLOSED_INCLUDES) \
487 -I$(JDK_TOPDIR)/src/share/native/sun/awt/image/jpeg,\
erikje78df742012-06-07 20:40:50 -0700488 MAPFILE := $(BUILD_LIBJPEG_MAPFILE), \
ohair92de5662012-04-10 08:22:03 -0700489 LDFLAGS:=$(LDFLAGS_JDKLIB) \
ohair92de5662012-04-10 08:22:03 -0700490 $(call SET_SHARED_LIBRARY_ORIGIN),\
erikje78df742012-06-07 20:40:50 -0700491 LDFLAGS_linux:=$(LIBDL),\
492 LDFLAGS_winapi:=java.lib jvm.lib,\
ohair92de5662012-04-10 08:22:03 -0700493 LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\
erikje78df742012-06-07 20:40:50 -0700494 REORDER := $(BUILD_LIBJPEG_REORDER),\
495 BIN:=$(JDK_OUTPUTDIR)/objs/libjpeg,\
496 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)jpeg$(SHARED_LIBRARY_SUFFIX)))
497
498$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)jpeg$(SHARED_LIBRARY_SUFFIX) : \
499 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)java$(SHARED_LIBRARY_SUFFIX)
ohair92de5662012-04-10 08:22:03 -0700500
501BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)jpeg$(SHARED_LIBRARY_SUFFIX)
502
503##########################################################################################
504
erikje78df742012-06-07 20:40:50 -0700505BUILD_LIBMLIB_SRC := $(JDK_TOPDIR)/src/share/native/sun/awt/medialib
506BUILD_LIBMLIB_CFLAGS := -D__USE_J2D_NAMES -D__MEDIALIB_OLD_NAMES \
507 -I$(BUILD_LIBMLIB_SRC) \
508 -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/awt/medialib
509
510BUILD_LIBMLIB_LDLIBS :=
511BUILD_LIBMLIB_IMAGE_MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libmlib_image/mapfile-vers
512
513ifneq ($(PLATFORM), sparc)
514 BUILD_LIBMLIB_CFLAGS += -DMLIB_NO_LIBSUNMATH
515endif
516
517ifeq ($(ARCH_DATA_MODEL), 64)
518 BUILD_LIBMLIB_CFLAGS += -DMLIB_OS64BIT
519endif
520
521ifneq ($(PLATFORM), windows)
522 BUILD_LIBMLIB_LDLIBS += $(LIBM) $(LIBDL)
523endif
524
525$(eval $(call SetupNativeCompilation,BUILD_LIBMLIB_IMAGE,\
526 SRC:=$(BUILD_LIBMLIB_SRC),\
527 EXCLUDE_FILES:=awt_ImagingLib.c mlib_c_ImageBlendTable.c,\
528 LANG:=C,\
529 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_HIGHEST) $(SHARED_LIBRARY_FLAGS) \
530 $(BUILD_LIBMLIB_CFLAGS),\
531 MAPFILE := $(BUILD_LIBMLIB_IMAGE_MAPFILE), \
532 LDFLAGS:=$(LDFLAGS_JDKLIB) \
533 $(BUILD_LIBMLIB_LDLIBS) \
534 $(call SET_SHARED_LIBRARY_ORIGIN),\
535 LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\
536 LDFLAGS_SUFFIX_posix := -lm,\
537 BIN:=$(JDK_OUTPUTDIR)/objs/libmlib_image,\
538 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)mlib_image$(SHARED_LIBRARY_SUFFIX)))
539
540$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)mlib_image$(SHARED_LIBRARY_SUFFIX) : \
541 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)java$(SHARED_LIBRARY_SUFFIX)
542
543BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)mlib_image$(SHARED_LIBRARY_SUFFIX)
544
545##########################################################################################
546
547ifeq ($(PLATFORM),solaris)
548ifeq ($(ARCH),sparc)
549 BUILD_LIBMLIB_IMAGE_V := 1
550else ifeq ($(ARCH), sparcv9)
551 BUILD_LIBMLIB_IMAGE_V := 1
552endif
553endif
554
555ifeq ($(BUILD_LIBMLIB_IMAGE_V), 1)
556
557BUILD_LIBMLIB_IMAGE_V_FILES := \
558 mlib_v_ImageLookUp.c \
559 mlib_ImageCreate.c \
560 mlib_ImageAffine.c \
561 mlib_ImageConvMxN.c \
562 mlib_ImageConvKernelConvert.c \
563 mlib_sys.c \
564 mlib_ImageLookUp_64.c \
565 mlib_ImageLookUp_Bit.c \
566 mlib_ImageColorTrue2Index.c \
567 mlib_c_ImageThresh1_U8.c \
568 mlib_v_ImageLookUpS16S16Func.c \
569 mlib_v_ImageLookUpS16S32Func.c \
570 mlib_v_ImageLookUpS16U16Func.c \
571 mlib_v_ImageLookUpS16U8Func.c \
572 mlib_v_ImageLookUpS32S16Func.c \
573 mlib_v_ImageLookUpS32S32Func.c \
574 mlib_v_ImageLookUpS32U16Func.c \
575 mlib_v_ImageLookUpS32U8Func.c \
576 mlib_v_ImageLookUpSIS16S16Func.c \
577 mlib_v_ImageLookUpSIS16S32Func.c \
578 mlib_v_ImageLookUpSIS16U16Func.c \
579 mlib_v_ImageLookUpSIS16U8Func.c \
580 mlib_v_ImageLookUpSIS32S16Func.c \
581 mlib_v_ImageLookUpSIS32S32Func.c \
582 mlib_v_ImageLookUpSIS32U16Func.c \
583 mlib_v_ImageLookUpSIS32U8Func.c \
584 mlib_v_ImageLookUpSIU16S16Func.c \
585 mlib_v_ImageLookUpSIU16S32Func.c \
586 mlib_v_ImageLookUpSIU16U16Func.c \
587 mlib_v_ImageLookUpSIU16U8Func.c \
588 mlib_v_ImageLookUpSIU8S16Func.c \
589 mlib_v_ImageLookUpSIU8S32Func.c \
590 mlib_v_ImageLookUpSIU8U16Func.c \
591 mlib_v_ImageLookUpSIU8U8Func.c \
592 mlib_v_ImageLookUpU16S16Func.c \
593 mlib_v_ImageLookUpU16S32Func.c \
594 mlib_v_ImageLookUpU16U16Func.c \
595 mlib_v_ImageLookUpU16U8Func.c \
596 mlib_v_ImageLookUpU8S16Func.c \
597 mlib_v_ImageLookUpU8S32Func.c \
598 mlib_v_ImageLookUpU8U16Func.c \
599 mlib_v_ImageLookUpU8U8Func.c \
600 mlib_v_ImageAffineIndex_BC.c \
601 mlib_v_ImageAffine_BC.c \
602 mlib_v_ImageAffine_BC_S16.c \
603 mlib_v_ImageAffine_BC_U16.c \
604 mlib_v_ImageAffine_BL.c \
605 mlib_v_ImageAffine_BL_S16.c \
606 mlib_v_ImageAffine_BL_U16.c \
607 mlib_v_ImageAffine_NN.c \
608 mlib_v_ImageFilters.c \
609 mlib_ImageAffineEdge.c \
610 mlib_ImageAffine_BC_D64.c \
611 mlib_ImageAffine_BC_F32.c \
612 mlib_ImageAffine_BC_S32.c \
613 mlib_ImageAffine_BL_D64.c \
614 mlib_ImageAffine_BL_F32.c \
615 mlib_ImageAffine_BL_S32.c \
616 mlib_ImageAffine_NN.c \
617 mlib_ImageAffine_NN_Bit.c \
618 mlib_ImageFilters.c \
619 mlib_ImageScanPoly.c \
620 mlib_ImageConv_8nw.c \
621 mlib_ImageConv_8ext.c \
622 mlib_ImageConv_16nw.c \
623 mlib_ImageConv_16ext.c \
624 mlib_ImageConv_u16nw.c \
625 mlib_ImageConv_u16ext.c \
626 mlib_ImageConv_32nw.c \
627 mlib_ImageConv_F32nw.c \
628 mlib_ImageConvMxN_Fp.c \
629 mlib_ImageConvMxN_ext.c \
630 mlib_ImageConv_D64nw.c \
631 mlib_ImageClipping.c \
632 mlib_ImageConvCopyEdge_Bit.c \
633 mlib_ImageConvClearEdge_Bit.c \
634 mlib_ImageConv2x2_f.c \
635 mlib_ImageConvClearEdge_Fp.c \
636 mlib_v_ImageConvMxN_8.c \
637 mlib_v_ImageConvClearEdge.c \
638 mlib_v_ImageConvCopyEdge.c \
639 mlib_v_ImageConvMxN_8ext.c \
640 mlib_v_ImageConvVersion.c \
641 mlib_v_ImageConv_8nw.c \
642 mlib_ImageConvCopyEdge_Fp.c \
643 mlib_v_ImageChannelInsert_1.c \
644 mlib_v_ImageChannelExtract_43.c \
645 mlib_v_ImageChannelExtract_1.c \
646 mlib_ImageCopy_Bit.c \
647 mlib_v_ImageCopy_f.c \
648 mlib_ImageUtils.c \
649 mlib_ImageDivTables.c
650
651#
652# TODO
653#
654# ASFLAGS += -P
655# INLINE = $(PLATFORM_SRC)/native/sun/awt/medialib/vis_$(ARCH_DATA_MODEL).il
656
657$(eval $(call SetupNativeCompilation,BUILD_LIBMLIB_IMAGE_V,\
658 SRC:=$(JDK_TOPDIR)/src/share/native/sun/awt/medialib \
659 $(JDK_TOPDIR)/src/solaris/native/sun/awt/medialib,\
660 LANG:=C,\
661 INCLUDE_FILES := $(BUILD_LIBMLIB_IMAGE_V_FILES),\
662 CFLAGS:=$(BUILD_LIBMLIB_CFLAGS) \
663 $(CFLAGS_JDKLIB) $(C_O_FLAG_HI) $(SHARED_LIBRARY_FLAGS) \
664 MAPFILE := $(JDK_TOPDIR)/$(BUILD_LIBMLIB_IMAGE_MAPFILE), \
665 LDFLAGS:=$(LDFLAGS_JDKLIB) \
666 $(BUILD_LIBMLIB_LDLIBS) \
667 $(call SET_SHARED_LIBRARY_ORIGIN),\
668 BIN:=$(JDK_OUTPUTDIR)/objs/libmlib_image_v,\
669 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)mlib_image_v$(SHARED_LIBRARY_SUFFIX)))
670
671BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)mlib_image_v$(SHARED_LIBRARY_SUFFIX)
672
673endif
674
675##########################################################################################
676
ohair92de5662012-04-10 08:22:03 -0700677ifndef OPENJDK
678 FONT_HEADERS := -I$(CLOSED_SRC)/share/native/$(PKGDIR)/t2k
erikje78df742012-06-07 20:40:50 -0700679 BUILD_LIBFONTMANAGER_MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libfontmanager/mapfile-vers
ohair92de5662012-04-10 08:22:03 -0700680 LIBFONTMANAGER_EXCLUDE_FILES += freetypeScaler.c
681else
682 FONT_HEADERS := $(FREETYPE2_CFLAGS)
erikje78df742012-06-07 20:40:50 -0700683 BUILD_LIBFONTMANAGER_MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libfontmanager/mapfile-vers.openjdk
ohair92de5662012-04-10 08:22:03 -0700684 BUILD_LIBFONTMANAGER_FONTLIB := $(FREETYPE2_LIBS)
685endif
686
687ifeq ($(PLATFORM),windows)
688 LIBFONTMANAGER_EXCLUDE_FILES += X11FontScaler.c \
689 X11TextRenderer.c
690else
691 LIBFONTMANAGER_EXCLUDE_FILES += fontpath.c \
692 lcdglyph.c
693endif
694
695BUILD_LIBFONTMANAGER_CFLAGS_COMMON := $(SHARED_LIBRARY_FLAGS) \
696 -DLE_STANDALONE -DHEADLESS \
697 $(FONT_HEADERS) \
698 -I$(JDK_TOPDIR)/src/share/native/sun/font \
699 -I$(JDK_TOPDIR)/src/share/native/sun/font/layout \
700 -I$(JDK_TOPDIR)/src/share/native/sun/awt/image/cvutils \
701 -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/awt \
702 -I$(JDK_TOPDIR)/src/share/native/sun/awt/debug \
703 -I$(JDK_TOPDIR)/src/share/native/sun/java2d/loops \
704 -I$(JDK_TOPDIR)/src/share/native/sun/java2d/pipe \
705 -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/java2d \
706 -I$(JDK_TOPDIR)/src/share/native/sun/java2d
707
708$(eval $(call SetupNativeCompilation,BUILD_LIBFONTMANAGER,\
709 SRC:=$(JDK_TOPDIR)/src/share/native/sun/font\
710 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/font,\
711 EXCLUDE_FILES:=$(LIBFONTMANAGER_EXCLUDE_FILES) \
712 AccelGlyphCache.c,\
713 LANG:=C++,\
714 CFLAGS:=$(CFLAGS_JDKLIB) $(BUILD_LIBFONTMANAGER_CFLAGS_COMMON),\
715 CXXFLAGS:=$(CXXFLAGS_JDKLIB) $(BUILD_LIBFONTMANAGER_CFLAGS_COMMON),\
716 CFLAGS_posix:=$(C_O_FLAG_HI),\
717 CXXFLAGS_posix:=$(CXX_O_FLAG_HI),\
718 CFLAGS_windows=$(C_O_FLAG_NORM)\
719 -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/windows \
720 -DCC_NOEX, \
erikje78df742012-06-07 20:40:50 -0700721 MAPFILE := $(BUILD_LIBFONTMANAGER_MAPFILE), \
ohair92de5662012-04-10 08:22:03 -0700722 LDFLAGS:=$(subst -Xlinker -z -Xlinker defs,,$(LDFLAGS_JDKLIB)) \
ohair92de5662012-04-10 08:22:03 -0700723 $(call SET_SHARED_LIBRARY_ORIGIN),\
erikje78df742012-06-07 20:40:50 -0700724 LDFLAGS_windows:=advapi32.lib user32.lib gdi32.lib awt.lib java.lib,\
ohair92de5662012-04-10 08:22:03 -0700725 LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX) \
726 $(BUILD_LIBFONTMANAGER_FONTLIB),\
727 LDFLAGS_SUFFIX_linux:=-lawt $(LIBM) $(LIBCXX),\
728 LDFLAGS_SUFFIX_solaris:=-lawt -lawt_xawt -lc $(LIBM) $(LIBCXX),\
729 LDFLAGS_SUFFIX_macosx:=-lawt $(LIBM) $(LIBCXX) -undefined dynamic_lookup,\
erikje78df742012-06-07 20:40:50 -0700730 BIN:=$(JDK_OUTPUTDIR)/objs/libfontmanager,\
731 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)fontmanager$(SHARED_LIBRARY_SUFFIX)))
732
733$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)fontmanager$(SHARED_LIBRARY_SUFFIX) : \
734 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)awt$(SHARED_LIBRARY_SUFFIX)
735
736ifneq (,$(findstring $(PLATFORM),solaris macosx))
737$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)fontmanager$(SHARED_LIBRARY_SUFFIX) : \
738 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)awt_xawt$(SHARED_LIBRARY_SUFFIX)
739endif
ohair92de5662012-04-10 08:22:03 -0700740
741BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)fontmanager$(SHARED_LIBRARY_SUFFIX)
742
743##########################################################################################
744
745ifndef OPENJDK
746
747# ifeq ($(PLATFORM), linux)
748# ifeq ("$(CC_VER_MAJOR)", "3")
749# OTHER_LDLIBS += -Wl,-Bstatic -lgcc_eh -Wl,-Bdynamic
750# endif
751# endif
752#
753# The resulting size of the t2k lib file is (at least on linux) dependant on the order of
754# the input .o files. Because of this the new build will differ in size to the old build.
755 BUILD_LIBT2K_CFLAGS_COMMON:=-I$(JDK_TOPDIR)/src/share/native/sun/font \
756 -I$(JDK_TOPDIR)/src/closed/share/native/sun/font/t2k \
757 -I$(JDK_TOPDIR)/src/closed/share/native/sun/font \
758 -I$(JDK_TOPDIR)/src/share/share/native/sun/font \
759 -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/font \
760 -I$(JDK_TOPDIR)/src/share/native/sun/java2d/loops \
761 -I$(JDK_TOPDIR)/src/share/native/sun/java2d/pipe \
762 -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/java2d \
763 -I$(JDK_TOPDIR)/src/share/native/sun/java2d
764
765 $(eval $(call SetupNativeCompilation,BUILD_LIBT2K,\
766 SRC:=$(JDK_TOPDIR)/src/closed/share/native/sun/font \
767 $(JDK_TOPDIR)/src/closed/share/native/sun/font/t2k \
768 $(JDK_TOPDIR)/src/closed/share/native/sun/font/t2k/ttHints,\
769 EXCLUDE_FILES:=orion.c,\
770 LANG:=C++,\
771 CFLAGS:=$(CFLAGS_JDKLIB) $(BUILD_LIBT2K_CFLAGS_COMMON) $(C_O_FLAG_HI),\
772 CXXFLAGS:=$(CXXFLAGS_JDKLIB) $(BUILD_LIBT2K_CFLAGS_COMMON) $(CXX_O_FLAG_HI),\
773 CFLAGS_windows=-DCC_NOEX, \
774 CXXFLAGS_windows=-DCC_NOEX, \
erikje78df742012-06-07 20:40:50 -0700775 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libt2k/mapfile-vers, \
ohair92de5662012-04-10 08:22:03 -0700776 LDFLAGS:=$(LDFLAGS_JDKLIB) \
ohair92de5662012-04-10 08:22:03 -0700777 $(call SET_SHARED_LIBRARY_ORIGIN),\
erikje78df742012-06-07 20:40:50 -0700778 LDFLAGS_windows:=user32.lib $(JDK_OUTPUTDIR)/objs/fontmanager.lib,\
ohair92de5662012-04-10 08:22:03 -0700779 LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\
erikje78df742012-06-07 20:40:50 -0700780 LDFLAGS_SUFFIX_macosx:=$(LIBCXX) $(LIBM) -lfontmanager,\
781 LDFLAGS_SUFFIX_linux:=$(LIBCXX) $(LIBM) -lfontmanager,\
782 LDFLAGS_SUFFIX_solaris:=$(LIBCXX) $(LIBM) -lfontmanager -lawt \
ohair92de5662012-04-10 08:22:03 -0700783 -lawt_xawt,\
erikje78df742012-06-07 20:40:50 -0700784 BIN:=$(JDK_OUTPUTDIR)/objs/libt2k,\
785 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)t2k$(SHARED_LIBRARY_SUFFIX)))
ohair92de5662012-04-10 08:22:03 -0700786
787 # t2k is linked against fontmanager
erikje78df742012-06-07 20:40:50 -0700788 $(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)t2k$(SHARED_LIBRARY_SUFFIX): \
789 $(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)fontmanager$(SHARED_LIBRARY_SUFFIX)
ohair92de5662012-04-10 08:22:03 -0700790
791 BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)t2k$(SHARED_LIBRARY_SUFFIX)
792endif
793
794##########################################################################################
795
erikje78df742012-06-07 20:40:50 -0700796#
797# TODO replace with X_FLAGS / X_LIBS
798# and add them to configure
799#
800OPENWIN_LIB := $(OPENWIN_HOME)/lib
801
802BUILD_LIBJAWT_LIB := $(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)jawt$(SHARED_LIBRARY_SUFFIX)
803
ohair92de5662012-04-10 08:22:03 -0700804ifeq ($(PLATFORM), windows)
805 ifeq ($(ARCH_DATA_MODEL), 32)
806 KERNEL32_LIB := kernel32.lib
807 endif
808 $(eval $(call SetupNativeCompilation,BUILD_LIBJAWT,\
809 SRC:=$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/windows,\
810 INCLUDE_FILES:=jawt.cpp,\
811 LANG:=C++,\
812 CFLAGS:=$(CXXFLAGS_JDKLIB) $(CXX_O_FLAG_NORM) \
813 -EHsc -DUNICODE -D_UNICODE \
814 -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/windows \
815 -I$(JDK_TOPDIR)/src/share/native/sun/awt/debug \
816 -I$(JDK_TOPDIR)/src/share/native/sun/java2d \
817 -I$(JDK_TOPDIR)/src/share/native/sun/awt/image/cvutils \
818 -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/java2d/windows, \
819 LDFLAGS:=$(LDFLAGS_JDKLIB) $(KERNEL32_LIB) \
erikje78df742012-06-07 20:40:50 -0700820 advapi32.lib awt.lib,\
ohair92de5662012-04-10 08:22:03 -0700821 LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\
erikje78df742012-06-07 20:40:50 -0700822 BIN:=$(JDK_OUTPUTDIR)/objs/libjawt,\
823 LIB:=$(BUILD_LIBJAWT_LIB)))
ohair92de5662012-04-10 08:22:03 -0700824
erikje78df742012-06-07 20:40:50 -0700825$(BUILD_LIBJAWT_LIB) : $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)awt$(SHARED_LIBRARY_SUFFIX)
826
827$(JDK_OUTPUTDIR)/lib/$(LIBRARY_PREFIX)jawt$(STATIC_LIBRARY_SUFFIX): $(BUILD_LIBJAWT_LIB)
828 $(ECHO) Copying $(@F)
829 $(CP) $< $@
ohair92de5662012-04-10 08:22:03 -0700830
831BUILD_LIBRARIES += $(JDK_OUTPUTDIR)/lib/$(LIBRARY_PREFIX)jawt$(STATIC_LIBRARY_SUFFIX)
832
833else # PLATFORM not windows
834
erikje78df742012-06-07 20:40:50 -0700835 JAWT_LIBS := -lawt
ohair92de5662012-04-10 08:22:03 -0700836 ifndef BUILD_HEADLESS_ONLY
erikje78df742012-06-07 20:40:50 -0700837 JAWT_LIBS += -lawt_xawt
ohair92de5662012-04-10 08:22:03 -0700838 else
erikje78df742012-06-07 20:40:50 -0700839 JAWT_LIBS += -lawt_headless
ohair92de5662012-04-10 08:22:03 -0700840 HEADLESS_CFLAG += -DHEADLESS
841 endif
842
erikje78df742012-06-07 20:40:50 -0700843 JAWT_FILES := jawt.c
844 ifeq ($(PLATFORM), macosx)
845 JAWT_FILES := jawt.m
846 JAWT_LIBS := -lawt_lwawt
847 endif
848
ohair92de5662012-04-10 08:22:03 -0700849 $(eval $(call SetupNativeCompilation,BUILD_LIBJAWT,\
erikje78df742012-06-07 20:40:50 -0700850 SRC:=$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/awt \
851 $(JDK_TOPDIR)/src/macosx/native/sun/awt,\
852 INCLUDE_FILES:=$(JAWT_FILES),\
ohair92de5662012-04-10 08:22:03 -0700853 LANG:=C,\
854 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM), \
855 CFLAGS_linux:=$(HEADLESS_CFLAG),\
erikje78df742012-06-07 20:40:50 -0700856 CFLAGS_macosx := -I$(JDK_TOPDIR)/src/solaris/native/sun/awt ,\
857 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libjawt/mapfile-vers, \
ohair92de5662012-04-10 08:22:03 -0700858 LDFLAGS:=$(LDFLAGS_JDKLIB) \
ohair92de5662012-04-10 08:22:03 -0700859 $(call SET_SHARED_LIBRARY_ORIGIN),\
erikje78df742012-06-07 20:40:50 -0700860 LDFLAGS_solaris:=-L$(OPENWIN_HOME)/sfw/lib$(ISA_DIR) -L$(OPENWIN_LIB)$(ISA_DIR),\
861 LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX) $(JAWT_LIBS),\
ohair92de5662012-04-10 08:22:03 -0700862 LDFLAGS_SUFFIX_solaris:=-lXrender,\
erikje78df742012-06-07 20:40:50 -0700863 LDFLAGS_SUFFIX_macosx:= -framework Cocoa, \
864 BIN:=$(JDK_OUTPUTDIR)/objs/libjawt,\
865 LIB:=$(BUILD_LIBJAWT_LIB)))
866
867ifndef BUILD_HEADLESS_ONLY
868$(BUILD_LIBJAWT_LIB) : $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)awt_xawt$(SHARED_LIBRARY_SUFFIX)
869else
870$(BUILD_LIBJAWT_LIB) : $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)awt_headless$(SHARED_LIBRARY_SUFFIX)
871endif
872
ohair92de5662012-04-10 08:22:03 -0700873endif # PLATFORM
874
875BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)jawt$(SHARED_LIBRARY_SUFFIX)
876
877
878##########################################################################################
879
erikje78df742012-06-07 20:40:50 -0700880BUILD_LIBVERIFY_SRC := check_code.c check_format.c
881
882ifeq ($(PLATFORM), solaris)
883 ifneq ($(ARCH), amd64)
884 BUILD_LIBVERIFY_REORDER := $(JDK_TOPDIR)/makefiles/mapfiles/libverify/reorder-$(ARCH)
885 endif
886endif
887
888
889$(eval $(call SetupNativeCompilation,BUILD_LIBVERIFY,\
890 SRC:=$(JDK_TOPDIR)/src/share/native/common,\
891 INCLUDE_FILES:=$(BUILD_LIBVERIFY_SRC),\
892 LANG:=C,\
893 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_HI) $(SHARED_LIBRARY_FLAGS),\
894 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libverify/mapfile-vers, \
895 LDFLAGS:=$(LDFLAGS_JDKLIB) \
896 $(call SET_SHARED_LIBRARY_ORIGIN), \
897 LDFLAGS_SUFFIX_posix:=-ljvm -lc,\
898 LDFLAGS_SUFFIX_windows:=jvm.lib,\
899 REORDER := $(BUILD_LIBVERIFY_REORDER),\
900 BIN:=$(JDK_OUTPUTDIR)/objs/libverify,\
901 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)verify$(SHARED_LIBRARY_SUFFIX)))
902
903BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)verify$(SHARED_LIBRARY_SUFFIX)
904
905##########################################################################################
906
907ifndef OPENJDK
908ifneq ($(PLATFORM), macosx)
909
910BUILD_LIBJDBCODBC_DIR := $(JDK_OUTPUTDIR)/objs/libjdbcodbc
911BUILD_LIBJDBCODBC_NAME := $(LIBRARY_PREFIX)JdbcOdbc$(SHARED_LIBRARY_SUFFIX)
912BUILD_LIBJDBCODBC_CFLAGS :=
913BUILD_LIBJDBCODBC_TARGET := $(JDK_OUTPUTDIR)/objs/$(BUILD_LIBJDBCODBC_NAME)
914BUILD_LIBJDBCODBC_LIBS :=
915BUILD_LIBJDBCODBC_LDFLAGS :=
916
917ifeq ($(PLATFORM), windows)
918 BUILD_LIBJDBCODBC_LDFLAGS := $(LDFLAGS_JDKLIB)
919 BUILD_LIBJDBCODBC_LIBS += odbc32.lib odbccp32.lib java.lib advapi32.lib
920else
921 BUILD_LIBJDBCODBC_CFLAGS := -DUNIX
922
923#
924# This mimics "current" build system exactly. Link against fake -lodbcinst -lodbc
925# but...those are linked with the -soname, causing the dependency to be dropped on linux (gnu ld)
926# but kept with other linker (solaris)
927#
928# IMO very weird behaviour...very weird
929#
930 BUILD_LIBJDBCODBC_LDFLAGS += $(patsubst defs,nodefs,$(LDFLAGS_JDKLIB)) \
931 -Xlinker -z -Xlinker nodefs
932 BUILD_LIBJDBCODBC_LIBS += -L$(BUILD_LIBJDBCODBC_DIR) -lodbcinst -lodbc
933 BUILD_LIBJDBCODBC_FAKE_LIBS := $(BUILD_LIBJDBCODBC_DIR)/$(LIBRARY_PREFIX)odbcinst$(SHARED_LIBRARY_SUFFIX) \
934 $(BUILD_LIBJDBCODBC_DIR)/$(LIBRARY_PREFIX)odbc$(SHARED_LIBRARY_SUFFIX)
935
936 BUILD_LIBJDBCODBC_SONAME := $(call SET_SHARED_LIBRARY_NAME,$(BUILD_LIBJDBCODBC_NAME))
937endif
938
939ifneq ($(PLATFORM), windows)
940
941$(eval $(call SetupNativeCompilation,BUILD_FAKEODBCINST,\
942 SRC:=$(JDK_OUTPUTDIR)/gensrc_c/libjdbcodbc,\
943 INCLUDE_FILES := dummyodbc1.c,\
944 LANG:=C,\
945 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS),\
946 LDFLAGS:=$(LDFLAGS_JDKLIB) $(call SET_SHARED_LIBRARY_ORIGIN) $(BUILD_LIBJDBCODBC_LDFLAGS),\
947 LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX) $(BUILD_LIBJDBCODBC_SONAME),\
948 BIN:=$(BUILD_LIBJDBCODBC_DIR),\
949 LIB:=$(BUILD_LIBJDBCODBC_DIR)/$(LIBRARY_PREFIX)odbcinst$(SHARED_LIBRARY_SUFFIX)))
950
951$(eval $(call SetupNativeCompilation,BUILD_FAKEODBC,\
952 SRC:=$(JDK_OUTPUTDIR)/gensrc_c/libjdbcodbc,\
953 INCLUDE_FILES := dummyodbc2.c,\
954 LANG:=C,\
955 CFLAGS:=$(BUILD_LIBJDBCODBC_CFLAGS) $(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS),\
956 LDFLAGS:=$(LDFLAGS_JDKLIB) $(call SET_SHARED_LIBRARY_ORIGIN) $(BUILD_LIBJDBCODBC_LDFLAGS),\
957 LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX) $(BUILD_LIBJDBCODBC_SONAME),\
958 BIN:=$(BUILD_LIBJDBCODBC_DIR),\
959 LIB:=$(BUILD_LIBJDBCODBC_DIR)/$(LIBRARY_PREFIX)odbc$(SHARED_LIBRARY_SUFFIX)))
960
961$(BUILD_LIBJDBCODBC_FAKE_LIBS) : \
962 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)java$(SHARED_LIBRARY_SUFFIX)
963
964$(BUILD_LIBJDBCODBC_TARGET) : $(BUILD_LIBJDBCODBC_FAKE_LIBS)
965
966endif
967
968$(eval $(call SetupNativeCompilation,BUILD_LIBJDBCODBC,\
969 SRC:=$(JDK_TOPDIR)/src/closed/share/classes/sun/jdbc/odbc,\
970 EXCLUDE_FILES := dummyodbc.c,\
971 LANG:=C,\
972 CFLAGS:=$(BUILD_LIBJDBCODBC_CFLAGS) $(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) \
973 $(SHARED_LIBRARY_FLAGS),\
974 LDFLAGS:=$(BUILD_LIBJDBCODBC_LDFLAGS) \
975 $(call SET_SHARED_LIBRARY_ORIGIN) $(BUILD_LIBJDBCODBC_LIBS),\
976 LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX) $(BUILD_LIBJDBCODBC_SONAME),\
977 BIN:=$(BUILD_LIBJDBCODBC_DIR),\
978 LIB:=$(BUILD_LIBJDBCODBC_TARGET)))
979
980$(BUILD_LIBJDBCODBC_TARGET) : \
981 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)java$(SHARED_LIBRARY_SUFFIX)
982
983BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)JdbcOdbc$(SHARED_LIBRARY_SUFFIX)
984
985endif
986endif
987
988##########################################################################################
989
990BUILD_LIBINSTRUMENT_SRC := $(JDK_TOPDIR)/src/share/instrument \
991 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/java/io \
992 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/instrument
993
994BUILD_LIBINSTRUMENT_FILES := \
995 EncodingSupport.c \
996 EncodingSupport_md.c \
997 FileSystemSupport_md.c \
998 InstrumentationImplNativeMethods.c \
999 InvocationAdapter.c \
1000 JarFacade.c \
1001 JPLISAgent.c \
1002 JPLISAssert.c \
1003 JavaExceptions.c \
1004 PathCharsValidator.c \
1005 Reentrancy.c \
1006 Utilities.c \
1007 canonicalize_md.c
1008
1009BUILD_LIBINSTRUMENT_DIR := $(JDK_OUTPUTDIR)/objs/libinstrument
1010BUILD_LIBINSTRUMENT_NAME := $(LIBRARY_PREFIX)instrument$(SHARED_LIBRARY_SUFFIX)
1011BUILD_LIBINSTRUMENT_CFLAGS := -I$(JDK_TOPDIR)/src/share/instrument \
1012 -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/instrument \
1013 -I$(JDK_TOPDIR)/src/share/bin
1014
1015BUILD_LIBINSTRUMENT_TARGET := $(JDK_OUTPUTDIR)/objs/$(BUILD_LIBINSTRUMENT_NAME)
1016BUILD_LIBINSTRUMENT_LDFLAGS :=
1017BUILD_LIBINSTRUMENT_LDFLAGS_SUFFIX :=
1018
1019ifeq ($(PLATFORM), windows)
1020 BUILD_LIBINSTRUMENT_LDFLAGS += jli_static.lib java.lib \
1021 -export:Agent_OnAttach
1022 # equivalent of strcasecmp is stricmp on Windows
1023 BUILD_LIBINSTRUMENT_CFLAGS += -Dstrcasecmp=stricmp
1024else
1025
1026ifneq (,$(findstring $(PLATFORM), macosx))
1027 ifneq ($(ARCH), universal)
1028 BUILD_LIBINSTRUMENT_LDFLAGS += -Wl,-all_load
1029 endif
1030
1031 BUILD_LIBINSTRUMENT_LDFLAGS += $(JDK_OUTPUTDIR)/objs/libjli_static.a
1032 BUILD_LIBINSTRUMENT_LDFLAGS += -liconv
1033 BUILD_LIBINSTRUMENT_LDFLAGS += -framework Cocoa -framework Security -framework ApplicationServices
1034 BUILD_LIBINSTRUMENT_LDFLAGS += $(LIBZ)
1035else
1036 BUILD_LIBINSTRUMENT_LDFLAGS_SUFFIX += -ljli $(LIBDL)
1037endif
1038endif
1039
1040$(eval $(call SetupNativeCompilation,BUILD_LIBINSTRUMENT,\
1041 SRC:=$(BUILD_LIBINSTRUMENT_SRC),\
1042 INCLUDE_FILES:=$(BUILD_LIBINSTRUMENT_FILES),\
1043 LANG:=C,\
1044 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) \
1045 $(BUILD_LIBINSTRUMENT_CFLAGS),\
1046 CFLAGS_debug := -DJPLIS_LOGGING,\
1047 CFLAGS_release := -DNO_JPLIS_LOGGING,\
1048 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libinstrument/mapfile-vers, \
1049 LDFLAGS:=$(LDFLAGS_JDKLIB) $(call SET_SHARED_LIBRARY_ORIGIN)\
1050 $(call SET_SHARED_LIBRARY_ORIGIN,jli) \
1051 $(BUILD_LIBINSTRUMENT_LDFLAGS),\
1052 LDFLAGS_SUFFIX:=$(LIBZ) $(BUILD_LIBINSTRUMENT_LDFLAGS_SUFFIX),\
1053 BIN:=$(BUILD_LIBINSTRUMENT_DIR),\
1054 LIB:=$(BUILD_LIBINSTRUMENT_TARGET)))
1055
1056$(BUILD_LIBINSTRUMENT_TARGET) : $(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)jli_static$(STATIC_LIBRARY_SUFFIX)
1057$(BUILD_LIBINSTRUMENT_TARGET) : $(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)jli$(SHARED_LIBRARY_SUFFIX)
1058$(BUILD_LIBINSTRUMENT_TARGET) : $(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)java$(SHARED_LIBRARY_SUFFIX)
1059
1060BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(BUILD_LIBINSTRUMENT_NAME)
1061
1062##########################################################################################
1063
1064BUILD_LIBMANAGEMENT_SRC := $(JDK_TOPDIR)/src/share/native/sun/management \
1065 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/management \
1066 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/com/sun/management
1067
1068BUILD_LIBMANAGEMENT_EXCLUDES :=
1069
1070BUILD_LIBMANAGEMENT_CFLAGS := -I$(JDK_TOPDIR)/src/share/native/sun/management
1071
1072ifneq ($(PLATFORM), windows)
1073 BUILD_LIBMANAGEMENT_EXCLUDES += OperatingSystem_md.c
1074else
1075 BUILD_LIBMANAGEMENT_EXCLUDES += UnixOperatingSystem_md.c
1076endif
1077
1078ifneq ($(PLATFORM),solaris)
1079 BUILD_LIBMANAGEMENT_EXCLUDES += SolarisOperatingSystem.c
1080endif
1081
1082ifneq ($(PLATFORM),linux)
1083 BUILD_LIBMANAGEMENT_EXCLUDES += LinuxOperatingSystem.c
1084endif
1085
1086ifneq ($(PLATFORM),macosx)
1087 BUILD_LIBMANAGEMENT_EXCLUDES += MacosxOperatingSystem.c
1088endif
1089
1090
1091$(eval $(call SetupNativeCompilation,BUILD_LIBMANAGEMENT,\
1092 SRC:=$(BUILD_LIBMANAGEMENT_SRC),\
1093 EXCLUDE_FILES:=$(BUILD_LIBMANAGEMENT_EXCLUDES),\
1094 LANG:=C,\
1095 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_HI) $(SHARED_LIBRARY_FLAGS) $(BUILD_LIBMANAGEMENT_CFLAGS),\
1096 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libmanagement/mapfile-vers, \
1097 LDFLAGS:=$(LDFLAGS_JDKLIB) \
1098 $(call SET_SHARED_LIBRARY_ORIGIN),\
1099 LDFLAGS_windows := java.lib jvm.lib advapi32.lib psapi.lib,\
1100 LDFLAGS_solaris := -lkstat,\
1101 LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\
1102 BIN:=$(JDK_OUTPUTDIR)/objs/libmanagement,\
1103 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)management$(SHARED_LIBRARY_SUFFIX)))
1104
1105$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)management$(SHARED_LIBRARY_SUFFIX) : \
1106 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)java$(SHARED_LIBRARY_SUFFIX)
1107
1108BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)management$(SHARED_LIBRARY_SUFFIX)
1109
1110##########################################################################################
1111
1112BUILD_LIBHPROF_SRC := $(JDK_TOPDIR)/src/share/demo/jvmti/hprof $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/demo/jvmti/hprof
1113BUILD_LIBHPROF_CFLAGS := -I$(JDK_TOPDIR)/src/share/demo/jvmti/hprof \
1114 -I$(JDK_TOPDIR)/src/share/npt \
1115 -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/npt \
1116 -I$(JDK_TOPDIR)/src/share/demo/jvmti/java_crw_demo
1117
1118BUILD_LIBHPROF_LDFLAGS :=
1119
1120ifeq ($(PLATFORM),solaris)
1121 BUILD_LIBHPROF_LDFLAGS += -lsocket -lnsl
1122endif
1123
1124ifneq ($(PLATFORM),windows)
1125 BUILD_LIBHPROF_LDFLAGS += $(LIBDL)
1126endif
1127
1128$(eval $(call SetupNativeCompilation,BUILD_LIBHPROF,\
1129 SRC:=$(BUILD_LIBHPROF_SRC),\
1130 LANG:=C,\
1131 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_HIGHEST) $(SHARED_LIBRARY_FLAGS) \
1132 $(BUILD_LIBHPROF_CFLAGS),\
1133 CFLAGS_debug := -DHPROF_LOGGING,\
1134 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libhprof/mapfile-vers, \
1135 LDFLAGS:=$(LDFLAGS_JDKLIB) \
1136 $(call SET_SHARED_LIBRARY_ORIGIN),\
1137 LDFLAGS_windows:=wsock32.lib winmm.lib advapi32.lib,\
1138 LDFLAGS_SUFFIX:=$(BUILD_LIBHPROF_LDFLAGS),\
1139 BIN:=$(JDK_OUTPUTDIR)/objs/libhprof,\
1140 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)hprof$(SHARED_LIBRARY_SUFFIX)))
1141
1142BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)hprof$(SHARED_LIBRARY_SUFFIX)
1143
1144##########################################################################################
1145
1146$(eval $(call SetupNativeCompilation,BUILD_LIBJAVA_CRW_DEMO,\
1147 SRC:=$(JDK_TOPDIR)/src/share/demo/jvmti/java_crw_demo,\
1148 LANG:=C,\
1149 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) \
1150 -I$(JDK_TOPDIR)/src/share/demo/jvmti/java_crw_demo,\
1151 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libjava_crw_demo/mapfile-vers, \
1152 LDFLAGS:=$(LDFLAGS_JDKLIB) \
1153 $(call SET_SHARED_LIBRARY_ORIGIN),\
1154 LDFLAGS_SUFFIX:=,\
1155 BIN:=$(JDK_OUTPUTDIR)/objs/libjava_crw_demo,\
1156 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)java_crw_demo$(SHARED_LIBRARY_SUFFIX)))
1157
1158BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)java_crw_demo$(SHARED_LIBRARY_SUFFIX)
1159
1160##########################################################################################
1161
1162$(eval $(call SetupNativeCompilation,BUILD_LIBNPT,\
1163 SRC:=$(JDK_TOPDIR)/src/share/npt $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/npt,\
1164 LANG:=C,\
1165 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) \
1166 -I$(JDK_TOPDIR)/src/share/npt \
1167 -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/npt,\
1168 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libnpt/mapfile-vers, \
1169 LDFLAGS:=$(LDFLAGS_JDKLIB) \
1170 $(call SET_SHARED_LIBRARY_ORIGIN),\
1171 LDFLAGS_macosx := -liconv,\
1172 LDFLAGS_SUFFIX_windows := -export:nptInitialize -export:nptTerminate,\
1173 BIN:=$(JDK_OUTPUTDIR)/objs/libnpt,\
1174 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)npt$(SHARED_LIBRARY_SUFFIX)))
1175
1176BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)npt$(SHARED_LIBRARY_SUFFIX)
1177
1178##########################################################################################
1179
1180BUILD_LIBNIO_SRC := \
1181 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/java/nio \
1182 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/nio/ch \
1183 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/nio/fs
1184
1185BUILD_LIBNIO_CFLAGS := \
1186 -I$(JDK_TOPDIR)/src/share/native/sun/nio/ch \
1187 -I$(JDK_TOPDIR)/src/share/native/java/io \
1188 -I$(JDK_TOPDIR)/src/share/native/java/net \
1189 -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/java/net
1190
1191BUILD_LIBNIO_FILES := \
1192 DatagramChannelImpl.c \
1193 DatagramDispatcher.c \
1194 FileChannelImpl.c \
1195 FileDispatcherImpl.c \
1196 FileKey.c \
1197 IOUtil.c \
1198 MappedByteBuffer.c \
1199 Net.c \
1200 ServerSocketChannelImpl.c \
1201 SocketChannelImpl.c \
1202 SocketDispatcher.c
1203
1204ifeq ($(PLATFORM), windows)
1205 BUILD_LIBNIO_FILES += \
1206 Iocp.c \
1207 RegistryFileTypeDetector.c \
1208 WindowsAsynchronousFileChannelImpl.c \
1209 WindowsAsynchronousServerSocketChannelImpl.c \
1210 WindowsAsynchronousSocketChannelImpl.c \
1211 WindowsNativeDispatcher.c \
1212 WindowsSelectorImpl.c
1213endif
1214
1215ifeq ($(PLATFORM), linux)
1216 BUILD_LIBNIO_LDFLAGS_SUFFIX := -lpthread $(LIBDL)
1217 BUILD_LIBNIO_MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libnio/mapfile-linux
1218 BUILD_LIBNIO_FILES += \
1219 EPoll.c \
1220 EPollArrayWrapper.c \
1221 EPollPort.c \
1222 InheritedChannel.c \
1223 NativeThread.c \
1224 PollArrayWrapper.c \
1225 UnixAsynchronousServerSocketChannelImpl.c \
1226 UnixAsynchronousSocketChannelImpl.c \
1227 GnomeFileTypeDetector.c \
1228 LinuxNativeDispatcher.c \
1229 LinuxWatchService.c \
1230 UnixCopyFile.c \
1231 UnixNativeDispatcher.c
1232endif
1233
1234ifeq ($(PLATFORM), macosx)
1235 BUILD_LIBNIO_MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libnio/mapfile-bsd
1236 BUILD_LIBNIO_SRC += $(JDK_TOPDIR)/src/macosx/native/sun/nio/ch
1237 BUILD_LIBNIO_FILES += \
1238 InheritedChannel.c \
1239 NativeThread.c \
1240 PollArrayWrapper.c \
1241 UnixAsynchronousServerSocketChannelImpl.c \
1242 UnixAsynchronousSocketChannelImpl.c \
1243 GnomeFileTypeDetector.c \
1244 BsdNativeDispatcher.c \
1245 UnixCopyFile.c \
1246 UnixNativeDispatcher.c \
1247 KQueue.c \
1248 KQueuePort.c \
1249 KQueueArrayWrapper.c
1250endif
1251
1252ifeq ($(PLATFORM), solaris)
1253 BUILD_LIBNIO_LDFLAGS_SUFFIX := $(LIBDL)
1254 BUILD_LIBNIO_MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libnio/mapfile-solaris
1255 BUILD_LIBNIO_FILES += \
1256 DevPollArrayWrapper.c \
1257 InheritedChannel.c \
1258 NativeThread.c \
1259 PollArrayWrapper.c \
1260 SolarisEventPort.c \
1261 UnixAsynchronousServerSocketChannelImpl.c \
1262 UnixAsynchronousSocketChannelImpl.c \
1263 GnomeFileTypeDetector.c \
1264 SolarisNativeDispatcher.c \
1265 SolarisWatchService.c \
1266 UnixCopyFile.c \
1267 UnixNativeDispatcher.c
1268endif
1269
1270BUILD_LIBNIO_LDFLAGS :=
1271ifeq ($(PLATFORM),windows)
1272 BUILD_LIBNIO_LDFLAGS += \
1273 java.lib net.lib advapi32.lib jvm.lib ws2_32.lib\
1274 $(JDK_OUTPUTDIR)/objs/libjava/io_util.obj \
1275 $(JDK_OUTPUTDIR)/objs/libjava/FileDescriptor_md.obj
1276endif
1277
1278ifeq ($(PLATFORM), linux)
1279 BUILD_LIBNIO_LDFLAGS_SUFFIX += -ljava -lnet -lpthread $(LIBDL)
1280endif
1281ifeq ($(PLATFORM), macosx)
1282 BUILD_LIBNIO_LDFLAGS_SUFFIX += -ljava -lnet -pthread
1283endif
1284
1285ifeq ($(PLATFORM), solaris)
1286 BUILD_LIBNIO_LDFLAGS_SUFFIX += $(JVMLIB) $(LIBSOCKET) -lposix4 $(LIBDL) -lsendfile \
1287 -ljava -lnet
1288endif # PLATFORM
1289
1290
1291$(eval $(call SetupNativeCompilation,BUILD_LIBNIO,\
1292 SRC:=$(BUILD_LIBNIO_SRC),\
1293 INCLUDE_FILES := $(BUILD_LIBNIO_FILES), \
1294 LANG:=C,\
1295 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_HI) $(SHARED_LIBRARY_FLAGS) \
1296 $(BUILD_LIBNIO_CFLAGS),\
1297 MAPFILE := $(BUILD_LIBNIO_MAPFILE), \
1298 LDFLAGS:=$(LDFLAGS_JDKLIB) $(BUILD_LIBNIO_LDFLAGS) \
1299 $(call SET_SHARED_LIBRARY_ORIGIN),\
1300 LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX) $(BUILD_LIBNIO_LDFLAGS_SUFFIX),\
1301 BIN:=$(JDK_OUTPUTDIR)/objs/libnio,\
1302 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)nio$(SHARED_LIBRARY_SUFFIX)))
1303
1304BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)nio$(SHARED_LIBRARY_SUFFIX)
1305
1306$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)nio$(SHARED_LIBRARY_SUFFIX) : $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)net$(SHARED_LIBRARY_SUFFIX) $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)java$(SHARED_LIBRARY_SUFFIX)
1307
1308
1309##########################################################################################
1310
1311LIBNET_SRC_DIRS := $(JDK_TOPDIR)/src/share/native/java/net \
1312 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/java/net \
1313 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/net/dns \
1314 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/net/www/protocol/http/ntlm \
1315 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/net/sdp \
1316 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/net/spi
1317
1318LIBNET_CFLAGS := $(foreach dir,$(LIBNET_SRC_DIRS),-I$(dir))
1319
1320LIBNET_EXCLUDE_FILES:=
1321ifneq ($(PLATFORM),linux)
1322 LIBNET_EXCLUDE_FILES += linux_close.c
1323endif
1324
1325ifneq ($(PLATFORM),macosx)
1326 LIBNET_EXCLUDE_FILES += bsd_close.c
1327endif
1328
1329ifeq ($(PLATFORM),windows)
1330 LIBNET_EXCLUDE_FILES += PlainSocketImpl.c PlainDatagramSocketImpl.c SdpSupport.c
1331else
1332 LIBNET_EXCLUDE_FILES += TwoStacksPlainSocketImpl.c DualStackPlainSocketImpl.c \
1333 TwoStacksPlainDatagramSocketImpl.c DualStackPlainDatagramSocketImpl.c \
1334 NTLMAuthSequence.c NetworkInterface_winXP.c
1335endif
1336
1337LIBNET_LDFLAGS_SUFFIX :=
1338
1339$(eval $(call SetupNativeCompilation,BUILD_LIBNET,\
1340 SRC:=$(LIBNET_SRC_DIRS),\
1341 EXCLUDE_FILES := $(LIBNET_EXCLUDE_FILES), \
1342 LANG:=C,\
1343 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) \
1344 $(LIBNET_CFLAGS),\
1345 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libnet/mapfile-vers, \
1346 LDFLAGS:=$(LDFLAGS_JDKLIB) \
1347 $(call SET_SHARED_LIBRARY_ORIGIN),\
1348 LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX) $(LIBNET_LDFLAGS_SUFFIX),\
1349 LDFLAGS_SUFFIX_solaris := -lnsl -lsocket $(LIBDL) ,\
1350 LDFLAGS_SUFFIX_linux := $(LIBDL) -lpthread ,\
1351 LDFLAGS_SUFFIX_windows := ws2_32.lib $(JVMLIB) secur32.lib iphlpapi.lib \
1352 delayimp.lib java.lib jvm.lib advapi32.lib \
1353 /DELAYLOAD:secur32.dll /DELAYLOAD:iphlpapi.dll, \
1354 BIN:=$(JDK_OUTPUTDIR)/objs/libnet,\
1355 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)net$(SHARED_LIBRARY_SUFFIX)))
1356
1357$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)net$(SHARED_LIBRARY_SUFFIX) : \
1358 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)java$(SHARED_LIBRARY_SUFFIX)
1359
1360BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)net$(SHARED_LIBRARY_SUFFIX)
1361
1362$(JDK_OUTPUTDIR)/lib/net.properties: $(JDK_TOPDIR)/src/share/lib/net.properties
1363 $(ECHO) Copying $(@F)
1364 $(MKDIR) -p $(@D)
1365 $(CP) $< $@
1366
1367COPY_FILES += $(JDK_OUTPUTDIR)/lib/net.properties
1368
1369ifeq ($(PLATFORM), solaris)
1370$(JDK_OUTPUTDIR)/lib/sdp/sdp.conf.template : $(JDK_TOPDIR)/src/${LEGACY_HOST_OS_API}/lib/sdp/sdp.conf.template
1371 $(ECHO) Copying $(@F)
1372 $(MKDIR) -p $(@D)
1373 $(CP) $< $@
1374
1375COPY_FILES += $(JDK_OUTPUTDIR)/lib/sdp/sdp.conf.template
1376endif
1377
1378##########################################################################################
1379
1380LIBJAVA_SRC_DIRS := $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/java/lang \
1381 $(JDK_TOPDIR)/src/share/native/java/lang \
1382 $(JDK_TOPDIR)/src/share/native/java/lang/ref \
1383 $(JDK_TOPDIR)/src/share/native/java/lang/reflect \
1384 $(JDK_TOPDIR)/src/share/native/java/io \
1385 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/java/io \
1386 $(JDK_TOPDIR)/src/share/native/java/nio \
1387 $(JDK_TOPDIR)/src/share/native/java/security \
1388 $(JDK_TOPDIR)/src/share/native/common \
1389 $(JDK_TOPDIR)/src/share/native/sun/misc \
1390 $(JDK_TOPDIR)/src/share/native/sun/reflect \
1391 $(JDK_TOPDIR)/src/share/native/java/sql \
1392 $(JDK_TOPDIR)/src/share/native/java/util \
1393 $(JDK_TOPDIR)/src/share/native/java/util/concurrent/atomic \
1394 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/common \
1395 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/java/util \
1396 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/security/provider \
1397 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/io
1398
1399LIBJAVA_CFLAGS := $(foreach dir,$(LIBJAVA_SRC_DIRS),-I$(dir)) \
1400 -I$(JDK_TOPDIR)/src/share/native/java/lang/fdlibm/include \
1401 -DARCHPROPNAME='"$(ARCH)"'
1402
1403LIBJAVA_CFLAGS += -DJDK_MAJOR_VERSION='"$(JDK_MAJOR_VERSION)"' \
1404 -DJDK_MINOR_VERSION='"$(JDK_MINOR_VERSION)"' \
1405 -DJDK_MICRO_VERSION='"$(JDK_MICRO_VERSION)"' \
1406 -DJDK_BUILD_NUMBER='"$(JDK_BUILD_NUMBER)"'
1407
1408ifneq (,$(JDK_UPDATE_VERSION))
1409 LIBJAVA_CFLAGS += -DJDK_UPDATE_VERSION='"$(JDK_UPDATE_VERSION)"'
1410endif
1411
1412LIBJAVA_EXCLUDE_FILES:= check_code.c check_format.c
1413
1414ifneq ($(PLATFORM),macosx)
1415 LIBJAVA_EXCLUDE_FILES += java_props_macosx.c
1416else
1417 BUILD_LIBJAVA_java_props_md.c_CFLAGS := -x objective-c
1418endif
1419
1420ifeq ($(PLATFORM),windows)
1421 LIBJAVA_EXCLUDE_FILES += \
1422 UNIXProcess_md.c \
1423 UnixFileSystem_md.c \
1424 FileSystemPreferences.c
1425else
1426 LIBJAVA_EXCLUDE_FILES += \
1427 ProcessImpl_md.c \
1428 Win32FileSystem_md.c \
1429 WinNTFileSystem_md.c \
1430 dirent_md.c \
1431 WindowsPreferences.c \
1432 sun/security/provider/WinCAPISeedGenerator.c \
1433 sun/io/Win32ErrorMode.c
1434endif
1435
1436ifeq ($(PLATFORM), solaris)
1437 ifneq ($(ARCH), amd64)
1438 LIBJAVA_REORDER := $(JDK_TOPDIR)/makefiles/mapfiles/libjava/reorder-$(ARCH)
1439 endif
1440endif
1441
1442LIBJAVA_FDLIBM := $(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)fdlibm$(STATIC_LIBRARY_SUFFIX)
1443LIBJAVA_VERIFY := $(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)verify$(STATIC_LIBRARY_SUFFIX)
1444
1445$(eval $(call SetupNativeCompilation,BUILD_LIBJAVA,\
1446 SRC:=$(LIBJAVA_SRC_DIRS),\
1447 EXCLUDES := fdlibm/src zip, \
1448 EXCLUDE_FILES := $(LIBJAVA_EXCLUDE_FILES), \
1449 LANG:=C,\
1450 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_HI) $(SHARED_LIBRARY_FLAGS) \
1451 $(LIBJAVA_CFLAGS),\
1452 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libjava/mapfile-vers, \
1453 LDFLAGS:=$(LDFLAGS_JDKLIB) \
1454 $(call SET_SHARED_LIBRARY_ORIGIN), \
1455 LDFLAGS_windows:=-export:winFileHandleOpen -export:handleLseek \
1456 $(LIBJAVA_FDLIBM) $(LIBJAVA_VERIFY) jvm.lib \
1457 shell32.lib delayimp.lib /DELAYLOAD:shell32.dll \
1458 advapi32.lib,\
1459 LDFLAGS_SUFFIX_posix:=-ljvm -lverify, \
1460 LDFLAGS_SUFFIX_solaris := -lnsl -lsocket -lscf $(LIBDL) $(LIBJAVA_FDLIBM) -lc,\
1461 LDFLAGS_SUFFIX_linux := $(LIBDL) $(LIBJAVA_FDLIBM),\
1462 LDFLAGS_SUFFIX_macosx := $(LIBJAVA_FDLIBM) \
1463 -framework CoreFoundation \
1464 -framework Security -framework SystemConfiguration, \
1465 REORDER := $(LIBJAVA_REORDER), \
1466 BIN:=$(JDK_OUTPUTDIR)/objs/libjava,\
1467 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)java$(SHARED_LIBRARY_SUFFIX)))
1468
1469BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)java$(SHARED_LIBRARY_SUFFIX)
1470
1471$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)java$(SHARED_LIBRARY_SUFFIX) : $(LIBJLI_BINARY)
1472
1473$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)java$(SHARED_LIBRARY_SUFFIX) : \
1474 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)verify$(SHARED_LIBRARY_SUFFIX)
1475
1476$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)java$(SHARED_LIBRARY_SUFFIX) : $(LIBJAVA_FDLIBM)
1477
1478##########################################################################################
1479
1480BUILD_LIBJLI_SRC_DIRS := $(JDK_TOPDIR)/src/share/bin $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/bin
1481BUILD_LIBJLI_CFLAGS := $(foreach dir,$(BUILD_LIBJLI_SRC_DIRS),-I$(dir))
1482
1483BUILD_LIBJLI_FILES := \
1484 java.c \
1485 splashscreen_stubs.c \
1486 parse_manifest.c \
1487 version_comp.c \
1488 wildcard.c \
1489 jli_util.c
1490
1491ifeq ($(JVM_VARIANT_ZERO), true)
1492 ERGO_FAMILY := zero
1493else # !ZERO_BUILD
1494 ifneq (,$(findstring $(ARCH), amd64 x86_64))
1495 ERGO_FAMILY := i586
1496 else # !X86 FAMILY
1497 ERGO_FAMILY := $(ARCH)
1498 endif #ARCH_FAMILY
1499endif # ZERO_BUILD
1500
1501ifeq ($(PLATFORM), macosx)
1502 BUILD_LIBJLI_CFLAGS += -I$(JDK_TOPDIR)/src/macosx/bin
1503 BUILD_LIBJLI_SRC_DIRS += $(JDK_TOPDIR)/src/macosx/bin
1504 BUILD_LIBJLI_FILES += java_md_common.c java_md_macosx.c
1505
1506 BUILD_LIBJLI_java_md_macosx.c_CFLAGS := -x objective-c
1507 BUILD_LIBJLI_A_java_md_macosx.c_CFLAGS := -x objective-c
1508endif
1509
1510ifeq ($(PLATFORM), windows)
1511 BUILD_LIBJLI_FILES += java_md.c
1512else ifneq ($(PLATFORM), macosx)
1513
1514 BUILD_LIBJLI_FILES += java_md_common.c
1515 BUILD_LIBJLI_FILES += java_md_solinux.c ergo.c
1516
1517 ERGO_ARCH_FILE = ergo_$(ERGO_FAMILY).c
1518
1519 # if the architecture specific ergo file exists then
1520 # use it, else use the generic definitions from ergo.c
1521 ifneq ($(wildcard $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/bin/$(ERGO_ARCH_FILE)),)
1522 BUILD_LIBJLI_FILES += $(ERGO_ARCH_FILE)
1523 else # !ERGO_ARCH_FILE
1524 BUILD_LIBJLI_CFLAGS += -DUSE_GENERIC_ERGO
1525 endif # ERGO_ARCH_FILE
1526endif #WINDOWS
1527
1528# Names of arch directories
1529BUILD_LIBJLI_CFLAGS += -DLIBARCHNAME='"$(LIBARCH)"'
1530ifeq ($(PLATFORM), solaris)
1531 ifneq (,$(findstring $(ARCH),sparc))
1532 BUILD_LIBJLI_CFLAGS += -DLIBARCH32NAME='"sparc"'
1533 BUILD_LIBJLI_CFLAGS += -DLIBARCH64NAME='"sparcv9"'
1534 else
1535 BUILD_LIBJLI_CFLAGS += -DLIBARCH32NAME='"i386"'
1536 BUILD_LIBJLI_CFLAGS += -DLIBARCH64NAME='"amd64"'
1537 endif
1538endif # PLATFORM
1539
1540ifeq ($(PLATFORM), macosx)
1541 BUILD_LIBJLI_CFLAGS += -DPACKAGE_PATH=\"$(PACKAGE_PATH)\"
1542endif
1543
1544ifneq ($(USE_EXTERNAL_LIBZ),true)
1545 BUILD_LIBJLI_SRC_DIRS += $(JDK_TOPDIR)/src/share/native/java/util/zip/zlib-1.2.5
1546 BUILD_LIBJLI_CFLAGS += $(LIBZ_INCLUDE)
1547 BUILD_LIBJLI_FILES += \
1548 inflate.c \
1549 inftrees.c \
1550 inffast.c \
1551 zadler32.c \
1552 zcrc32.c \
1553 zutil.c
1554endif
1555
1556$(eval $(call SetupNativeCompilation,BUILD_LIBJLI,\
1557 SRC:=$(BUILD_LIBJLI_SRC_DIRS),\
1558 INCLUDE_FILES := $(BUILD_LIBJLI_FILES),\
1559 LANG:=C,\
1560 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_HI) $(SHARED_LIBRARY_FLAGS) $(BUILD_LIBJLI_CFLAGS),\
1561 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libjli/mapfile-vers, \
1562 LDFLAGS:=$(LDFLAGS_JDKLIB) \
1563 $(call SET_SHARED_LIBRARY_ORIGIN),\
1564 LDFLAGS_SUFFIX := $(LIBZ),\
1565 LDFLAGS_SUFFIX_posix := $(LIBDL) -lc,\
1566 LDFLAGS_SUFFIX_linux := -lpthread,\
1567 LDFLAGS_SUFFIX_windows := \
1568 -export:JLI_Launch \
1569 -export:JLI_ManifestIterate \
1570 -export:JLI_SetTraceLauncher \
1571 -export:JLI_ReportErrorMessage \
1572 -export:JLI_ReportErrorMessageSys \
1573 -export:JLI_ReportMessage \
1574 -export:JLI_ReportExceptionDescription \
1575 advapi32.lib \
1576 comctl32.lib \
1577 user32.lib,\
1578 LDFLAGS_SUFFIX_macosx := -framework Cocoa -framework Security -framework ApplicationServices, \
1579 BIN:=$(JDK_OUTPUTDIR)/objs/libjli,\
1580 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)jli$(SHARED_LIBRARY_SUFFIX)))
1581
1582ifeq ($(HOST_OS), windows)
1583 LIBJLI_BINARY := $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)jli$(SHARED_LIBRARY_SUFFIX)
1584else
1585 LIBJLI_BINARY := $(INSTALL_LIBRARIES_HERE)/jli/$(LIBRARY_PREFIX)jli$(SHARED_LIBRARY_SUFFIX)
1586
1587 $(LIBJLI_BINARY) : $(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)jli$(SHARED_LIBRARY_SUFFIX)
1588 $(MKDIR) -p $(@D)
1589 $(ECHO) Copying $(@F)
1590 $(CP) $< $@
1591endif
1592BUILD_LIBRARIES += $(LIBJLI_BINARY)
1593
1594# On windows, the static library has the same suffix as the import library created by
1595# with the shared library, so the static library is given a different name. No harm
1596# in doing it for all platform to reduce complexity.
1597ifneq ($(HOST_OS),macosx)
1598 $(eval $(call SetupNativeCompilation,BUILD_LIBJLI_STATIC,\
1599 SRC:=$(BUILD_LIBJLI_SRC_DIRS),\
1600 INCLUDE_FILES := $(BUILD_LIBJLI_FILES),\
1601 LANG:=C,\
1602 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_HI) $(STATIC_LIBRARY_FLAGS) $(BUILD_LIBJLI_CFLAGS),\
1603 ARFLAGS:=$(ARFLAGS),\
1604 BIN:=$(JDK_OUTPUTDIR)/objs/libjli_static,\
1605 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)jli_static$(STATIC_LIBRARY_SUFFIX)))
1606else
1607 #
1608 # On macosx they do partial (incremental) linking of fdlibm
1609 # code it here...rather than add support to NativeCompilation
1610 # as this is first time I see it
1611 $(eval $(call SetupNativeCompilation,BUILD_LIBJLI_A,\
1612 SRC:=$(BUILD_LIBJLI_SRC_DIRS),\
1613 INCLUDE_FILES := $(BUILD_LIBJLI_FILES),\
1614 LANG:=C,\
1615 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_HI) $(BUILD_LIBJLI_CFLAGS),\
1616 LDFLAGS := -nostdlib -r,\
1617 BIN:=$(JDK_OUTPUTDIR)/objs/libjli_static,\
1618 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)jli_static$(STATIC_LIBRARY_SUFFIX)))
1619endif
1620
1621BUILD_LIBRARIES += $(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)jli_static$(STATIC_LIBRARY_SUFFIX)
1622
1623##########################################################################################
1624
1625ifndef OPENJDK
1626ifndef JAVASE_EMBEDDED
1627
1628$(eval $(call SetupNativeCompilation,BUILD_LIBJFR,\
1629 SRC:=$(JDK_TOPDIR)/src/closed/share/native/oracle/jfr,\
1630 LANG:=C,\
1631 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) \
1632 -I$(JDK_TOPDIR)/src/closed/share/javavm/export, \
1633 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libjfr/mapfile-vers, \
1634 LDFLAGS:=$(LDFLAGS_JDKLIB) \
1635 $(call SET_SHARED_LIBRARY_ORIGIN),\
1636 BIN:=$(JDK_OUTPUTDIR)/objs/libjfr,\
1637 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)jfr$(SHARED_LIBRARY_SUFFIX)))
1638
1639BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)jfr$(SHARED_LIBRARY_SUFFIX)
1640
1641endif
1642endif
1643
1644##########################################################################################
1645
1646ifndef OPENJDK
1647
1648BUILD_LIBKCMS_EXCLUDE_FILES :=
1649ifeq ($(PLATFORM),windows)
1650 BUILD_LIBKCMS_EXCLUDE_FILES += ukcpmgr.c unixmem.c
1651else
1652 BUILD_LIBKCMS_EXCLUDE_FILES += cmmdll.c registry.c spxffile.c sysinfo.c winmem.c wkcpmgr.c
1653endif
1654
1655$(eval $(call SetupNativeCompilation,BUILD_LIBKCMS,\
1656 SRC:=$(JDK_TOPDIR)/src/closed/share/native/sun/java2d/cmm/kcms,\
1657 LANG:=C,\
1658 EXCLUDE_FILES := $(BUILD_LIBKCMS_EXCLUDE_FILES),\
1659 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) \
1660 -DJAVACMM -DFUT_CALC_EX -DNO_FUT_GCONST,\
1661 CFLAGS_linux := -Wno-missing-field-initializers,\
1662 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libkcms/mapfile-vers, \
1663 LDFLAGS:=$(LDFLAGS_JDKLIB) \
1664 $(call SET_SHARED_LIBRARY_ORIGIN),\
1665 LDFLAGS_SUFFIX_linux := -lpthread,\
1666 LDFLAGS_SUFFIX_windows := java.lib advapi32.lib user32.lib version.lib, \
1667 LDFLAGS_SUFFIX:= -lm $(LDFLAGS_JDKLIB_SUFFIX),\
1668 VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/closed/share/native/sun/java2d/cmm/kcms/cmm.rc,\
1669 BIN:=$(JDK_OUTPUTDIR)/objs/libkcms,\
1670 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)kcms$(SHARED_LIBRARY_SUFFIX)))
1671
1672$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)kcms$(SHARED_LIBRARY_SUFFIX) : \
1673 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)java$(SHARED_LIBRARY_SUFFIX)
1674
1675BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)kcms$(SHARED_LIBRARY_SUFFIX)
1676
1677endif
1678
1679##########################################################################################
1680
1681ifndef OPENJDK
1682ifeq ($(PLATFORM), solaris)
1683ifneq ($(ARCH), amd64)
1684
1685ifeq ($(shell if test "$(OS_VERSION_MAJOR)" -eq 5 -a "$(OS_VERSION_MINOR)" -le 10; then $(ECHO) ok; fi), ok)
1686
1687SUNWJDGA_MAPFILE :=
1688ifneq (,$(findstring $(ARCH),sparc))
1689 SUNWJDGA_MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libjdga/mapfile-vers
1690endif
1691
1692$(eval $(call SetupNativeCompilation,BUILD_LIBSUNWJDGA, \
1693 SRC:=$(JDK_TOPDIR)/src/solaris/native/sun/jdga, \
1694 LANG:=C, \
1695 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) \
1696 -I$(JDK_TOPDIR)/src/share/javavm/export \
1697 -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/javavm/export \
1698 -I$(OPENWIN_HOME)/include, \
1699 MAPFILE := $(SUNWJDGA_MAPFILE), \
1700 LDFLAGS:=$(LDFLAGS_JDKLIB) \
1701 $(call SET_SHARED_LIBRARY_ORIGIN), \
1702 LDFLAGS_SUFFIX:= -L$(OPENWIN_LIB)$(ISA_DIR) -R$(OPENWIN_LIB)$(ISA_DIR) -ldga -lX11 $(LIBDL) -lc, \
1703 BIN:=$(JDK_OUTPUTDIR)/objs/libsunwjdga, \
1704 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)sunwjdga$(SHARED_LIBRARY_SUFFIX)))
1705
1706BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)sunwjdga$(SHARED_LIBRARY_SUFFIX)
1707
1708endif
1709endif
1710endif
1711endif
1712
1713##########################################################################################
1714
1715ifeq ($(BUILD_HEADLESS), true)
1716ifneq ($(PLATFORM), windows)
1717
1718# TODO!!
1719X11_PATH := /usr/X11R6
1720
1721LIBAWT_HEADLESS_DIRS := $(JDK_TOPDIR)/src/share/native/sun/font \
1722 $(JDK_TOPDIR)/src/share/native/sun/java2d/opengl \
1723 $(JDK_TOPDIR)/src/solaris/native/sun/font \
1724 $(JDK_TOPDIR)/src/solaris/native/sun/awt \
1725 $(JDK_TOPDIR)/src/solaris/native/sun/java2d/opengl \
1726 $(JDK_TOPDIR)/src/solaris/native/sun/java2d/x11
1727
1728LIBAWT_HEADLESS_CFLAGS := -DHEADLESS=true \
1729 -DX11_PATH=\"$(X11_PATH)\" -DPACKAGE_PATH=\"$(PACKAGE_PATH)\" \
1730 $(CUPS_CFLAGS) \
1731 -I$(JDK_TOPDIR)/src/share/native/sun/java2d \
1732 -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/java2d \
1733 -I$(JDK_TOPDIR)/src/share/native/sun/java2d/loops \
1734 -I$(JDK_TOPDIR)/src/share/native/sun/java2d/pipe \
1735 -I$(JDK_TOPDIR)/src/share/native/sun/awt/image \
1736 -I$(JDK_TOPDIR)/src/share/native/sun/awt/image/cvutils \
1737 -I$(JDK_TOPDIR)/src/share/native/sun/awt/debug \
1738 -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/jdga \
1739 $(foreach dir,$(LIBAWT_HEADLESS_DIRS),-I$(dir))
1740
1741LIBAWT_HEADLESS_FILES := \
1742 awt_Font.c \
1743 HeadlessToolkit.c \
1744 fontpath.c \
1745 VDrawingArea.c \
1746 X11Color.c \
1747 X11Renderer.c \
1748 X11PMBlitLoops.c \
1749 X11SurfaceData.c \
1750 X11FontScaler_md.c \
1751 X11TextRenderer_md.c \
1752 OGLBlitLoops.c \
1753 OGLBufImgOps.c \
1754 OGLContext.c \
1755 OGLFuncs.c \
1756 OGLMaskBlit.c \
1757 OGLMaskFill.c \
1758 OGLPaints.c \
1759 OGLRenderQueue.c \
1760 OGLRenderer.c \
1761 OGLSurfaceData.c \
1762 OGLTextRenderer.c \
1763 OGLVertexCache.c \
1764 GLXGraphicsConfig.c \
1765 GLXSurfaceData.c \
1766 AccelGlyphCache.c \
1767 CUPSfuncs.c
1768
1769LIBAWT_HEADLESS_LDFLAGS_SUFFIX := $(LDFLAGS_JDKLIB_SUFFIX) -lawt -lm
1770
1771LIBAWT_HEADLESS_REORDER :=
1772ifeq ($(PLATFORM), solaris)
1773 ifneq ($(ARCH), amd64)
1774 LIBAWT_HEADLESS_REORDER := $(JDK_TOPDIR)/makefiles/mapfiles/libawt_headless/reorder-$(ARCH)
1775 endif
1776endif
1777
1778$(eval $(call SetupNativeCompilation,BUILD_LIBAWT_HEADLESS,\
1779 SRC:=$(LIBAWT_HEADLESS_DIRS),\
1780 INCLUDE_FILES := $(LIBAWT_HEADLESS_FILES),\
1781 LANG:=C,\
1782 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) $(LIBAWT_HEADLESS_CFLAGS),\
1783 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libawt_headless/mapfile-vers, \
1784 LDFLAGS:=$(LDFLAGS_JDKLIB) \
1785 $(call SET_SHARED_LIBRARY_ORIGIN),\
1786 REORDER := $(LIBAWT_HEADLESS_REORDER), \
1787 LDFLAGS_SUFFIX := $(LIBAWT_HEADLESS_LDFLAGS_SUFFIX),\
1788 LDFLAGS_SUFFIX_posix := $(LIBDL),\
1789 BIN:=$(JDK_OUTPUTDIR)/objs/libawt_headless,\
1790 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)awt_headless$(SHARED_LIBRARY_SUFFIX)))
1791
1792$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)awt_headless$(SHARED_LIBRARY_SUFFIX) : \
1793 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)awt$(SHARED_LIBRARY_SUFFIX)
1794
1795BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)awt_headless$(SHARED_LIBRARY_SUFFIX)
1796
1797endif
1798endif
1799
1800##########################################################################################
1801
1802ifneq ($(PLATFORM), windows)
1803ifndef BUILD_HEADLESS_ONLY
1804
1805LIBAWT_XAWT_DIRS := \
1806 $(JDK_TOPDIR)/src/share/native/sun/awt/debug \
1807 $(JDK_TOPDIR)/src/share/native/sun/awt/utility \
1808 $(JDK_TOPDIR)/src/share/native/sun/font \
1809 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/font \
1810 $(JDK_TOPDIR)/src/share/native/sun/java2d/opengl \
1811 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/awt \
1812 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/java2d/opengl \
1813 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/java2d/x11 \
1814 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/xawt \
1815
1816LIBAWT_XAWT_CFLAGS := -DXAWT -DXAWT_HACK \
1817 -DX11_PATH=\"$(X11_PATH)\" -DPACKAGE_PATH=\"$(PACKAGE_PATH)\" \
1818 $(CUPS_CFLAGS) \
1819 $(foreach dir,$(LIBAWT_XAWT_DIRS),-I$(dir)) \
1820 -I$(JDK_TOPDIR)/src/share/native/sun/java2d \
1821 -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/java2d \
1822 -I$(JDK_TOPDIR)/src/share/native/sun/java2d/loops \
1823 -I$(JDK_TOPDIR)/src/share/native/sun/java2d/pipe \
1824 -I$(JDK_TOPDIR)/src/share/native/sun/awt/image \
1825 -I$(JDK_TOPDIR)/src/share/native/sun/awt/image/cvutils \
1826 -I$(JDK_TOPDIR)/src/share/native/sun/awt/debug \
1827 -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/jdga
1828
1829ifeq ($(PLATFORM),solaris)
1830 LIBAWT_XAWT_CFLAGS += -DFUNCPROTO=15
1831endif
1832
1833ifeq ($(MILESTONE),internal)
1834 LIBAWT_XAWT_CFLAGS += -DINTERNAL_BUILD
1835endif
1836
1837LIBAWT_XAWT_FILES := \
1838 XlibWrapper.c \
1839 XWindow.c \
1840 XToolkit.c \
1841 X11Color.c \
1842 X11SurfaceData.c \
1843 awt_GraphicsEnv.c \
1844 awt_InputMethod.c \
1845 robot_common.c \
1846 awt_Robot.c \
1847 list.c \
1848 multiVis.c \
1849 initIDs.c \
1850 awt_util.c \
1851 awt_Desktop.c \
1852 awt_UNIXToolkit.c \
1853 X11FontScaler_md.c \
1854 X11TextRenderer_md.c \
1855 fontpath.c \
1856 awt_Insets.c \
1857 awt_Event.c \
1858 X11Renderer.c \
1859 X11PMBlitLoops.c \
1860 OGLBlitLoops.c \
1861 OGLBufImgOps.c \
1862 OGLContext.c \
1863 OGLFuncs.c \
1864 OGLMaskBlit.c \
1865 OGLMaskFill.c \
1866 OGLPaints.c \
1867 OGLRenderQueue.c \
1868 OGLRenderer.c \
1869 OGLSurfaceData.c \
1870 OGLTextRenderer.c \
1871 OGLVertexCache.c \
1872 GLXGraphicsConfig.c \
1873 GLXSurfaceData.c \
1874 AccelGlyphCache.c \
1875 awt_Font.c \
1876 multi_font.c \
1877 awt_AWTEvent.c \
1878 awt_DrawingSurface.c \
1879 jawt.c \
1880 CUPSfuncs.c \
1881 debug_assert.c \
1882 debug_mem.c \
1883 debug_trace.c \
1884 debug_util.c \
1885 awt_Plugin.c \
1886 gtk2_interface.c \
1887 swing_GTKEngine.c \
1888 swing_GTKStyle.c \
1889 rect.c \
1890 sun_awt_X11_GtkFileDialogPeer.c \
1891 XRSurfaceData.c \
1892 XRBackendNative.c
1893
1894LIBAWT_XAWT_LDFLAGS_SUFFIX := $(LIBM) -lawt -lXext -lX11 -lXrender $(LIBDL) -lXtst -lXi -ljava -lverify -ljvm -lc
1895
1896ifeq ($(PLATFORM), linux)
1897 LIBAWT_XAWT_LDFLAGS_SUFFIX += -lpthread
1898endif
1899
1900ifeq ($(PLATFORM), macosx)
1901 LIBAWT_XAWT_LDFLAGS_SUFFIX += -lpthread
1902endif
1903
1904$(eval $(call SetupNativeCompilation,BUILD_LIBAWT_XAWT,\
1905 SRC:=$(LIBAWT_XAWT_DIRS),\
1906 INCLUDE_FILES := $(LIBAWT_XAWT_FILES),\
1907 LANG:=C,\
1908 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) $(LIBAWT_XAWT_CFLAGS) \
1909 $(X_CFLAGS),\
1910 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libawt_xawt/mapfile-vers, \
1911 LDFLAGS:=$(LDFLAGS_JDKLIB) \
1912 $(call SET_SHARED_LIBRARY_ORIGIN) \
1913 $(X_LIBS),\
1914 LDFLAGS_solaris:=-L$(OPENWIN_HOME)/sfw/lib$(ISA_DIR) -L$(OPENWIN_LIB)$(ISA_DIR) \
1915 -R$(OPENWIN_HOME)/sfw/lib$(ISA_DIR) -R$(OPENWIN_LIB)$(ISA_DIR) \
1916 -R/usr/dt/lib$(ISA_DIR),\
1917 LDFLAGS_SUFFIX := $(LIBAWT_XAWT_LDFLAGS_SUFFIX),\
1918 BIN:=$(JDK_OUTPUTDIR)/objs/libawt_xawt,\
1919 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)awt_xawt$(SHARED_LIBRARY_SUFFIX)))
1920
1921$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)awt_xawt$(SHARED_LIBRARY_SUFFIX) : \
1922 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)java$(SHARED_LIBRARY_SUFFIX)
1923
1924$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)awt_xawt$(SHARED_LIBRARY_SUFFIX) : \
1925 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)awt$(SHARED_LIBRARY_SUFFIX)
1926
1927BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)awt_xawt$(SHARED_LIBRARY_SUFFIX)
1928
1929endif
1930endif
1931
1932##########################################################################################
1933
1934ifndef BUILD_HEADLESS_ONLY
1935LIBSPLASHSCREEN_DIRS := \
1936 $(JDK_TOPDIR)/src/share/native/sun/awt/giflib \
1937 $(JDK_TOPDIR)/src/share/native/sun/awt/image/jpeg \
1938 $(JDK_TOPDIR)/src/share/native/sun/awt/libpng \
1939 $(JDK_TOPDIR)/src/share/native/sun/awt/splashscreen \
1940 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/awt/splashscreen
1941
1942LIBSPLASHSCREEN_CFLAGS := -DSPLASHSCREEN -DPNG_NO_MMX_CODE \
1943 $(foreach dir,$(LIBSPLASHSCREEN_DIRS),-I$(dir))
1944
1945ifeq ($(PLATFORM), macosx)
1946 LIBSPLASHSCREEN_CFLAGS := -I$(JDK_TOPDIR)/src/macosx/native/sun/awt/splashscreen \
1947 $(LIBSPLASHSCREEN_CFLAGS) \
1948 -F/System/Library/Frameworks/JavaVM.framework/Frameworks
1949 LIBSPLASHSCREEN_CFLAGS += -DWITH_MACOSX
1950 LIBSPLASHSCREEN_CFLAGS += -I$(JDK_TOPDIR)/src/macosx/native/sun/osxapp
1951
1952 LIBSPLASHSCREEN_java_awt_SplashScreen.c_CFLAGS := -x objective-c -O0
1953 LIBSPLASHSCREEN_splashscreen_gfx_impl.c_CFLAGS := -x objective-c -O0
1954 LIBSPLASHSCREEN_splashscreen_gif.c_CFLAGS := -x objective-c -O0
1955 LIBSPLASHSCREEN_splashscreen_impl.c_CFLAGS := -x objective-c -O0
1956 LIBSPLASHSCREEN_splashscreen_jpeg.c_CFLAGS := -x objective-c -O0
1957 LIBSPLASHSCREEN_splashscreen_png.c_CFLAGS := -x objective-c -O0
1958 LIBSPLASHSCREEN_splashscreen_sys.m_CFLAGS := -O0
1959
1960else ifneq ($(PLATFORM), windows)
1961 LIBSPLASHSCREEN_CFLAGS += -DWITH_X11 -I$(OPENWIN_HOME)/include -I$(OPENWIN_HOME)/include/X11/extensions
1962else
1963 LIBSPLASHSCREEN_CFLAGS += -DWITH_WIN32
1964endif
1965
1966LIBSPLASHSCREEN_FILES := \
1967 java_awt_SplashScreen.c \
1968 splashscreen_gfx_impl.c \
1969 splashscreen_gif.c \
1970 splashscreen_impl.c \
1971 splashscreen_jpeg.c \
1972 splashscreen_png.c \
1973 png.c \
1974 pngerror.c \
1975 pngget.c \
1976 pngmem.c \
1977 pngpread.c \
1978 pngread.c \
1979 pngrio.c \
1980 pngrtran.c \
1981 pngrutil.c \
1982 pngset.c \
1983 pngtrans.c \
1984 pngwio.c \
1985 pngwrite.c \
1986 pngwtran.c \
1987 pngwutil.c \
1988 dgif_lib.c \
1989 gif_err.c \
1990 gifalloc.c \
1991 jcomapi.c \
1992 jdapimin.c \
1993 jdapistd.c \
1994 jdcoefct.c \
1995 jdcolor.c \
1996 jddctmgr.c \
1997 jdhuff.c \
1998 jdinput.c \
1999 jdmainct.c \
2000 jdmarker.c \
2001 jdmaster.c \
2002 jdmerge.c \
2003 jdphuff.c \
2004 jdpostct.c \
2005 jdsample.c \
2006 jerror.c \
2007 jidctflt.c \
2008 jidctfst.c \
2009 jidctint.c \
2010 jidctred.c \
2011 jmemmgr.c \
2012 jmemnobs.c \
2013 jquant1.c \
2014 jquant2.c \
2015 jutils.c \
2016 jcapimin.c \
2017 jcapistd.c \
2018 jccoefct.c \
2019 jccolor.c \
2020 jcdctmgr.c \
2021 jchuff.c \
2022 jcinit.c \
2023 jcmainct.c \
2024 jcmarker.c \
2025 jcmaster.c \
2026 jcparam.c \
2027 jcphuff.c \
2028 jcprepct.c \
2029 jcsample.c \
2030 jctrans.c \
2031 jdtrans.c \
2032 jfdctflt.c \
2033 jfdctfst.c \
2034 jfdctint.c
2035
2036ifneq ($(PLATFORM), macosx)
2037LIBSPLASHSCREEN_FILES += splashscreen_sys.c
2038else
2039LIBSPLASHSCREEN_DIRS += $(JDK_TOPDIR)/src/macosx/native/sun/awt/splashscreen
2040LIBSPLASHSCREEN_FILES += splashscreen_sys.m
2041endif
2042
2043LIBSPLASHSCREEN_LDFLAGS_SUFFIX :=
2044
2045ifneq ($(USE_EXTERNAL_LIBZ),true)
2046 LIBSPLASHSCREEN_DIRS += $(JDK_TOPDIR)/src/share/native/java/util/zip/zlib-1.2.5
2047 LIBSPLASHSCREEN_CFLAGS += $(LIBZ_INCLUDE)
2048 LIBSPLASHSCREEN_FILES += \
2049 compress.c \
2050 deflate.c \
2051 gzclose.c \
2052 gzlib.c \
2053 gzread.c \
2054 gzwrite.c \
2055 infback.c \
2056 inffast.c \
2057 inflate.c \
2058 inftrees.c \
2059 trees.c \
2060 uncompr.c \
2061 zadler32.c \
2062 zcrc32.c \
2063 zutil.c
2064endif
2065
2066ifeq ($(PLATFORM), macosx)
2067 LIBSPLASHSCREEN_LDFLAGS_SUFFIX += $(LIBM) -lpthread -liconv -losxapp \
2068 -framework ApplicationServices \
2069 -framework Foundation \
2070 -framework Cocoa \
2071 -F/System/Library/Frameworks/JavaVM.framework/Frameworks \
2072 -framework JavaNativeFoundation
2073else ifneq ($(PLATFORM), windows)
2074 LIBSPLASHSCREEN_LDFLAGS_SUFFIX += -L$(OPENWIN_LIB)$(ISA_DIR) -lX11 -lXext $(LIBM) -lpthread $(LIBDL)
2075else # PLATFORM
2076 LIBSPLASHSCREEN_LDFLAGS_SUFFIX += kernel32.lib user32.lib gdi32.lib delayimp.lib /DELAYLOAD:user32.dll
2077endif # PLATFORM
2078
2079$(eval $(call SetupNativeCompilation,LIBSPLASHSCREEN,\
2080 SRC:=$(LIBSPLASHSCREEN_DIRS),\
2081 INCLUDE_FILES := $(LIBSPLASHSCREEN_FILES),\
2082 LANG:=C,\
2083 CFLAGS:= $(LIBSPLASHSCREEN_CFLAGS) $(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS),\
2084 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libsplashscreen/mapfile-vers, \
2085 LDFLAGS:= $(LDFLAGS_JDKLIB) \
2086 $(call SET_SHARED_LIBRARY_ORIGIN),\
2087 LDFLAGS_SUFFIX := $(LIBSPLASHSCREEN_LDFLAGS_SUFFIX) $(LIBZ),\
2088 BIN:=$(JDK_OUTPUTDIR)/objs/libsplashscreen,\
2089 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)splashscreen$(SHARED_LIBRARY_SUFFIX)))
2090
2091BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)splashscreen$(SHARED_LIBRARY_SUFFIX)
2092
2093ifeq ($(PLATFORM),macosx)
2094$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)splashscreen$(SHARED_LIBRARY_SUFFIX) : \
2095 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)osxapp$(SHARED_LIBRARY_SUFFIX)
2096endif
2097
2098endif
2099
2100##########################################################################################
2101
2102LIBAWT_DIRS := \
2103 $(JDK_TOPDIR)/src/share/native/sun/awt \
2104 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/awt \
2105 $(JDK_TOPDIR)/src/share/native/sun/awt/image \
2106 $(JDK_TOPDIR)/src/share/native/sun/awt/image/gif \
2107 $(JDK_TOPDIR)/src/share/native/sun/awt/image/cvutils \
2108 $(JDK_TOPDIR)/src/share/native/sun/awt/shell \
2109 $(JDK_TOPDIR)/src/share/native/sun/awt/medialib \
2110 $(JDK_TOPDIR)/src/share/native/sun/awt/debug \
2111 $(JDK_TOPDIR)/src/share/native/sun/awt/utility \
2112 $(JDK_TOPDIR)/src/share/native/sun/java2d \
2113 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/java2d \
2114 $(JDK_TOPDIR)/src/share/native/sun/java2d/loops \
2115 $(JDK_TOPDIR)/src/share/native/sun/java2d/pipe \
2116 $(JDK_TOPDIR)/src/share/native/sun/awt/image \
2117 $(JDK_TOPDIR)/src/share/native/sun/java2d/opengl \
2118 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/java2d/opengl \
2119 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/java2d/x11 \
2120 $(JDK_TOPDIR)/src/share/native/sun/font \
2121 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/windows \
2122 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/java2d/windows \
2123 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/java2d/d3d
2124
2125
2126LIBAWT_CFLAGS := -D__MEDIALIB_OLD_NAMES -D__USE_J2D_NAMES \
2127 $(foreach dir,$(LIBAWT_DIRS),-I$(dir))
2128
2129LIBAWT_FILES := \
2130 gifdecoder.c \
2131 imageInitIDs.c \
2132 img_globals.c \
2133 SurfaceData.c \
2134 Region.c \
2135 BufImgSurfaceData.c \
2136 Disposer.c \
2137 Trace.c \
2138 GraphicsPrimitiveMgr.c \
2139 Blit.c \
2140 BlitBg.c \
2141 ScaledBlit.c \
2142 FillRect.c \
2143 FillSpans.c \
2144 FillParallelogram.c \
2145 DrawParallelogram.c \
2146 DrawLine.c \
2147 DrawRect.c \
2148 DrawPolygons.c \
2149 DrawPath.c \
2150 FillPath.c \
2151 ProcessPath.c \
2152 MaskBlit.c \
2153 MaskFill.c \
2154 TransformHelper.c \
2155 AlphaMath.c \
2156 AlphaMacros.c \
2157 AnyByte.c \
2158 ByteBinary1Bit.c \
2159 ByteBinary2Bit.c \
2160 ByteBinary4Bit.c \
2161 ByteIndexed.c \
2162 ByteGray.c \
2163 Index8Gray.c \
2164 Index12Gray.c \
2165 AnyShort.c \
2166 Ushort555Rgb.c \
2167 Ushort565Rgb.c \
2168 Ushort4444Argb.c \
2169 Ushort555Rgbx.c \
2170 UshortGray.c \
2171 UshortIndexed.c \
2172 Any3Byte.c \
2173 ThreeByteBgr.c \
2174 AnyInt.c \
2175 IntArgb.c \
2176 IntArgbPre.c \
2177 IntArgbBm.c \
2178 IntRgb.c \
2179 IntBgr.c \
2180 IntRgbx.c \
2181 Any4Byte.c \
2182 FourByteAbgr.c \
2183 FourByteAbgrPre.c \
2184 BufferedMaskBlit.c \
2185 BufferedRenderPipe.c \
2186 ShapeSpanIterator.c \
2187 SpanClipRenderer.c \
2188 awt_ImageRep.c \
2189 awt_ImagingLib.c \
2190 awt_Mlib.c \
2191 awt_parseImage.c \
2192 DataBufferNative.c \
2193 dither.c \
2194 debug_assert.c \
2195 debug_mem.c \
2196 debug_trace.c \
2197 debug_util.c
2198
2199ifneq (,$(filter $(PLATFORM), solaris linux))
2200 LIBAWT_FILES += awt_LoadLibrary.c initIDs.c img_colors.c
2201endif
2202
2203ifeq ($(PLATFORM),macosx)
2204 LIBAWT_DIRS += $(JDK_TOPDIR)/src/macosx/native/com/apple/resources
2205 LIBAWT_FILES += awt_LoadLibrary.c MacOSXResourceBundle.m
2206 LIBAWT_CFLAGS += -F/System/Library/Frameworks/JavaVM.framework/Frameworks
2207
2208 LIBAWT_MacOSXResourceBundle.m_CFLAGS := -O0
2209endif
2210
2211ifeq ($(PLATFORM)-$(ARCH_FAMILY), solaris-sparc)
2212#
2213# TODO...
2214#
2215
2216# FILES_c += $(FILES_2D_vis)
2217# ASFLAGS += -P
2218# FILES_s += mlib_v_ImageCopy_blk.s
2219# INLINE_VIS = $(PLATFORM_SRC)/native/sun/awt/medialib/vis_$(ARCH_DATA_MODEL).il
2220# CFLAGS_sparcv9 = -DMLIB_OS64BIT
2221# CFLAGS += $(CFLAGS_$(ARCH)) -DMLIB_ADD_SUFF $(INLINE_VIS)
2222else
2223 LIBAWT_FILES += MapAccelFunc.c
2224endif
2225
2226ifneq ($(PLATFORM),solaris)
2227 LIBAWT_CFLAGS += -DMLIB_NO_LIBSUNMATH
2228endif
2229
2230LIBAWT_LANG := C
2231
2232ifeq ($(PLATFORM),windows)
2233 LIBAWT_FILES += AccelGlyphCache.c \
2234 ShaderList.c \
2235 CmdIDList.cpp \
2236 Hashtable.cpp \
2237 GDIHashtable.cpp \
2238 Devices.cpp \
2239 ObjectList.cpp \
2240 GDIBlitLoops.cpp \
2241 GDIRenderer.cpp \
2242 GDIWindowSurfaceData.cpp \
2243 WindowsFlags.cpp \
2244 WPrinterJob.cpp \
2245 awt_%.cpp \
2246 D3DBlitLoops.cpp \
2247 D3DBufImgOps.cpp \
2248 D3DContext.cpp \
2249 D3DGlyphCache.cpp \
2250 D3DGraphicsDevice.cpp \
2251 D3DMaskBlit.cpp \
2252 D3DMaskCache.cpp \
2253 D3DMaskFill.cpp \
2254 D3DPipelineManager.cpp \
2255 D3DPaints.cpp \
2256 D3DRenderer.cpp \
2257 D3DRenderQueue.cpp \
2258 D3DResourceManager.cpp \
2259 D3DSurfaceData.cpp \
2260 D3DTextRenderer.cpp \
2261 D3DVertexCacher.cpp \
2262 ShellFolder2.cpp \
2263 ThemeReader.cpp \
2264 ComCtl32Util.cpp \
2265 DllUtil.cpp \
2266 initIDs.cpp \
2267 MouseInfo.cpp \
2268 rect.c
2269 LIBAWT_LANG := C++
2270 LIBAWT_CFLAGS += $(GX_OPTION) -DUNICODE -D_UNICODE
2271 ifeq ($(ARCH_DATA_MODEL), 64)
2272 LIBAWT_CFLAGS += -DMLIB_OS64BIT
2273 endif
2274
2275 ifdef OPENJDK
2276 LIBAWT_RC_FLAGS := -i "$(JDK_TOPDIR)/src/windows/resource/icons"
2277 else
2278 LIBAWT_RC_FLAGS := -i "$(JDK_TOPDIR)/src/closed/windows/native/sun/windows"
2279 endif
2280 LIBAWT_VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/native/sun/windows/awt.rc
2281endif
2282
2283ifeq ($(MILESTONE), internal)
2284 LIBAWT_CFLAGS += -DINTERNAL_BUILD
2285endif
2286
2287LIBAWT_MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libawt/mapfile-vers
2288ifeq ($(PLATFORM),linux)
2289 LIBAWT_MAPFILE :=
2290endif
2291
2292$(eval $(call SetupNativeCompilation,BUILD_LIBAWT,\
2293 SRC:=$(LIBAWT_DIRS),\
2294 INCLUDE_FILES := $(LIBAWT_FILES),\
2295 LANG:=$(LIBAWT_LANG),\
2296 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) $(LIBAWT_CFLAGS),\
2297 MAPFILE := $(LIBAWT_MAPFILE), \
2298 LDFLAGS:=$(LDFLAGS_JDKLIB) $(call SET_SHARED_LIBRARY_ORIGIN),\
2299 LDFLAGS_windows:=advapi32.lib kernel32.lib user32.lib gdi32.lib winspool.lib \
2300 imm32.lib ole32.lib uuid.lib shell32.lib \
2301 comdlg32.lib winmm.lib comctl32.lib \
2302 shlwapi.lib delayimp.lib java.lib jvm.lib \
2303 /DELAYLOAD:user32.dll /DELAYLOAD:gdi32.dll \
2304 /DELAYLOAD:shell32.dll /DELAYLOAD:winmm.dll \
2305 /DELAYLOAD:winspool.drv /DELAYLOAD:imm32.dll \
2306 /DELAYLOAD:ole32.dll /DELAYLOAD:comdlg32.dll \
2307 /DELAYLOAD:comctl32.dll /DELAYLOAD:shlwapi.dll,\
2308 LDFLAGS_macosx :=-framework Cocoa \
2309 -framework OpenGL \
2310 -F/System/Library/Frameworks/JavaVM.framework/Frameworks \
2311 -framework JavaNativeFoundation \
2312 -framework JavaRuntimeSupport \
2313 -framework ApplicationServices \
2314 -framework AudioToolbox,\
2315 LDFLAGS_solaris := -R/usr/dt/lib$(ISA_DIR) -R$(OPENWIN_LIB)$(ISA_DIR),\
2316 LDFLAGS_SUFFIX_posix := -ljvm $(LIBM) -ljava $(LIBDL),\
2317 VERSIONINFO_RESOURCE := $(LIBAWT_VERSIONINFO_RESOURCE),\
2318 RC_FLAGS := $(RC_FLAGS) $(LIBAWT_RC_FLAGS) \
2319 /D "JDK_FNAME=awt.dll" \
2320 /D "JDK_INTERNAL_NAME=awt" \
2321 /D "JDK_FTYPE=0x2L",\
2322 BIN:=$(JDK_OUTPUTDIR)/objs/libawt,\
2323 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)awt$(SHARED_LIBRARY_SUFFIX)))
2324
2325$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)awt$(SHARED_LIBRARY_SUFFIX) : \
2326 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)java$(SHARED_LIBRARY_SUFFIX)
2327
2328BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)awt$(SHARED_LIBRARY_SUFFIX)
2329
2330##########################################################################################
2331
2332ifndef OPENJDK
2333
2334LIBDCPR_SRC_DIRS := \
2335 $(JDK_TOPDIR)/src/closed/share/native/sun/dc/doe \
2336 $(JDK_TOPDIR)/src/closed/share/native/sun/dc/path \
2337 $(JDK_TOPDIR)/src/closed/share/native/sun/dc/pr \
2338 $(JDK_TOPDIR)/src/closed/share/native/sun/dc/util
2339
2340LIBDCPR_CFLAGS := $(foreach dir,$(LIBDCPR_SRC_DIRS),-I$(dir)) \
2341 -I$(JDK_TOPDIR)/src/share/native/sun/java2d/pipe
2342
2343$(eval $(call SetupNativeCompilation,BUILD_LIBDCPR,\
2344 SRC:=$(LIBDCPR_SRC_DIRS),\
2345 LANG:=C,\
2346 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) \
2347 $(LIBDCPR_CFLAGS), \
2348 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libdcpr/mapfile-vers, \
2349 LDFLAGS:=$(LDFLAGS_JDKLIB) $(LIBM)\
2350 $(call SET_SHARED_LIBRARY_ORIGIN),\
2351 LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\
2352 LDFLAGS_SUFFIX_posix := $(LIBDL) -lm,\
2353 BIN:=$(JDK_OUTPUTDIR)/objs/libdcpr,\
2354 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)dcpr$(SHARED_LIBRARY_SUFFIX)))
2355
2356$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)dcpr$(SHARED_LIBRARY_SUFFIX) : \
2357 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)java$(SHARED_LIBRARY_SUFFIX)
2358
2359BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)dcpr$(SHARED_LIBRARY_SUFFIX)
2360
2361endif
2362
2363##########################################################################################
2364
2365$(eval $(call SetupNativeCompilation,BUILD_LIBJ2PCSC,\
2366 SRC:=$(JDK_TOPDIR)/src/share/native/sun/security/smartcardio \
2367 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/security/smartcardio,\
2368 LANG:=C,\
2369 CFLAGS_posix:= -D__sun_jdk,\
2370 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) \
2371 -I$(JDK_TOPDIR)/src/share/native/sun/security/smartcardio \
2372 -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/security/smartcardio\
2373 -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/security/smartcardio/MUSCLE,\
2374 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libj2pcsc/mapfile-vers, \
2375 LDFLAGS:=$(LDFLAGS_JDKLIB) \
2376 $(call SET_SHARED_LIBRARY_ORIGIN),\
2377 LDFLAGS_SUFFIX_posix := $(LIBDL), \
2378 LDFLAGS_SUFFIX_windows := winscard.lib,\
2379 BIN:=$(JDK_OUTPUTDIR)/objs/libj2pcsc,\
2380 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)j2pcsc$(SHARED_LIBRARY_SUFFIX)))
2381
2382BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)j2pcsc$(SHARED_LIBRARY_SUFFIX)
2383
2384##########################################################################################
2385
2386ifneq ($(PLATFORM), windows)
2387$(eval $(call SetupNativeCompilation,BUILD_LIBJ2GSS,\
2388 SRC:=$(JDK_TOPDIR)/src/share/native/sun/security/jgss/wrapper \
2389 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/security/jgss/wrapper,\
2390 LANG:=C,\
2391 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) \
2392 -I$(JDK_TOPDIR)/src/share/native/sun/security/jgss/wrapper \
2393 -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/security/jgss/wrapper,\
2394 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libj2gss/mapfile-vers, \
2395 LDFLAGS:=$(LDFLAGS_JDKLIB) \
2396 $(call SET_SHARED_LIBRARY_ORIGIN),\
2397 LDFLAGS_SUFFIX := $(LIBDL), \
2398 BIN:=$(JDK_OUTPUTDIR)/objs/libj2gss,\
2399 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)j2gss$(SHARED_LIBRARY_SUFFIX)))
2400
2401BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)j2gss$(SHARED_LIBRARY_SUFFIX)
2402endif
2403
2404##########################################################################################
2405
2406BUILD_LIBKRB5_NAME :=
2407ifeq ($(PLATFORM), windows)
2408 BUILD_LIBKRB5_NAME := w2k_lsa_auth
2409 BUILD_LIBKRB5_FILES := NativeCreds.c WindowsDirectory.c
2410 BUILD_LIBKRB5_SRC := $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/security/krb5
2411 BUILD_LIBKRB5_LIBS := Secur32.lib netapi32.lib \
2412 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib \
2413 advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib \
2414 odbccp32.lib wsock32.lib
2415else ifeq ($(PLATFORM), macosx)
2416 BUILD_LIBKRB5_NAME := osxkrb5
2417 BUILD_LIBKRB5_FILES := nativeccache.c
2418 BUILD_LIBKRB5_LIBS := -framework Kerberos
2419endif
2420
2421ifneq ($(BUILD_LIBKRB5_NAME),)
2422$(eval $(call SetupNativeCompilation,BUILD_LIBKRB5,\
2423 SRC:=$(JDK_TOPDIR)/src/share/native/sun/security/krb5 \
2424 $(BUILD_LIBKRB5_SRC) ,\
2425 INCLUDE_FILES := $(BUILD_LIBKRB5_FILES),\
2426 LANG:=C,\
2427 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) \
2428 -I$(JDK_TOPDIR)/src/share/native/sun/security/krb5 \
2429 -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/security/krb5 ,\
2430 LDFLAGS:=$(LDFLAGS_JDKLIB) \
2431 $(call SET_SHARED_LIBRARY_ORIGIN),\
2432 LDFLAGS_SUFFIX := $(BUILD_LIBKRB5_LIBS) ,\
2433 BIN:=$(JDK_OUTPUTDIR)/objs/libkrb5,\
2434 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)$(BUILD_LIBKRB5_NAME)$(SHARED_LIBRARY_SUFFIX)))
2435
2436BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)$(BUILD_LIBKRB5_NAME)$(SHARED_LIBRARY_SUFFIX)
2437endif
2438
2439##########################################################################################
2440
2441ifeq ($(PLATFORM), windows)
2442
2443$(eval $(call SetupNativeCompilation,BUILD_LIBSUNMSCAPI,\
2444 SRC:=$(JDK_TOPDIR)/src/share/native/sun/security/mscapi \
2445 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/security/mscapi,\
2446 INCLUDE_FILES := security.cpp, \
2447 LANG:=C++,\
2448 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) \
2449 -I$(JDK_TOPDIR)/src/share/native/sun/security/mscapi \
2450 -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/security/mscapi ,\
2451 LDFLAGS:=$(LDFLAGS_JDKLIB) \
2452 $(call SET_SHARED_LIBRARY_ORIGIN),\
2453 LDFLAGS_SUFFIX := Crypt32.Lib advapi32.lib,\
2454 BIN:=$(JDK_OUTPUTDIR)/objs/libsunmscapi,\
2455 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)sunmscapi$(SHARED_LIBRARY_SUFFIX)))
2456
2457BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)sunmscapi$(SHARED_LIBRARY_SUFFIX)
2458endif
2459
2460##########################################################################################
2461
2462ifneq ($(PLATFORM)-$(ARCH_DATA_MODEL), windows-64)
2463$(eval $(call SetupNativeCompilation,BUILD_LIBJ2PKCS11,\
2464 SRC:=$(JDK_TOPDIR)/src/share/native/sun/security/pkcs11 \
2465 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/security/pkcs11 \
2466 $(JDK_TOPDIR)/src/share/native/sun/security/pkcs11/wrapper \
2467 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/security/pkcs11/wrapper,\
2468 LANG:=C,\
2469 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) \
2470 -I$(JDK_TOPDIR)/src/share/native/sun/security/pkcs11 \
2471 -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/security/pkcs11 \
2472 -I$(JDK_TOPDIR)/src/share/native/sun/security/pkcs11/wrapper \
2473 -I$(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/sun/security/pkcs11/wrapper,\
2474 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libj2pkcs11/mapfile-vers, \
2475 LDFLAGS:=$(LDFLAGS_JDKLIB) \
2476 $(call SET_SHARED_LIBRARY_ORIGIN),\
2477 LDFLAGS_SUFFIX_posix := $(LIBDL), \
2478 BIN:=$(JDK_OUTPUTDIR)/objs/libj2pkcs11,\
2479 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)j2pkcs11$(SHARED_LIBRARY_SUFFIX)))
2480
2481BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)j2pkcs11$(SHARED_LIBRARY_SUFFIX)
2482endif
2483
2484##########################################################################################
2485
2486ifndef DISABLE_INTREE_EC
2487#
2488# TODO Set DISABLE_INTREE_EC in configure if src/share/native/sun/security/ec/impl
2489# is not present
2490#
2491BUILD_LIBSUNEC_FLAGS := -DMP_API_COMPATIBLE -DNSS_ECC_MORE_THAN_SUITE_B \
2492 -I$(JDK_TOPDIR)/src/share/native/sun/security/ec \
2493 -I$(JDK_TOPDIR)/src/share/native/sun/security/ec/impl
2494
2495$(eval $(call SetupNativeCompilation,BUILD_LIBSUNEC,\
2496 SRC:=$(JDK_TOPDIR)/src/share/native/sun/security/ec \
2497 $(JDK_TOPDIR)/src/share/native/sun/security/ec/impl, \
2498 LANG := C++, \
2499 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) $(BUILD_LIBSUNEC_FLAGS),\
2500 CXXFLAGS:=$(CXXFLAGS_JDKLIB) $(CXX_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) $(BUILD_LIBSUNEC_FLAGS),\
2501 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libsunec/mapfile-vers, \
2502 LDFLAGS:=$(LDFLAGS_JDKLIB) \
2503 $(call SET_SHARED_LIBRARY_ORIGIN),\
2504 LDFLAGS_SUFFIX := $(LIBCXX),\
2505 BIN:=$(JDK_OUTPUTDIR)/objs/libsunec,\
2506 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)sunec$(SHARED_LIBRARY_SUFFIX)))
2507
2508BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)sunec$(SHARED_LIBRARY_SUFFIX)
2509endif
2510
2511##########################################################################################
2512
2513LIBJSOUND_SRC_DIRS := \
2514 $(JDK_TOPDIR)/src/share/native/com/sun/media/sound \
2515 $(JDK_TOPDIR)/src/$(LEGACY_HOST_OS_API)/native/com/sun/media/sound
2516
2517LIBJSOUND_SRC_FILES := Utilities.c Platform.c
2518
2519LIBJSOUND_LANG := C
2520LIBJSOUND_CFLAGS := $(foreach dir,$(LIBJSOUND_SRC_DIRS),-I$(dir))
2521
2522EXTRA_SOUND_JNI_LIBS :=
2523
2524LIBJSOUND_MIDIFILES := \
2525 MidiInDevice.c \
2526 MidiInDeviceProvider.c \
2527 MidiOutDevice.c \
2528 MidiOutDeviceProvider.c \
2529 PlatformMidi.c
2530
2531# files needed for ports
2532LIBJSOUND_PORTFILES := \
2533 PortMixerProvider.c \
2534 PortMixer.c
2535
2536# files needed for direct audio
2537LIBJSOUND_DAUDIOFILES := \
2538 DirectAudioDeviceProvider.c \
2539 DirectAudioDevice.c
2540
2541ifeq ($(PLATFORM), windows)
2542 EXTRA_SOUND_JNI_LIBS += jsoundds
2543 LIBJSOUND_CFLAGS += -DX_PLATFORM=X_WINDOWS \
2544 -DUSE_PLATFORM_MIDI_OUT=TRUE \
2545 -DUSE_PLATFORM_MIDI_IN=TRUE \
2546 -DUSE_PORTS=TRUE
2547 LIBJSOUND_SRC_FILES += \
2548 PLATFORM_API_WinOS_MidiIn.cpp \
2549 PLATFORM_API_WinOS_MidiOut.c \
2550 PLATFORM_API_WinOS_Util.c \
2551 PLATFORM_API_WinOS_Ports.c
2552 LIBJSOUND_SRC_FILES += $(LIBJSOUND_MIDIFILES)
2553 LIBJSOUND_SRC_FILES += $(LIBJSOUND_PORTFILES)
2554endif # PLATFORM windows
2555
2556ifeq ($(PLATFORM), linux)
2557 EXTRA_SOUND_JNI_LIBS += jsoundalsa
2558 LIBJSOUND_CFLAGS += -DX_PLATFORM=X_LINUX
2559endif # PLATFORM linux
2560
2561ifeq ($(PLATFORM), macosx)
2562 LIBJSOUND_LANG := C++
2563 LIBJSOUND_CFLAGS += -DX_PLATFORM=X_MACOSX \
2564 -DUSE_PORTS=TRUE \
2565 -DUSE_DAUDIO=TRUE \
2566 -DUSE_PLATFORM_MIDI_OUT=TRUE \
2567 -DUSE_PLATFORM_MIDI_IN=TRUE
2568 LIBJSOUND_SRC_DIRS += $(JDK_TOPDIR)/src/macosx/native/com/sun/media/sound
2569 LIBJSOUND_SRC_FILES += \
2570 PLATFORM_API_MacOSX_Utils.cpp \
2571 PLATFORM_API_MacOSX_PCM.cpp \
2572 PLATFORM_API_MacOSX_Ports.cpp \
2573 PLATFORM_API_MacOSX_MidiIn.c \
2574 PLATFORM_API_MacOSX_MidiOut.c \
2575 PLATFORM_API_MacOSX_MidiUtils.c
2576 LIBJSOUND_SRC_FILES += $(LIBJSOUND_MIDIFILES)
2577 LIBJSOUND_SRC_FILES += $(LIBJSOUND_PORTFILES)
2578 LIBJSOUND_SRC_FILES += $(LIBJSOUND_DAUDIOFILES)
2579endif # PLATFORM macosx
2580
2581ifeq ($(PLATFORM), solaris)
2582 LIBJSOUND_CFLAGS += -DX_PLATFORM=X_SOLARIS \
2583 -DUSE_PORTS=TRUE \
2584 -DUSE_DAUDIO=TRUE
2585 LIBJSOUND_SRC_FILES += \
2586 PLATFORM_API_SolarisOS_Utils.c \
2587 PLATFORM_API_SolarisOS_Ports.c \
2588 PLATFORM_API_SolarisOS_PCM.c
2589 LIBJSOUND_SRC_FILES += $(LIBJSOUND_MIDIFILES)
2590 LIBJSOUND_SRC_FILES += $(LIBJSOUND_PORTFILES)
2591 LIBJSOUND_SRC_FILES += $(LIBJSOUND_DAUDIOFILES)
2592endif # PLATFORM solaris
2593
2594
2595ifeq ($(JVM_VARIANT_ZERO), true)
2596 LIBJSOUND_CFLAGS += -DX_ARCH=X_ZERO
2597else
2598 ifeq ($(ARCH), i586)
2599 LIBJSOUND_CFLAGS += -DX_ARCH=X_I586
2600 endif # ARCH i586
2601
2602 ifeq ($(ARCH), sparc)
2603 LIBJSOUND_CFLAGS += -DX_ARCH=X_SPARC
2604 endif # ARCH sparc
2605
2606 ifeq ($(ARCH), sparcv9)
2607 LIBJSOUND_CFLAGS += -DX_ARCH=X_SPARCV9
2608 endif # ARCH sparcv9
2609
2610 ifeq ($(ARCH), amd64)
2611 LIBJSOUND_CFLAGS += -DX_ARCH=X_AMD64
2612 endif # ARCH amd64
2613
2614 ifeq ($(ARCH), arm)
2615 LIBJSOUND_CFLAGS += -DX_ARCH=X_ARM
2616 endif # ARCH arm
2617
2618 ifeq ($(ARCH), ppc)
2619 LIBJSOUND_CFLAGS += -DX_ARCH=X_PPC
2620 endif # ARCH ppc
2621endif
2622
2623LIBJSOUND_CFLAGS += -DEXTRA_SOUND_JNI_LIBS='"$(EXTRA_SOUND_JNI_LIBS)"'
2624
2625$(eval $(call SetupNativeCompilation,BUILD_LIBJSOUND,\
2626 SRC:=$(LIBJSOUND_SRC_DIRS),\
2627 INCLUDE_FILES := $(LIBJSOUND_SRC_FILES),\
2628 LANG:=$(LIBJSOUND_LANG),\
2629 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) \
2630 $(LIBJSOUND_CFLAGS), \
2631 CXXFLAGS:=$(CXXFLAGS_JDKLIB) $(CXX_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) \
2632 $(LIBJSOUND_CFLAGS), \
2633 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libjsound/mapfile-vers, \
2634 LDFLAGS:=$(LDFLAGS_JDKLIB)\
2635 $(call SET_SHARED_LIBRARY_ORIGIN),\
2636 LDFLAGS_windows:=java.lib advapi32.lib winmm.lib,\
2637 LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\
2638 LDFLAGS_SUFFIX_solaris:=-lc ,\
2639 LDFLAGS_SUFFIX_macosx := -framework CoreAudio -framework CoreFoundation \
2640 -framework CoreServices -framework AudioUnit $(LIBCXX) \
2641 -framework CoreMIDI -framework AudioToolbox ,\
2642 BIN:=$(JDK_OUTPUTDIR)/objs/libjsound,\
2643 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)jsound$(SHARED_LIBRARY_SUFFIX)))
2644
2645$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)jsound$(SHARED_LIBRARY_SUFFIX) : \
2646 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)java$(SHARED_LIBRARY_SUFFIX)
2647
2648BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)jsound$(SHARED_LIBRARY_SUFFIX)
2649
2650##########################################################################################
2651
2652ifneq ($(filter jsoundalsa, $(EXTRA_SOUND_JNI_LIBS)),)
2653
2654$(eval $(call SetupNativeCompilation,BUILD_LIBJSOUNDALSA,\
2655 SRC:=$(LIBJSOUND_SRC_DIRS),\
2656 INCLUDE_FILES := Utilities.c $(LIBJSOUND_MIDIFILES) $(LIBJSOUND_PORTFILES) \
2657 $(LIBJSOUND_DAUDIOFILES) \
2658 PLATFORM_API_LinuxOS_ALSA_CommonUtils.c \
2659 PLATFORM_API_LinuxOS_ALSA_PCM.c \
2660 PLATFORM_API_LinuxOS_ALSA_PCMUtils.c \
2661 PLATFORM_API_LinuxOS_ALSA_MidiIn.c \
2662 PLATFORM_API_LinuxOS_ALSA_MidiOut.c \
2663 PLATFORM_API_LinuxOS_ALSA_MidiUtils.c \
2664 PLATFORM_API_LinuxOS_ALSA_Ports.c,\
2665 LANG := C,\
2666 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) \
2667 $(LIBJSOUND_CFLAGS) \
2668 -DUSE_DAUDIO=TRUE \
2669 -DUSE_PORTS=TRUE \
2670 -DUSE_PLATFORM_MIDI_OUT=TRUE \
2671 -DUSE_PLATFORM_MIDI_IN=TRUE, \
2672 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libjsoundalsa/mapfile-vers, \
2673 LDFLAGS:=$(LDFLAGS_JDKLIB)\
2674 $(call SET_SHARED_LIBRARY_ORIGIN),\
2675 LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX) -lasound,\
2676 BIN:=$(JDK_OUTPUTDIR)/objs/libjsoundalsa,\
2677 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)jsoundalsa$(SHARED_LIBRARY_SUFFIX)))
2678
2679$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)jsoundalsa$(SHARED_LIBRARY_SUFFIX) : \
2680 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)java$(SHARED_LIBRARY_SUFFIX)
2681
2682BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)jsoundalsa$(SHARED_LIBRARY_SUFFIX)
2683
2684endif
2685
2686##########################################################################################
2687
2688ifneq ($(filter jsoundds, $(EXTRA_SOUND_JNI_LIBS)),)
2689
2690$(eval $(call SetupNativeCompilation,BUILD_LIBJSOUNDDS,\
2691 SRC:=$(LIBJSOUND_SRC_DIRS),\
2692 INCLUDE_FILES := Utilities.c $(LIBJSOUND_DAUDIOFILES) \
2693 PLATFORM_API_WinOS_DirectSound.cpp, \
2694 LANG := C++,\
2695 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) \
2696 $(LIBJSOUND_CFLAGS) \
2697 -DUSE_DAUDIO=TRUE, \
2698 LDFLAGS:=$(LDFLAGS_JDKLIB)\
2699 $(call SET_SHARED_LIBRARY_ORIGIN),\
2700 LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX) dsound.lib winmm.lib user32.lib ole32.lib,\
2701 BIN:=$(JDK_OUTPUTDIR)/objs/libjsoundds,\
2702 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)jsoundds$(SHARED_LIBRARY_SUFFIX)))
2703
2704$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)jsoundds$(SHARED_LIBRARY_SUFFIX) : \
2705 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)java$(SHARED_LIBRARY_SUFFIX)
2706
2707BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)jsoundds$(SHARED_LIBRARY_SUFFIX)
2708
2709endif
2710
2711##########################################################################################
2712
2713ifeq ($(PLATFORM), solaris)
2714ifndef OPENJDK
2715
2716$(eval $(call SetupNativeCompilation,BUILD_LIBJ2UCRYPTO,\
2717 SRC:=$(JDK_TOPDIR)/src/closed/solaris/native/com/oracle/security/ucrypto,\
2718 LANG := C,\
2719 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) \
2720 -I$(JDK_TOPDIR)/src/closed/solaris/native/com/oracle/security/ucrypto ,\
2721 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libj2ucrypto/mapfile-vers, \
2722 LDFLAGS:=$(LDFLAGS_JDKLIB)\
2723 $(call SET_SHARED_LIBRARY_ORIGIN), \
2724 LDFLAGS_SUFFIX:=$(LIBDL),\
2725 BIN:=$(JDK_OUTPUTDIR)/objs/libj2ucrypto,\
2726 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)j2ucrypto$(SHARED_LIBRARY_SUFFIX)))
2727
2728$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)j2ucrypto$(SHARED_LIBRARY_SUFFIX) : \
2729 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)java$(SHARED_LIBRARY_SUFFIX)
2730
2731BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)j2ucrypto$(SHARED_LIBRARY_SUFFIX)
2732
2733endif
2734endif
2735
2736##########################################################################################
2737
2738ifeq ($(PLATFORM), macosx)
2739
2740LIBAPPLESCRIPTENGINE_FILES := \
2741 AppleScriptEngine.m \
2742 AppleScriptExecutionContext.m \
2743 AS_NS_ConversionUtils.m \
2744 NS_Java_ConversionUtils.m
2745
2746$(eval $(call SetupNativeCompilation,BUILD_LIBAPPLESCRIPTENGINE,\
2747 SRC:=$(JDK_TOPDIR)/src/macosx/native/apple/applescript,\
2748 LANG := C,\
2749 INCLUDE_FILES:=$(LIBAPPLESCRIPTENGINE_FILES),\
2750 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) \
2751 -I$(JDK_TOPDIR)/src/macosx/native/apple/applescript \
2752 -F/System/Library/Frameworks/JavaVM.framework/Frameworks \
2753 -F/System/Library/Frameworks/ApplicationServices.framework/Frameworks, \
2754 LDFLAGS:=$(LDFLAGS_JDKLIB)\
2755 $(call SET_SHARED_LIBRARY_ORIGIN), \
2756 LDFLAGS_SUFFIX:= \
2757 -framework Cocoa \
2758 -framework Carbon \
2759 -F/System/Library/Frameworks/JavaVM.framework/Frameworks \
2760 -framework JavaNativeFoundation, \
2761 BIN:=$(JDK_OUTPUTDIR)/objs/libAppleScriptEngine,\
2762 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)AppleScriptEngine$(SHARED_LIBRARY_SUFFIX)))
2763
2764BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)AppleScriptEngine$(SHARED_LIBRARY_SUFFIX)
2765
2766endif
2767
2768##########################################################################################
2769
2770ifeq ($(PLATFORM), macosx)
2771
2772LIBOSXAPP_FILES := \
2773 NSApplicationAWT.m \
2774 QueuingApplicationDelegate.m \
2775 PropertiesUtilities.m \
2776 ThreadUtilities.m
2777
2778$(eval $(call SetupNativeCompilation,BUILD_LIBOSXAPP,\
2779 SRC:=$(JDK_TOPDIR)/src/macosx/native/sun/osxapp,\
2780 LANG := C,\
2781 INCLUDE_FILES:=$(LIBOSXAPP_FILES),\
2782 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) \
2783 -I$(JDK_TOPDIR)/src/macosx/native/sun/osxapp \
2784 -F/System/Library/Frameworks/JavaVM.framework/Frameworks \
2785 -F/System/Library/Frameworks/ApplicationServices.framework/Frameworks,\
2786 LDFLAGS:=$(LDFLAGS_JDKLIB)\
2787 $(call SET_SHARED_LIBRARY_ORIGIN), \
2788 LDFLAGS_SUFFIX_macosx := \
2789 -framework Accelerate \
2790 -framework ApplicationServices \
2791 -framework AudioToolbox \
2792 -framework Carbon \
2793 -framework Cocoa \
2794 -framework Security \
2795 -framework ExceptionHandling \
2796 -F/System/Library/Frameworks/JavaVM.framework/Frameworks \
2797 -framework JavaNativeFoundation \
2798 -framework JavaRuntimeSupport \
2799 -framework OpenGL \
2800 -framework IOSurface \
2801 -framework QuartzCore, \
2802 BIN:=$(JDK_OUTPUTDIR)/objs/libosxapp,\
2803 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)osxapp$(SHARED_LIBRARY_SUFFIX)))
2804
2805BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)osxapp$(SHARED_LIBRARY_SUFFIX)
2806
2807endif
2808
2809##########################################################################################
2810
2811ifeq ($(PLATFORM), macosx)
2812
2813LIBOSX_FILES := \
2814 Dispatch.m \
2815 CFileManager.m \
2816 KeystoreImpl.m \
2817 JavaAppLauncher.m \
2818 MacOSXPreferencesFile.m \
2819 SCDynamicStoreConfig.m
2820
2821LIBOSX_DIRS := \
2822 $(JDK_TOPDIR)/src/macosx/native/com/apple/concurrent \
2823 $(JDK_TOPDIR)/src/macosx/native/java/util \
2824 $(JDK_TOPDIR)/src/macosx/native/com/apple/eio \
2825 $(JDK_TOPDIR)/src/macosx/native/apple/security \
2826 $(JDK_TOPDIR)/src/macosx/native/apple/launcher
2827
2828$(eval $(call SetupNativeCompilation,BUILD_LIBOSX,\
2829 SRC:=$(LIBOSX_DIRS),\
2830 LANG := C,\
2831 INCLUDE_FILES:=$(LIBOSX_FILES),\
2832 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) \
2833 $(foreach dir,$(LIBOSX_DIRS),-I$(dir)) \
2834 -I$(JDK_TOPDIR)/src/macosx/native/sun/osxapp \
2835 -F/System/Library/Frameworks/JavaVM.framework/Frameworks \
2836 -F/System/Library/Frameworks/ApplicationServices.framework/Frameworks,\
2837 LDFLAGS:=$(LDFLAGS_JDKLIB)\
2838 $(call SET_SHARED_LIBRARY_ORIGIN), \
2839 LDFLAGS_SUFFIX_macosx := \
2840 -losxapp \
2841 -framework Cocoa \
2842 -framework ApplicationServices \
2843 -F/System/Library/Frameworks/JavaVM.framework/Frameworks \
2844 -framework JavaNativeFoundation \
2845 -framework JavaRuntimeSupport \
2846 -framework Security \
2847 -framework SystemConfiguration \
2848 $(LDFLAGS_JDKLIB_SUFFIX), \
2849 BIN:=$(JDK_OUTPUTDIR)/objs/libosx,\
2850 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)osx$(SHARED_LIBRARY_SUFFIX)))
2851
2852BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)osx$(SHARED_LIBRARY_SUFFIX)
2853
2854$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)osx$(SHARED_LIBRARY_SUFFIX) : \
2855 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)osxapp$(SHARED_LIBRARY_SUFFIX)
2856
2857$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)osx$(SHARED_LIBRARY_SUFFIX) : \
2858 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)java$(SHARED_LIBRARY_SUFFIX)
2859
2860endif
2861
2862##########################################################################################
2863
2864ifeq ($(PLATFORM), macosx)
2865
2866LIBAWT_LWAWT_FILES := \
2867 awt.m \
2868 ApplicationDelegate.m \
2869 CFRetainedResource.m \
2870 CGLGraphicsConfig.m \
2871 CGLSurfaceData.m \
2872 CGLLayer.m \
2873 CGraphicsConfig.m \
2874 CGraphicsDevice.m \
2875 CGraphicsEnv.m \
2876 CCharToGlyphMapper.m \
2877 CSystemColors.m \
2878 AWTFont.m \
2879 CGGlyphOutlines.m \
2880 CGGlyphImages.m \
2881 CoreTextSupport.m \
2882 AWTStrike.m \
2883 InitIDs.m \
2884 AWTEvent.m \
2885 AWTView.m \
2886 AWTWindow.m \
2887 AWTSurfaceLayers.m \
2888 CCursorManager.m \
2889 CClipboard.m \
2890 CDataTransferer.m \
2891 CDragSource.m \
2892 CDragSourceContextPeer.m \
2893 CDropTarget.m \
2894 CDropTargetContextPeer.m \
2895 CInputMethod.m \
2896 CDesktopPeer.m \
2897 OSVersion.m \
2898 DnDUtilities.m \
2899 CFileDialog.m \
2900 CImage.m \
2901 CMenu.m \
2902 CMenuBar.m \
2903 CMenuComponent.m \
2904 CMenuItem.m \
2905 CPopupMenu.m \
2906 CRobot.m \
2907 CTrayIcon.m \
2908 CWrapper.m \
2909 JavaAccessibilityAction.m \
2910 JavaAccessibilityUtilities.m \
2911 JavaComponentAccessibility.m \
2912 JavaTextAccessibility.m \
2913 LWCToolkit.m \
2914 GeomUtilities.m \
2915 CPrinterJob.m \
2916 PrintModel.m \
2917 PrinterSurfaceData.m \
2918 PrinterView.m \
2919 QuartzSurfaceData.m \
2920 QuartzRenderer.m \
2921 CTextPipe.m \
2922 ImageSurfaceData.m \
2923 awt_DrawingSurface.m \
2924 \
2925 OGLBlitLoops.c \
2926 OGLBufImgOps.c \
2927 OGLContext.c \
2928 OGLFuncs.c \
2929 OGLMaskBlit.c \
2930 OGLMaskFill.c \
2931 OGLPaints.c \
2932 OGLRenderQueue.c \
2933 OGLRenderer.c \
2934 OGLSurfaceData.c \
2935 OGLTextRenderer.c \
2936 OGLVertexCache.c \
2937 AccelGlyphCache.c \
2938 CUPSfuncs.c
2939
2940
2941LIBAWT_LWAWT_DIRS := \
2942 $(JDK_TOPDIR)/src/macosx/native/sun/awt \
2943 $(JDK_TOPDIR)/src/macosx/native/sun/font \
2944 $(JDK_TOPDIR)/src/macosx/native/sun/java2d/opengl \
2945 $(JDK_TOPDIR)/src/solaris/native/sun/awt \
2946 $(JDK_TOPDIR)/src/share/native/sun/font \
2947 $(JDK_TOPDIR)/src/share/native/sun/java2d/opengl \
2948
2949$(eval $(call SetupNativeCompilation,BUILD_LIBAWT_LWAWT,\
2950 SRC:=$(LIBAWT_LWAWT_DIRS),\
2951 LANG := C,\
2952 INCLUDE_FILES:=$(LIBAWT_LWAWT_FILES),\
2953 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) \
2954 $(foreach dir,$(LIBAWT_LWAWT_DIRS),-I$(dir)) \
2955 -I$(JDK_TOPDIR)/src/macosx/native/sun/osxapp \
2956 -I$(JDK_TOPDIR)/src/share/native/sun/java2d \
2957 -I$(JDK_TOPDIR)/src/solaris/native/sun/java2d \
2958 -I$(JDK_TOPDIR)/src/share/native/sun/awt/image \
2959 -I$(JDK_TOPDIR)/src/share/native/sun/awt/image/cvutils \
2960 -I$(JDK_TOPDIR)/src/share/native/sun/java2d/loops \
2961 -I$(JDK_TOPDIR)/src/share/native/sun/java2d/pipe \
2962 -I$(JDK_TOPDIR)/src/share/native/sun/awt/debug \
2963 -F/System/Library/Frameworks/JavaVM.framework/Frameworks \
2964 -F/System/Library/Frameworks/ApplicationServices.framework/Frameworks,\
2965 LDFLAGS:=$(LDFLAGS_JDKLIB)\
2966 $(call SET_SHARED_LIBRARY_ORIGIN), \
2967 LDFLAGS_SUFFIX_macosx := \
2968 -lawt -lmlib_image -losxapp $(LDFLAGS_JDKLIB_SUFFIX) $(LIBM) \
2969 -framework Accelerate \
2970 -framework ApplicationServices \
2971 -framework AudioToolbox \
2972 -framework Carbon \
2973 -framework Cocoa \
2974 -framework Security \
2975 -framework ExceptionHandling \
2976 -F/System/Library/Frameworks/JavaVM.framework/Frameworks \
2977 -framework JavaNativeFoundation \
2978 -framework JavaRuntimeSupport \
2979 -framework OpenGL \
2980 -framework QuartzCore ,\
2981 BIN:=$(JDK_OUTPUTDIR)/objs/libawt_lwawt,\
2982 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)awt_lwawt$(SHARED_LIBRARY_SUFFIX)))
2983
2984BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)awt_lwawt$(SHARED_LIBRARY_SUFFIX)
2985
2986$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)awt_lwawt$(SHARED_LIBRARY_SUFFIX) : \
2987 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)awt$(SHARED_LIBRARY_SUFFIX)
2988
2989$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)awt_lwawt$(SHARED_LIBRARY_SUFFIX) : \
2990 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)mlib_image$(SHARED_LIBRARY_SUFFIX)
2991
2992$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)awt_lwawt$(SHARED_LIBRARY_SUFFIX) : \
2993 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)osxapp$(SHARED_LIBRARY_SUFFIX)
2994
2995$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)awt_lwawt$(SHARED_LIBRARY_SUFFIX) : \
2996 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)java$(SHARED_LIBRARY_SUFFIX)
2997
2998endif
2999
3000##########################################################################################
3001
3002ifeq ($(PLATFORM), macosx)
3003
3004LIBOSXUI_FILES := \
3005 AquaFileView.m \
3006 AquaLookAndFeel.m \
3007 AquaNativeResources.m \
3008 JRSUIConstantSync.m \
3009 JRSUIController.m \
3010 JRSUIFocus.m \
3011 ScreenPopupFactory.m \
3012 ScreenMenu.m
3013
3014$(eval $(call SetupNativeCompilation,BUILD_LIBOSXUI,\
3015 SRC:=$(JDK_TOPDIR)/src/macosx/native/com/apple/laf,\
3016 LANG := C,\
3017 INCLUDE_FILES:=$(LIBOSXUI_FILES),\
3018 CFLAGS:=$(CFLAGS_JDKLIB) $(C_O_FLAG_NORM) $(SHARED_LIBRARY_FLAGS) \
3019 -I$(JDK_TOPDIR)/src/macosx/native/com/apple/laf \
3020 -I$(JDK_TOPDIR)/src/macosx/native/sun/osxapp \
3021 -I$(JDK_TOPDIR)/src/macosx/native/sun/awt \
3022 -F/System/Library/Frameworks/JavaVM.framework/Frameworks, \
3023 LDFLAGS:=$(LDFLAGS_JDKLIB)\
3024 $(call SET_SHARED_LIBRARY_ORIGIN), \
3025 LDFLAGS_SUFFIX_macosx := \
3026 -lawt -losxapp -lawt_lwawt \
3027 -framework Cocoa \
3028 -framework Carbon \
3029 -framework ApplicationServices \
3030 -F/System/Library/Frameworks/JavaVM.framework/Frameworks \
3031 -framework JavaNativeFoundation \
3032 -framework JavaRuntimeSupport, \
3033 BIN:=$(JDK_OUTPUTDIR)/objs/libosxui,\
3034 LIB:=$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)osxui$(SHARED_LIBRARY_SUFFIX)))
3035
3036BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)osxui$(SHARED_LIBRARY_SUFFIX)
3037
3038$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)osxui$(SHARED_LIBRARY_SUFFIX) : \
3039 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)awt$(SHARED_LIBRARY_SUFFIX)
3040
3041$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)osxui$(SHARED_LIBRARY_SUFFIX) : \
3042 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)osxapp$(SHARED_LIBRARY_SUFFIX)
3043
3044$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)osxui$(SHARED_LIBRARY_SUFFIX) : \
3045 $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)awt_lwawt$(SHARED_LIBRARY_SUFFIX)
3046
3047#$(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)osxui$(SHARED_LIBRARY_SUFFIX) : \
3048# $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)java$(SHARED_LIBRARY_SUFFIX)
3049
3050endif
3051
3052##########################################################################################
3053
ohair92de5662012-04-10 08:22:03 -07003054all: $(COPY_FILES) $(BUILD_LIBRARIES)
3055
3056.PHONY: all