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