Mercurial > hg > truffle
annotate make/linux/makefiles/saproc.make @ 14094:3f27e57439ed
Truffle/Instrumentation: significant rearrangement (including moved class) and extension of the Truffle Instrumentation Framework. New interfaces include DebugContext (which can be attached to the ExecutionContext), through which access is provided to possibly language-specific (a) node instrumentation, (b) debug services manager, (c) notification when programs halt, (d) display of language values, and (e) display of variable identifiers.
author | Michael Van De Vanter <michael.van.de.vanter@oracle.com> |
---|---|
date | Mon, 03 Feb 2014 20:58:23 -0800 |
parents | 26579ac80ce9 |
children | de6a9e811145 |
rev | line source |
---|---|
0 | 1 # |
4919
54d3535a6dd3
7009098: SA cannot open core files larger than 2GB on Linux 32-bit
poonam
parents:
3954
diff
changeset
|
2 # Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved. |
0 | 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. | |
8 # | |
9 # This code is distributed in the hope that it will be useful, but WITHOUT | |
10 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | |
11 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | |
12 # version 2 for more details (a copy is included in the LICENSE file that | |
13 # accompanied this code). | |
14 # | |
15 # You should have received a copy of the GNU General Public License version | |
16 # 2 along with this work; if not, write to the Free Software Foundation, | |
17 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. | |
18 # | |
1552
c18cbe5936b8
6941466: Oracle rebranding changes for Hotspot repositories
trims
parents:
1123
diff
changeset
|
19 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
c18cbe5936b8
6941466: Oracle rebranding changes for Hotspot repositories
trims
parents:
1123
diff
changeset
|
20 # or visit www.oracle.com if you need additional information or have any |
c18cbe5936b8
6941466: Oracle rebranding changes for Hotspot repositories
trims
parents:
1123
diff
changeset
|
21 # questions. |
0 | 22 # |
23 # | |
6641
a9fed06c01d2
7154641: Servicability agent should work on platforms other than x86, sparc
bpittore
parents:
6020
diff
changeset
|
24 include $(GAMMADIR)/make/defs.make |
a9fed06c01d2
7154641: Servicability agent should work on platforms other than x86, sparc
bpittore
parents:
6020
diff
changeset
|
25 include $(GAMMADIR)/make/altsrc.make |
0 | 26 |
27 # Rules to build serviceability agent library, used by vm.make | |
28 | |
7408
892acf0431ef
7153050: remove crufty '_g' support from HotSpot repo makefiles
dcubed
parents:
6782
diff
changeset
|
29 # libsaproc.so: serviceability agent |
1123
167c2986d91b
6843629: Make current hotspot build part of jdk5 control build
phh
parents:
1010
diff
changeset
|
30 |
167c2986d91b
6843629: Make current hotspot build part of jdk5 control build
phh
parents:
1010
diff
changeset
|
31 SAPROC = saproc |
0 | 32 LIBSAPROC = lib$(SAPROC).so |
33 | |
3954 | 34 LIBSAPROC_DEBUGINFO = lib$(SAPROC).debuginfo |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
4919
diff
changeset
|
35 LIBSAPROC_DIZ = lib$(SAPROC).diz |
3954 | 36 |
0 | 37 AGENT_DIR = $(GAMMADIR)/agent |
38 | |
39 SASRCDIR = $(AGENT_DIR)/src/os/$(Platform_os_family) | |
40 | |
41 SASRCFILES = $(SASRCDIR)/salibelf.c \ | |
42 $(SASRCDIR)/symtab.c \ | |
43 $(SASRCDIR)/libproc_impl.c \ | |
44 $(SASRCDIR)/ps_proc.c \ | |
45 $(SASRCDIR)/ps_core.c \ | |
6782 | 46 $(SASRCDIR)/LinuxDebuggerLocal.c \ |
47 $(AGENT_DIR)/src/share/native/sadis.c | |
0 | 48 |
6641
a9fed06c01d2
7154641: Servicability agent should work on platforms other than x86, sparc
bpittore
parents:
6020
diff
changeset
|
49 -include $(HS_ALT_MAKE)/linux/makefiles/saproc.make |
a9fed06c01d2
7154641: Servicability agent should work on platforms other than x86, sparc
bpittore
parents:
6020
diff
changeset
|
50 |
0 | 51 SAMAPFILE = $(SASRCDIR)/mapfile |
52 | |
3954 | 53 DEST_SAPROC = $(JDK_LIBDIR)/$(LIBSAPROC) |
54 DEST_SAPROC_DEBUGINFO = $(JDK_LIBDIR)/$(LIBSAPROC_DEBUGINFO) | |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
4919
diff
changeset
|
55 DEST_SAPROC_DIZ = $(JDK_LIBDIR)/$(LIBSAPROC_DIZ) |
0 | 56 |
767
5d4dd2f5f6a1
6829575: 100028: Debug information is incomplete or missing
aph
parents:
196
diff
changeset
|
57 # DEBUG_BINARIES overrides everything, use full -g debug information |
5d4dd2f5f6a1
6829575: 100028: Debug information is incomplete or missing
aph
parents:
196
diff
changeset
|
58 ifeq ($(DEBUG_BINARIES), true) |
5d4dd2f5f6a1
6829575: 100028: Debug information is incomplete or missing
aph
parents:
196
diff
changeset
|
59 SA_DEBUG_CFLAGS = -g |
5d4dd2f5f6a1
6829575: 100028: Debug information is incomplete or missing
aph
parents:
196
diff
changeset
|
60 endif |
5d4dd2f5f6a1
6829575: 100028: Debug information is incomplete or missing
aph
parents:
196
diff
changeset
|
61 |
0 | 62 # if $(AGENT_DIR) does not exist, we don't build SA |
6641
a9fed06c01d2
7154641: Servicability agent should work on platforms other than x86, sparc
bpittore
parents:
6020
diff
changeset
|
63 # also, we don't build SA on Itanium or zero. |
0 | 64 |
1972 | 65 ifneq ($(wildcard $(AGENT_DIR)),) |
6641
a9fed06c01d2
7154641: Servicability agent should work on platforms other than x86, sparc
bpittore
parents:
6020
diff
changeset
|
66 ifneq ($(filter-out ia64 zero,$(SRCARCH)),) |
1972 | 67 BUILDLIBSAPROC = $(LIBSAPROC) |
68 endif | |
69 endif | |
70 | |
6641
a9fed06c01d2
7154641: Servicability agent should work on platforms other than x86, sparc
bpittore
parents:
6020
diff
changeset
|
71 ifneq ($(ALT_SASRCDIR),) |
a9fed06c01d2
7154641: Servicability agent should work on platforms other than x86, sparc
bpittore
parents:
6020
diff
changeset
|
72 ALT_SAINCDIR=-I$(ALT_SASRCDIR) |
a9fed06c01d2
7154641: Servicability agent should work on platforms other than x86, sparc
bpittore
parents:
6020
diff
changeset
|
73 else |
a9fed06c01d2
7154641: Servicability agent should work on platforms other than x86, sparc
bpittore
parents:
6020
diff
changeset
|
74 ALT_SAINCDIR= |
a9fed06c01d2
7154641: Servicability agent should work on platforms other than x86, sparc
bpittore
parents:
6020
diff
changeset
|
75 endif |
757
f96f285ed3dd
6838154: make/linux/makefiles/sa.make needs hash-style fix
never
parents:
196
diff
changeset
|
76 SA_LFLAGS = $(MAPFLAG:FILENAME=$(SAMAPFILE)) $(LDFLAGS_HASH_STYLE) |
0 | 77 |
78 $(LIBSAPROC): $(SASRCFILES) $(SAMAPFILE) | |
79 $(QUIETLY) if [ "$(BOOT_JAVA_HOME)" = "" ]; then \ | |
80 echo "ALT_BOOTDIR, BOOTDIR or JAVA_HOME needs to be defined to build SA"; \ | |
81 exit 1; \ | |
82 fi | |
83 @echo Making SA debugger back-end... | |
84 $(QUIETLY) $(CC) -D$(BUILDARCH) -D_GNU_SOURCE \ | |
4919
54d3535a6dd3
7009098: SA cannot open core files larger than 2GB on Linux 32-bit
poonam
parents:
3954
diff
changeset
|
85 -D_FILE_OFFSET_BITS=64 \ |
0 | 86 $(SYMFLAG) $(ARCHFLAG) $(SHARED_FLAG) $(PICFLAG) \ |
87 -I$(SASRCDIR) \ | |
88 -I$(GENERATED) \ | |
89 -I$(BOOT_JAVA_HOME)/include \ | |
90 -I$(BOOT_JAVA_HOME)/include/$(Platform_os_family) \ | |
6641
a9fed06c01d2
7154641: Servicability agent should work on platforms other than x86, sparc
bpittore
parents:
6020
diff
changeset
|
91 $(ALT_SAINCDIR) \ |
0 | 92 $(SASRCFILES) \ |
93 $(SA_LFLAGS) \ | |
767
5d4dd2f5f6a1
6829575: 100028: Debug information is incomplete or missing
aph
parents:
196
diff
changeset
|
94 $(SA_DEBUG_CFLAGS) \ |
10316
26579ac80ce9
8014669: arch specific flags not passed to some link commands
bpittore
parents:
7408
diff
changeset
|
95 $(EXTRA_CFLAGS) \ |
0 | 96 -o $@ \ |
97 -lthread_db | |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
4919
diff
changeset
|
98 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) |
3954 | 99 $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBSAPROC_DEBUGINFO) |
100 $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBSAPROC_DEBUGINFO) $@ | |
101 ifeq ($(STRIP_POLICY),all_strip) | |
102 $(QUIETLY) $(STRIP) $@ | |
103 else | |
104 ifeq ($(STRIP_POLICY),min_strip) | |
105 $(QUIETLY) $(STRIP) -g $@ | |
106 # implied else here is no stripping at all | |
107 endif | |
108 endif | |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
4919
diff
changeset
|
109 ifeq ($(ZIP_DEBUGINFO_FILES),1) |
7408
892acf0431ef
7153050: remove crufty '_g' support from HotSpot repo makefiles
dcubed
parents:
6782
diff
changeset
|
110 $(ZIPEXE) -q -y $(LIBSAPROC_DIZ) $(LIBSAPROC_DEBUGINFO) |
892acf0431ef
7153050: remove crufty '_g' support from HotSpot repo makefiles
dcubed
parents:
6782
diff
changeset
|
111 $(RM) $(LIBSAPROC_DEBUGINFO) |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
4919
diff
changeset
|
112 endif |
3954 | 113 endif |
0 | 114 |
1972 | 115 install_saproc: $(BUILDLIBSAPROC) |
0 | 116 $(QUIETLY) if [ -e $(LIBSAPROC) ] ; then \ |
117 echo "Copying $(LIBSAPROC) to $(DEST_SAPROC)"; \ | |
3954 | 118 test -f $(LIBSAPROC_DEBUGINFO) && \ |
119 cp -f $(LIBSAPROC_DEBUGINFO) $(DEST_SAPROC_DEBUGINFO); \ | |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
4919
diff
changeset
|
120 test -f $(LIBSAPROC_DIZ) && \ |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
4919
diff
changeset
|
121 cp -f $(LIBSAPROC_DIZ) $(DEST_SAPROC_DIZ); \ |
0 | 122 cp -f $(LIBSAPROC) $(DEST_SAPROC) && echo "Done"; \ |
123 fi | |
124 | |
1972 | 125 .PHONY: install_saproc |