comparison make/linux/makefiles/saproc.make @ 3954:da0999c4b733

7071904: 4/4 HotSpot: Full Debug Symbols Summary: Add support for .debuginfo files for HSX libraries. Reviewed-by: poonam, dholmes, never
author dcubed
date Fri, 16 Sep 2011 16:21:20 -0700
parents 0a8e0d4345b3
children 54d3535a6dd3
comparison
equal deleted inserted replaced
3950:5a3c2bc614ca 3954:da0999c4b733
1 # 1 #
2 # Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. 2 # Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.
3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 # 4 #
5 # This code is free software; you can redistribute it and/or modify it 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 6 # under the terms of the GNU General Public License version 2 only, as
7 # published by the Free Software Foundation. 7 # published by the Free Software Foundation.
30 LIBSAPROC = lib$(SAPROC).so 30 LIBSAPROC = lib$(SAPROC).so
31 31
32 SAPROC_G = $(SAPROC)$(G_SUFFIX) 32 SAPROC_G = $(SAPROC)$(G_SUFFIX)
33 LIBSAPROC_G = lib$(SAPROC_G).so 33 LIBSAPROC_G = lib$(SAPROC_G).so
34 34
35 LIBSAPROC_DEBUGINFO = lib$(SAPROC).debuginfo
36 LIBSAPROC_G_DEBUGINFO = lib$(SAPROC_G).debuginfo
37
35 AGENT_DIR = $(GAMMADIR)/agent 38 AGENT_DIR = $(GAMMADIR)/agent
36 39
37 SASRCDIR = $(AGENT_DIR)/src/os/$(Platform_os_family) 40 SASRCDIR = $(AGENT_DIR)/src/os/$(Platform_os_family)
38 41
39 SASRCFILES = $(SASRCDIR)/salibelf.c \ 42 SASRCFILES = $(SASRCDIR)/salibelf.c \
43 $(SASRCDIR)/ps_core.c \ 46 $(SASRCDIR)/ps_core.c \
44 $(SASRCDIR)/LinuxDebuggerLocal.c 47 $(SASRCDIR)/LinuxDebuggerLocal.c
45 48
46 SAMAPFILE = $(SASRCDIR)/mapfile 49 SAMAPFILE = $(SASRCDIR)/mapfile
47 50
48 DEST_SAPROC = $(JDK_LIBDIR)/$(LIBSAPROC) 51 DEST_SAPROC = $(JDK_LIBDIR)/$(LIBSAPROC)
52 DEST_SAPROC_DEBUGINFO = $(JDK_LIBDIR)/$(LIBSAPROC_DEBUGINFO)
49 53
50 # DEBUG_BINARIES overrides everything, use full -g debug information 54 # DEBUG_BINARIES overrides everything, use full -g debug information
51 ifeq ($(DEBUG_BINARIES), true) 55 ifeq ($(DEBUG_BINARIES), true)
52 SA_DEBUG_CFLAGS = -g 56 SA_DEBUG_CFLAGS = -g
53 endif 57 endif
80 $(SA_LFLAGS) \ 84 $(SA_LFLAGS) \
81 $(SA_DEBUG_CFLAGS) \ 85 $(SA_DEBUG_CFLAGS) \
82 -o $@ \ 86 -o $@ \
83 -lthread_db 87 -lthread_db
84 $(QUIETLY) [ -f $(LIBSAPROC_G) ] || { ln -s $@ $(LIBSAPROC_G); } 88 $(QUIETLY) [ -f $(LIBSAPROC_G) ] || { ln -s $@ $(LIBSAPROC_G); }
89 ifneq ($(OBJCOPY),)
90 $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBSAPROC_DEBUGINFO)
91 $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBSAPROC_DEBUGINFO) $@
92 ifeq ($(STRIP_POLICY),all_strip)
93 $(QUIETLY) $(STRIP) $@
94 else
95 ifeq ($(STRIP_POLICY),min_strip)
96 $(QUIETLY) $(STRIP) -g $@
97 # implied else here is no stripping at all
98 endif
99 endif
100 [ -f $(LIBSAPROC_G_DEBUGINFO) ] || { ln -s $(LIBSAPROC_DEBUGINFO) $(LIBSAPROC_G_DEBUGINFO); }
101 endif
85 102
86 install_saproc: $(BUILDLIBSAPROC) 103 install_saproc: $(BUILDLIBSAPROC)
87 $(QUIETLY) if [ -e $(LIBSAPROC) ] ; then \ 104 $(QUIETLY) if [ -e $(LIBSAPROC) ] ; then \
88 echo "Copying $(LIBSAPROC) to $(DEST_SAPROC)"; \ 105 echo "Copying $(LIBSAPROC) to $(DEST_SAPROC)"; \
106 test -f $(LIBSAPROC_DEBUGINFO) && \
107 cp -f $(LIBSAPROC_DEBUGINFO) $(DEST_SAPROC_DEBUGINFO); \
89 cp -f $(LIBSAPROC) $(DEST_SAPROC) && echo "Done"; \ 108 cp -f $(LIBSAPROC) $(DEST_SAPROC) && echo "Done"; \
90 fi 109 fi
91 110
92 .PHONY: install_saproc 111 .PHONY: install_saproc