1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/make/aix/makefiles/saproc.make Fri Sep 06 20:08:29 2013 +0200 1.3 @@ -0,0 +1,117 @@ 1.4 +# 1.5 +# Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved. 1.6 +# Copyright 2012, 2013 SAP AG. All rights reserved. 1.7 +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 1.8 +# 1.9 +# This code is free software; you can redistribute it and/or modify it 1.10 +# under the terms of the GNU General Public License version 2 only, as 1.11 +# published by the Free Software Foundation. 1.12 +# 1.13 +# This code is distributed in the hope that it will be useful, but WITHOUT 1.14 +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 1.15 +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 1.16 +# version 2 for more details (a copy is included in the LICENSE file that 1.17 +# accompanied this code). 1.18 +# 1.19 +# You should have received a copy of the GNU General Public License version 1.20 +# 2 along with this work; if not, write to the Free Software Foundation, 1.21 +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 1.22 +# 1.23 +# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 1.24 +# or visit www.oracle.com if you need additional information or have any 1.25 +# questions. 1.26 +# 1.27 +# 1.28 +include $(GAMMADIR)/make/defs.make 1.29 + 1.30 +# Rules to build serviceability agent library, used by vm.make 1.31 + 1.32 +# libsaproc.so: serviceability agent 1.33 + 1.34 +SAPROC = saproc 1.35 +LIBSAPROC = lib$(SAPROC).so 1.36 + 1.37 +LIBSAPROC_DEBUGINFO = lib$(SAPROC).debuginfo 1.38 +LIBSAPROC_DIZ = lib$(SAPROC).diz 1.39 + 1.40 +AGENT_DIR = $(GAMMADIR)/agent 1.41 + 1.42 +SASRCDIR = $(AGENT_DIR)/src/os/$(Platform_os_family) 1.43 + 1.44 +SASRCFILES = $(SASRCDIR)/salibelf.c \ 1.45 + $(SASRCDIR)/symtab.c \ 1.46 + $(SASRCDIR)/libproc_impl.c \ 1.47 + $(SASRCDIR)/ps_proc.c \ 1.48 + $(SASRCDIR)/ps_core.c \ 1.49 + $(SASRCDIR)/LinuxDebuggerLocal.c \ 1.50 + 1.51 +SAMAPFILE = $(SASRCDIR)/mapfile 1.52 + 1.53 +DEST_SAPROC = $(JDK_LIBDIR)/$(LIBSAPROC) 1.54 +DEST_SAPROC_DEBUGINFO = $(JDK_LIBDIR)/$(LIBSAPROC_DEBUGINFO) 1.55 +DEST_SAPROC_DIZ = $(JDK_LIBDIR)/$(LIBSAPROC_DIZ) 1.56 + 1.57 +# DEBUG_BINARIES overrides everything, use full -g debug information 1.58 +ifeq ($(DEBUG_BINARIES), true) 1.59 + SA_DEBUG_CFLAGS = -g 1.60 +endif 1.61 + 1.62 +# if $(AGENT_DIR) does not exist, we don't build SA 1.63 +# also, we don't build SA on Itanium, PPC, ARM or zero. 1.64 + 1.65 +ifneq ($(wildcard $(AGENT_DIR)),) 1.66 +ifneq ($(filter-out ia64 arm ppc zero,$(SRCARCH)),) 1.67 + BUILDLIBSAPROC = $(LIBSAPROC) 1.68 +endif 1.69 +endif 1.70 + 1.71 + 1.72 +SA_LFLAGS = $(MAPFLAG:FILENAME=$(SAMAPFILE)) $(LDFLAGS_HASH_STYLE) 1.73 + 1.74 +$(LIBSAPROC): $(SASRCFILES) $(SAMAPFILE) 1.75 + $(QUIETLY) if [ "$(BOOT_JAVA_HOME)" = "" ]; then \ 1.76 + echo "ALT_BOOTDIR, BOOTDIR or JAVA_HOME needs to be defined to build SA"; \ 1.77 + exit 1; \ 1.78 + fi 1.79 + @echo Making SA debugger back-end... 1.80 + $(QUIETLY) $(CC) -D$(BUILDARCH) -D_GNU_SOURCE \ 1.81 + -D_FILE_OFFSET_BITS=64 \ 1.82 + $(SYMFLAG) $(ARCHFLAG) $(SHARED_FLAG) $(PICFLAG) \ 1.83 + $(BIN_UTILS) \ 1.84 + -I$(SASRCDIR) \ 1.85 + -I$(GENERATED) \ 1.86 + -I$(BOOT_JAVA_HOME)/include \ 1.87 + -I$(BOOT_JAVA_HOME)/include/$(Platform_os_family) \ 1.88 + $(SASRCFILES) \ 1.89 + $(SA_LFLAGS) \ 1.90 + $(SA_DEBUG_CFLAGS) \ 1.91 + -o $@ \ 1.92 + -lthread_db 1.93 +ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) 1.94 + $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBSAPROC_DEBUGINFO) 1.95 + $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBSAPROC_DEBUGINFO) $@ 1.96 + ifeq ($(STRIP_POLICY),all_strip) 1.97 + $(QUIETLY) $(STRIP) $@ 1.98 + else 1.99 + ifeq ($(STRIP_POLICY),min_strip) 1.100 + $(QUIETLY) $(STRIP) -g $@ 1.101 + # implied else here is no stripping at all 1.102 + endif 1.103 + endif 1.104 + ifeq ($(ZIP_DEBUGINFO_FILES),1) 1.105 + $(ZIPEXE) -q -y $(LIBSAPROC_DIZ) $(LIBSAPROC_DEBUGINFO) 1.106 + $(RM) $(LIBSAPROC_DEBUGINFO) 1.107 + endif 1.108 +endif 1.109 + 1.110 +install_saproc: $(BUILDLIBSAPROC) 1.111 + $(QUIETLY) if [ -e $(LIBSAPROC) ] ; then \ 1.112 + echo "Copying $(LIBSAPROC) to $(DEST_SAPROC)"; \ 1.113 + test -f $(LIBSAPROC_DEBUGINFO) && \ 1.114 + cp -f $(LIBSAPROC_DEBUGINFO) $(DEST_SAPROC_DEBUGINFO); \ 1.115 + test -f $(LIBSAPROC_DIZ) && \ 1.116 + cp -f $(LIBSAPROC_DIZ) $(DEST_SAPROC_DIZ); \ 1.117 + cp -f $(LIBSAPROC) $(DEST_SAPROC) && echo "Done"; \ 1.118 + fi 1.119 + 1.120 +.PHONY: install_saproc