1 # 2 # Copyright (c) 2011, 2018, 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 LibCommon.gmk 27 28 ################################################################################ 29 30 LIBDT_SOCKET_SRC := $(TOPDIR)/src/jdk.jdwp.agent/share/native/libdt_socket \ 31 $(TOPDIR)/src/jdk.jdwp.agent/$(OPENJDK_TARGET_OS_TYPE)/native/libdt_socket 32 LIBDT_SOCKET_CPPFLAGS := \ 33 $(addprefix -I, $(LIBDT_SOCKET_SRC)) \ 34 -I$(TOPDIR)/src/jdk.jdwp.agent/share/native/libjdwp/export \ 35 -I$(TOPDIR)/src/jdk.jdwp.agent/share/native/libjdwp \ 36 -I$(TOPDIR)/src/jdk.jdwp.agent/share/native/include \ 37 # 38 39 $(eval $(call SetupJdkLibrary, BUILD_LIBDT_SOCKET, \ 40 NAME := dt_socket, \ 41 SRC := $(LIBDT_SOCKET_SRC), \ 42 OPTIMIZATION := LOW, \ 43 CFLAGS := $(CFLAGS_JDKLIB) -DUSE_MMAP \ 44 $(LIBDT_SOCKET_CPPFLAGS), \ 45 MAPFILE := $(TOPDIR)/make/mapfiles/libdt_socket/mapfile-vers, \ 46 LDFLAGS := $(LDFLAGS_JDKLIB) \ 47 $(call SET_SHARED_LIBRARY_ORIGIN), \ 48 LDFLAGS_windows := -export:jdwpTransport_OnLoad, \ 49 LIBS_linux := -lpthread, \ 50 LIBS_solaris := -lnsl -lsocket, \ 51 LIBS_windows := $(JDKLIB_LIBS) ws2_32.lib, \ 52 )) 53 54 $(BUILD_LIBDT_SOCKET): $(call FindLib, java.base, java) 55 56 # Include socket transport with JDWP agent to allow for remote debugging 57 TARGETS += $(BUILD_LIBDT_SOCKET) 58 59 ################################################################################ 60 61 LIBJDWP_SRC := $(TOPDIR)/src/jdk.jdwp.agent/share/native/libjdwp \ 62 $(TOPDIR)/src/jdk.jdwp.agent/$(OPENJDK_TARGET_OS_TYPE)/native/libjdwp 63 LIBJDWP_CPPFLAGS := \ 64 -I$(TOPDIR)/src/jdk.jdwp.agent/share/native/libjdwp/export \ 65 -I$(TOPDIR)/src/jdk.jdwp.agent/share/native/include \ 66 $(addprefix -I, $(LIBJDWP_SRC)) 67 68 # JDWP_LOGGING causes log messages to be compiled into the library. 69 $(eval $(call SetupJdkLibrary, BUILD_LIBJDWP, \ 70 NAME := jdwp, \ 71 SRC := $(LIBJDWP_SRC), \ 72 OPTIMIZATION := LOW, \ 73 CFLAGS := $(CFLAGS_JDKLIB) -DJDWP_LOGGING \ 74 $(LIBJDWP_CPPFLAGS) \ 75 -I$(SUPPORT_OUTPUTDIR)/headers/jdk.jdwp.agent, \ 76 MAPFILE := $(TOPDIR)/make/mapfiles/libjdwp/mapfile-vers, \ 77 LDFLAGS := $(LDFLAGS_JDKLIB) \ 78 $(call SET_SHARED_LIBRARY_ORIGIN), \ 79 LIBS := $(JDKLIB_LIBS), \ 80 LIBS_linux := $(LIBDL), \ 81 LIBS_solaris := $(LIBDL), \ 82 LIBS_macosx := -liconv, \ 83 LIBS_aix := -liconv, \ 84 )) 85 86 $(BUILD_LIBJDWP): $(call FindLib, java.base, java) 87 88 TARGETS += $(BUILD_LIBJDWP) 89 90 ################################################################################ 91 92 ifeq ($(STATIC_BUILD), true) 93 JDK_JDWP_AGENT_EXPORT_SYMBOLS_SRC := \ 94 $(SUPPORT_OUTPUTDIR)/modules_libs/jdk.jdwp.agent/$(LIBRARY_PREFIX)dt_socket.symbols \ 95 $(SUPPORT_OUTPUTDIR)/modules_libs/jdk.jdwp.agent/$(LIBRARY_PREFIX)jdwp.symbols 96 97 JDK_JDWP_AGENT_EXPORT_SYMBOL_FILE := $(SUPPORT_OUTPUTDIR)/modules_libs/jdk.jdwp.agent/jdk.jdwp.agent.symbols 98 99 $(JDK_JDWP_AGENT_EXPORT_SYMBOL_FILE): $(JDK_JDWP_AGENT_EXPORT_SYMBOLS_SRC) 100 $(call LogInfo, Generating jdk.jdwp.agent symbols file) 101 $(CAT) $^ > $@ 102 103 # The individual symbol files is generated when the respective lib is built 104 $(JDK_JDWP_AGENT_EXPORT_SYMBOLS_SRC): $(BUILD_LIBDT_SOCKET) $(BUILD_LIBJDWP) 105 106 TARGETS += $(JDK_JDWP_AGENT_EXPORT_SYMBOL_FILE) 107 108 endif 109 110 ################################################################################