blob: d95fc7e36b19c5e3bf3204e1e19896c15e89df57 [file] [log] [blame]
ihse554e46f2013-11-14 11:19:32 +01001#
2# Copyright (c) 2011, 2013, 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
26LIBATTACH_EXCLUDE_FILES :=
27ifneq ($(OPENJDK_TARGET_OS), solaris)
28 LIBATTACH_EXCLUDE_FILES += SolarisVirtualMachine.c
29endif
30ifneq ($(OPENJDK_TARGET_OS), linux)
31 LIBATTACH_EXCLUDE_FILES += LinuxVirtualMachine.c
32endif
33ifneq ($(OPENJDK_TARGET_OS), macosx)
34 LIBATTACH_EXCLUDE_FILES += BsdVirtualMachine.c
35endif
kvn7130df72013-12-05 15:10:36 -080036ifneq ($(OPENJDK_TARGET_OS),aix)
37 LIBATTACH_EXCLUDE_FILES += AixVirtualMachine.c
38endif
39
40LIBATTACH_SRC_FILES := $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/tools/attach
41ifeq ($(OPENJDK_TARGET_OS),aix)
42 LIBATTACH_SRC_FILES += $(JDK_TOPDIR)/src/aix/native/sun/tools/attach
43endif
ihse554e46f2013-11-14 11:19:32 +010044
45$(eval $(call SetupNativeCompilation,BUILD_LIBATTACH, \
46 LIBRARY := attach, \
47 OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
kvn7130df72013-12-05 15:10:36 -080048 SRC := $(LIBATTACH_SRC_FILES), \
ihse554e46f2013-11-14 11:19:32 +010049 EXCLUDE_FILES := $(LIBATTACH_EXCLUDE_FILES), \
50 LANG := C, \
51 OPTIMIZATION := LOW, \
52 CFLAGS := $(CFLAGS_JDKLIB), \
53 CFLAGS_windows := /Gy, \
54 MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libattach/mapfile-$(OPENJDK_TARGET_OS), \
55 VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \
56 RC_FLAGS := $(RC_FLAGS) \
57 -D "JDK_FNAME=attach.dll" \
58 -D "JDK_INTERNAL_NAME=attach" \
59 -D "JDK_FTYPE=0x2L", \
60 LDFLAGS := $(LDFLAGS_JDKLIB) \
61 $(call SET_SHARED_LIBRARY_ORIGIN), \
62 LDFLAGS_solaris := -ldoor, \
63 LDFLAGS_windows := /ORDER:@$(JDK_TOPDIR)/make/mapfiles/libattach/reorder-windows-$(OPENJDK_TARGET_CPU), \
64 LDFLAGS_SUFFIX := $(LDFLAGS_JDKLIB_SUFFIX), \
65 LDFLAGS_SUFFIX_windows := $(WIN_JAVA_LIB) advapi32.lib psapi.lib, \
66 OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libattach, \
67 DEBUG_SYMBOLS := true))
68
69$(BUILD_LIBATTACH): $(BUILD_LIBJAVA)
70
71BUILD_LIBRARIES += $(BUILD_LIBATTACH)
72
73##########################################################################################
74
75$(eval $(call SetupNativeCompilation,BUILD_LIBDT_SOCKET, \
76 LIBRARY := dt_socket, \
77 OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
78 SRC := $(JDK_TOPDIR)/src/share/transport/socket \
79 $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/transport/socket, \
80 LANG := C, \
81 OPTIMIZATION := LOW, \
82 CFLAGS := $(CFLAGS_JDKLIB) -DUSE_MMAP \
83 -I$(INCLUDEDIR) -I$(JDK_OUTPUTDIR)/include/$(OPENJDK_TARGET_OS) \
84 -I$(JDK_TOPDIR)/src/share/transport/socket \
85 -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/transport/socket \
86 -I$(JDK_TOPDIR)/src/share/back/export \
87 -I$(JDK_TOPDIR)/src/share/back, \
88 MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libdt_socket/mapfile-vers, \
89 LDFLAGS := $(LDFLAGS_JDKLIB) \
90 $(call SET_SHARED_LIBRARY_ORIGIN), \
91 LDFLAGS_SUFFIX_linux := -lpthread, \
92 LDFLAGS_SUFFIX_solaris := -lnsl -lsocket -lc, \
93 LDFLAGS_SUFFIX_windows := $(LDFLAGS_JDKLIB_SUFFIX) -export:jdwpTransport_OnLoad ws2_32.lib, \
94 VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \
95 RC_FLAGS := $(RC_FLAGS) \
96 -D "JDK_FNAME=dt_socket.dll" \
97 -D "JDK_INTERNAL_NAME=dt_socket" \
98 -D "JDK_FTYPE=0x2L", \
99 OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libdt_socket, \
100 DEBUG_SYMBOLS := true))
101
102$(BUILD_LIBDT_SOCKET): $(BUILD_LIBJAVA)
103
104BUILD_LIBRARIES += $(BUILD_LIBDT_SOCKET)
105
106##########################################################################################
107
108ifeq ($(OPENJDK_TARGET_OS), windows)
109
110 $(eval $(call SetupNativeCompilation,BUILD_LIBDT_SHMEM, \
111 LIBRARY := dt_shmem, \
112 OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
113 SRC := $(JDK_TOPDIR)/src/share/native/com/sun/tools/jdi \
114 $(JDK_TOPDIR)/src/share/transport/shmem \
115 $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/transport/shmem, \
116 LANG := C, \
117 OPTIMIZATION := LOW, \
118 CFLAGS := $(CFLAGS_JDKLIB) -DUSE_MMAP \
119 -I$(INCLUDEDIR) -I$(JDK_OUTPUTDIR)/include/$(OPENJDK_TARGET_OS) \
120 -I$(JDK_TOPDIR)/src/share/transport/shmem \
121 -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/transport/shmem \
122 -I$(JDK_TOPDIR)/src/share/back/export, \
123 LDFLAGS := $(LDFLAGS_JDKLIB), \
124 LDFLAGS_windows := -export:jdwpTransport_OnLoad, \
125 LDFLAGS_SUFFIX := $(LDFLAGS_JDKLIB_SUFFIX), \
126 VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \
127 RC_FLAGS := $(RC_FLAGS) \
128 -D "JDK_FNAME=dt_shmem.dll" \
129 -D "JDK_INTERNAL_NAME=dt_shmem" \
130 -D "JDK_FTYPE=0x2L", \
131 OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libdt_shmem, \
132 DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES)))
133
134 BUILD_LIBRARIES += $(BUILD_LIBDT_SHMEM)
135
136endif # OPENJDK_TARGET_OS
137
138##########################################################################################
139
140# JDWP_LOGGING causes log messages to be compiled into the library.
141$(eval $(call SetupNativeCompilation,BUILD_LIBJDWP, \
142 LIBRARY := jdwp, \
143 OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
144 SRC := $(JDK_TOPDIR)/src/share/back $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/back, \
145 LANG := C, \
146 OPTIMIZATION := LOW, \
147 CFLAGS := $(CFLAGS_JDKLIB) -DJDWP_LOGGING \
148 -I$(JDK_TOPDIR)/src/share/transport/export \
149 -I$(JDK_TOPDIR)/src/share/back/export \
150 -I$(JDK_TOPDIR)/src/share/npt \
151 -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/npt \
152 -I$(JDK_TOPDIR)/src/share/back \
153 -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/back \
154 -I$(JDK_OUTPUTDIR)/gensrc_jdwp_headers, \
155 MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libjdwp/mapfile-vers, \
156 LDFLAGS := $(LDFLAGS_JDKLIB) \
157 $(call SET_SHARED_LIBRARY_ORIGIN), \
158 LDFLAGS_SUFFIX_linux := $(LIBDL), \
159 LDFLAGS_SUFFIX_solaris := $(LIBDL) -lc, \
160 LDFLAGS_SUFFIX_windows := $(LDFLAGS_JDKLIB_SUFFIX), \
161 VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \
162 RC_FLAGS := $(RC_FLAGS) \
163 -D "JDK_FNAME=jdwp.dll" \
164 -D "JDK_INTERNAL_NAME=jdwp" \
165 -D "JDK_FTYPE=0x2L", \
166 OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libjdwp, \
167 DEBUG_SYMBOLS := true))
168
169$(BUILD_LIBJDWP): $(BUILD_LIBJAVA)
170
171BUILD_LIBRARIES += $(BUILD_LIBJDWP)
172
173##########################################################################################
174
175$(eval $(call SetupNativeCompilation,BUILD_LIBJSDT, \
176 LIBRARY := jsdt, \
177 OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
178 SRC := $(JDK_TOPDIR)/src/share/native/sun/tracing/dtrace \
179 $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/tracing/dtrace, \
180 LANG := C, \
181 OPTIMIZATION := LOW, \
182 CFLAGS := $(CFLAGS_JDKLIB) \
183 -I$(JDK_TOPDIR)/src/share/native/sun/tracing/dtrace, \
184 MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libjsdt/mapfile-vers, \
185 LDFLAGS := $(LDFLAGS_JDKLIB) \
186 $(call SET_SHARED_LIBRARY_ORIGIN), \
187 LDFLAGS_SUFFIX_linux := $(LIBDL), \
188 LDFLAGS_SUFFIX_windows := $(LDFLAGS_JDKLIB_SUFFIX) $(LIBDL), \
189 LDFLAGS_SUFFIX_macosx := $(LIBDL), \
190 LDFLAGS_SUFFIX_solaris := -lc, \
191 VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \
192 RC_FLAGS := $(RC_FLAGS) \
193 -D "JDK_FNAME=jsdt.dll" \
194 -D "JDK_INTERNAL_NAME=jsdt" \
195 -D "JDK_FTYPE=0x2L", \
196 OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libjsdt, \
197 DEBUG_SYMBOLS := true))
198
199$(BUILD_LIBJSDT): $(BUILD_LIBJAVA)
200
201BUILD_LIBRARIES += $(BUILD_LIBJSDT)
202
203##########################################################################################
204
205LIBINSTRUMENT_SRC := $(JDK_TOPDIR)/src/share/instrument \
206 $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/java/io \
207 $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/instrument
208
209LIBINSTRUMENT_FILES := \
210 EncodingSupport.c \
211 EncodingSupport_md.c \
212 FileSystemSupport_md.c \
213 InstrumentationImplNativeMethods.c \
214 InvocationAdapter.c \
215 JarFacade.c \
216 JPLISAgent.c \
217 JPLISAssert.c \
218 JavaExceptions.c \
219 PathCharsValidator.c \
220 Reentrancy.c \
221 Utilities.c \
222 canonicalize_md.c
223
224LIBINSTRUMENT_DIR := $(JDK_OUTPUTDIR)/objs/libinstrument
225LIBINSTRUMENT_CFLAGS := $(CFLAGS_JDKLIB) \
226 -I$(JDK_TOPDIR)/src/share/instrument \
227 -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/instrument \
228 -I$(JDK_TOPDIR)/src/share/bin
229
230LIBINSTRUMENT_LDFLAGS :=
231LIBINSTRUMENT_LDFLAGS_SUFFIX :=
232
233ifeq ($(OPENJDK_TARGET_OS), windows)
234 LIBINSTRUMENT_LDFLAGS += $(JDK_OUTPUTDIR)/objs/jli_static.lib $(WIN_JAVA_LIB) \
235 -export:Agent_OnAttach advapi32.lib
236 # Statically link the C runtime so that there are not dependencies on modules
237 # not on the search patch when invoked from the Windows system directory
238 # (or elsewhere).
239 LIBINSTRUMENT_CFLAGS := $(filter-out -MD, $(LIBINSTRUMENT_CFLAGS))
240 # equivalent of strcasecmp is stricmp on Windows
241 LIBINSTRUMENT_CFLAGS += -Dstrcasecmp=stricmp
242endif
243
244$(eval $(call SetupNativeCompilation,BUILD_LIBINSTRUMENT, \
245 LIBRARY := instrument, \
246 OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
247 SRC := $(LIBINSTRUMENT_SRC), \
248 INCLUDE_FILES := $(LIBINSTRUMENT_FILES), \
249 LANG := C, \
250 OPTIMIZATION := LOW, \
251 CFLAGS := $(LIBINSTRUMENT_CFLAGS), \
252 CFLAGS_debug := -DJPLIS_LOGGING, \
253 CFLAGS_release := -DNO_JPLIS_LOGGING, \
254 MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libinstrument/mapfile-vers, \
255 LDFLAGS := $(LDFLAGS_JDKLIB) \
256 $(call SET_SHARED_LIBRARY_ORIGIN) \
257 $(LIBINSTRUMENT_LDFLAGS), \
258 LDFLAGS_linux := $(call SET_SHARED_LIBRARY_ORIGIN,/jli), \
259 LDFLAGS_solaris := $(call SET_SHARED_LIBRARY_ORIGIN,/jli), \
260 LDFLAGS_macosx := -Xlinker -all_load $(JDK_OUTPUTDIR)/objs/libjli_static.a \
261 -framework Cocoa -framework Security -framework ApplicationServices, \
262 LDFLAGS_SUFFIX := $(LIBINSTRUMENT_LDFLAGS_SUFFIX), \
263 LDFLAGS_SUFFIX_macosx := -liconv $(LIBZ), \
264 LDFLAGS_SUFFIX_solaris := $(LIBZ) -L $(INSTALL_LIBRARIES_HERE)/jli -ljli $(LIBDL) -lc, \
265 LDFLAGS_SUFFIX_linux := $(LIBZ) -L $(INSTALL_LIBRARIES_HERE)/jli -ljli $(LIBDL), \
kvn7130df72013-12-05 15:10:36 -0800266 LDFLAGS_SUFFIX_aix := $(LIBZ) -L$(JDK_OUTPUTDIR)/objs -ljli_static $(LIBDL),\
ihse554e46f2013-11-14 11:19:32 +0100267 VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \
268 RC_FLAGS := $(RC_FLAGS) \
269 -D "JDK_FNAME=instrument.dll" \
270 -D "JDK_INTERNAL_NAME=instrument" \
271 -D "JDK_FTYPE=0x2L", \
272 OBJECT_DIR := $(LIBINSTRUMENT_DIR), \
273 DEBUG_SYMBOLS := true))
274
kvn7130df72013-12-05 15:10:36 -0800275ifneq (, $(findstring $(OPENJDK_TARGET_OS), macosx windows aix))
ihse554e46f2013-11-14 11:19:32 +0100276 $(BUILD_LIBINSTRUMENT): $(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)jli_static$(STATIC_LIBRARY_SUFFIX)
277else
278 $(BUILD_LIBINSTRUMENT): $(INSTALL_LIBRARIES_HERE)/jli/$(LIBRARY_PREFIX)jli$(SHARED_LIBRARY_SUFFIX)
279endif
280$(BUILD_LIBINSTRUMENT): $(BUILD_LIBJAVA)
281
282BUILD_LIBRARIES += $(BUILD_LIBINSTRUMENT)
283
284##########################################################################################
285
286BUILD_LIBMANAGEMENT_SRC := $(JDK_TOPDIR)/src/share/native/sun/management \
287 $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/management
288
289BUILD_LIBMANAGEMENT_EXCLUDES :=
290
291BUILD_LIBMANAGEMENT_CFLAGS := -I$(JDK_TOPDIR)/src/share/native/sun/management
292
293ifneq ($(OPENJDK_TARGET_OS), solaris)
294 BUILD_LIBMANAGEMENT_EXCLUDES += SolarisOperatingSystem.c
295endif
296
297ifneq ($(OPENJDK_TARGET_OS), linux)
298 BUILD_LIBMANAGEMENT_EXCLUDES += LinuxOperatingSystem.c
299endif
300
301ifneq ($(OPENJDK_TARGET_OS), macosx)
302 BUILD_LIBMANAGEMENT_EXCLUDES += MacosxOperatingSystem.c
303endif
304
305LIBMANAGEMENT_OPTIMIZATION := HIGH
306ifneq ($(findstring $(OPENJDK_TARGET_OS), solaris linux), )
307 ifeq ($(ENABLE_DEBUG_SYMBOLS), true)
308 LIBMANAGEMENT_OPTIMIZATION := LOW
309 endif
310endif
311
312$(eval $(call SetupNativeCompilation,BUILD_LIBMANAGEMENT, \
313 LIBRARY := management, \
314 OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
315 SRC := $(BUILD_LIBMANAGEMENT_SRC), \
316 EXCLUDE_FILES := $(BUILD_LIBMANAGEMENT_EXCLUDES), \
317 LANG := C, \
318 OPTIMIZATION := $(LIBMANAGEMENT_OPTIMIZATION), \
319 CFLAGS := $(CFLAGS_JDKLIB) $(BUILD_LIBMANAGEMENT_CFLAGS), \
320 MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libmanagement/mapfile-vers, \
321 LDFLAGS := $(LDFLAGS_JDKLIB) \
322 $(call SET_SHARED_LIBRARY_ORIGIN), \
323 LDFLAGS_solaris := -lkstat, \
324 LDFLAGS_SUFFIX := $(LDFLAGS_JDKLIB_SUFFIX), \
325 LDFLAGS_SUFFIX_windows := jvm.lib psapi.lib $(WIN_JAVA_LIB) advapi32.lib, \
kvn7130df72013-12-05 15:10:36 -0800326 LDFLAGS_SUFFIX_aix := -lperfstat,\
ihse554e46f2013-11-14 11:19:32 +0100327 VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \
328 RC_FLAGS := $(RC_FLAGS) \
329 -D "JDK_FNAME=management.dll" \
330 -D "JDK_INTERNAL_NAME=management" \
331 -D "JDK_FTYPE=0x2L", \
332 OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libmanagement, \
333 DEBUG_SYMBOLS := true))
334
335$(BUILD_LIBMANAGEMENT): $(BUILD_LIBJAVA)
336
337BUILD_LIBRARIES += $(BUILD_LIBMANAGEMENT)
338
339##########################################################################################
340
341BUILD_LIBHPROF_SRC := $(JDK_TOPDIR)/src/share/demo/jvmti/hprof $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/demo/jvmti/hprof
342BUILD_LIBHPROF_CFLAGS := -I$(JDK_TOPDIR)/src/share/demo/jvmti/hprof \
343 -I$(JDK_TOPDIR)/src/share/npt \
344 -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/npt \
345 -I$(JDK_TOPDIR)/src/share/demo/jvmti/java_crw_demo
346
kvn7130df72013-12-05 15:10:36 -0800347ifeq ($(OPENJDK_TARGET_OS), aix)
348 BUILD_LIBHPROF_SRC += $(JDK_TOPDIR)/src/aix/porting
349 BUILD_LIBHPROF_CFLAGS += -I$(JDK_TOPDIR)/src/aix/porting
350endif
351
ihse554e46f2013-11-14 11:19:32 +0100352BUILD_LIBHPROF_LDFLAGS :=
353
354LIBHPROF_OPTIMIZATION := HIGHEST
355ifneq ($(findstring $(OPENJDK_TARGET_OS), solaris linux), )
356 ifeq ($(ENABLE_DEBUG_SYMBOLS), true)
357 LIBHPROF_OPTIMIZATION := LOW
358 endif
359endif
360
361$(eval $(call SetupNativeCompilation,BUILD_LIBHPROF, \
362 LIBRARY := hprof, \
363 OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
364 SRC := $(BUILD_LIBHPROF_SRC), \
365 LANG := C, \
366 OPTIMIZATION := $(LIBHPROF_OPTIMIZATION), \
367 CFLAGS := $(CFLAGS_JDKLIB) \
368 $(BUILD_LIBHPROF_CFLAGS), \
369 CFLAGS_debug := -DHPROF_LOGGING, \
370 MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libhprof/mapfile-vers, \
371 LDFLAGS := $(LDFLAGS_JDKLIB) \
372 $(call SET_SHARED_LIBRARY_ORIGIN), \
373 LDFLAGS_windows := wsock32.lib winmm.lib advapi32.lib, \
374 LDFLAGS_SUFFIX_linux := $(LIBDL), \
375 LDFLAGS_SUFFIX_macosx := $(LIBDL), \
376 LDFLAGS_SUFFIX_solaris := -lsocket -lnsl $(LIBDL) -lc, \
377 VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \
378 RC_FLAGS := $(RC_FLAGS) \
379 -D "JDK_FNAME=hprof.dll" \
380 -D "JDK_INTERNAL_NAME=hprof" \
381 -D "JDK_FTYPE=0x2L", \
382 OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libhprof_jvmti, \
383 DEBUG_SYMBOLS := true))
384
385BUILD_LIBRARIES += $(BUILD_LIBHPROF)
386
387##########################################################################################
388
389$(eval $(call SetupNativeCompilation,BUILD_LIBJAVA_CRW_DEMO, \
390 LIBRARY := java_crw_demo, \
391 OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
392 SRC := $(JDK_TOPDIR)/src/share/demo/jvmti/java_crw_demo, \
393 LANG := C, \
394 OPTIMIZATION := LOW, \
395 CFLAGS := $(CFLAGS_JDKLIB) \
396 -I$(JDK_TOPDIR)/src/share/demo/jvmti/java_crw_demo, \
397 MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libjava_crw_demo/mapfile-vers, \
398 LDFLAGS := $(LDFLAGS_JDKLIB) \
399 $(call SET_SHARED_LIBRARY_ORIGIN), \
400 LDFLAGS_SUFFIX_solaris := -lc, \
401 VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \
402 RC_FLAGS := $(RC_FLAGS) \
403 -D "JDK_FNAME=java_crw_demo.dll" \
404 -D "JDK_INTERNAL_NAME=java_crw_demo" \
405 -D "JDK_FTYPE=0x2L", \
406 OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libjava_crw_demo, \
407 DEBUG_SYMBOLS := true))
408
409BUILD_LIBRARIES += $(BUILD_LIBJAVA_CRW_DEMO)
410
411##########################################################################################
412
413ifndef OPENJDK
414 ifeq ($(ENABLE_JFR), true)
415
416 $(eval $(call SetupNativeCompilation,BUILD_LIBJFR, \
417 LIBRARY := jfr, \
418 OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
419 SRC := $(JDK_TOPDIR)/src/closed/share/native/oracle/jfr, \
420 LANG := C, \
421 OPTIMIZATION := LOW, \
422 CFLAGS := $(CFLAGS_JDKLIB) \
423 -I$(JDK_TOPDIR)/src/closed/share/javavm/export, \
424 MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libjfr/mapfile-vers, \
425 LDFLAGS := $(LDFLAGS_JDKLIB) \
426 $(call SET_SHARED_LIBRARY_ORIGIN), \
427 LDFLAGS_SUFFIX_solaris := -lc, \
428 VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \
429 RC_FLAGS := $(RC_FLAGS) \
430 -D "JDK_FNAME=jfr.dll" \
431 -D "JDK_INTERNAL_NAME=jfr" \
432 -D "JDK_FTYPE=0x2L", \
433 OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libjfr, \
434 DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES)))
435
436 BUILD_LIBRARIES += $(BUILD_LIBJFR)
437
438 endif
439endif