comparison make/solaris/makefiles/dtrace.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 f95d63e2154a
children 719f7007c8e8
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.
39 39
40 JVM_DB = libjvm_db 40 JVM_DB = libjvm_db
41 LIBJVM_DB = libjvm_db.so 41 LIBJVM_DB = libjvm_db.so
42 LIBJVM_DB_G = libjvm$(G_SUFFIX)_db.so 42 LIBJVM_DB_G = libjvm$(G_SUFFIX)_db.so
43 43
44 LIBJVM_DB_DEBUGINFO = libjvm_db.debuginfo
45 LIBJVM_DB_G_DEBUGINFO = libjvm$(G_SUFFIX)_db.debuginfo
46
44 JVM_DTRACE = jvm_dtrace 47 JVM_DTRACE = jvm_dtrace
45 LIBJVM_DTRACE = libjvm_dtrace.so 48 LIBJVM_DTRACE = libjvm_dtrace.so
46 LIBJVM_DTRACE_G = libjvm$(G_SUFFIX)_dtrace.so 49 LIBJVM_DTRACE_G = libjvm$(G_SUFFIX)_dtrace.so
50
51 LIBJVM_DTRACE_DEBUGINFO = libjvm_dtrace.debuginfo
52 LIBJVM_DTRACE_G_DEBUGINFO = libjvm$(G_SUFFIX)_dtrace.debuginfo
47 53
48 JVMOFFS = JvmOffsets 54 JVMOFFS = JvmOffsets
49 JVMOFFS.o = $(JVMOFFS).o 55 JVMOFFS.o = $(JVMOFFS).o
50 GENOFFS = generate$(JVMOFFS) 56 GENOFFS = generate$(JVMOFFS)
51 57
86 92
87 XLIBJVM_DB = 64/$(LIBJVM_DB) 93 XLIBJVM_DB = 64/$(LIBJVM_DB)
88 XLIBJVM_DB_G = 64/$(LIBJVM_DB_G) 94 XLIBJVM_DB_G = 64/$(LIBJVM_DB_G)
89 XLIBJVM_DTRACE = 64/$(LIBJVM_DTRACE) 95 XLIBJVM_DTRACE = 64/$(LIBJVM_DTRACE)
90 XLIBJVM_DTRACE_G = 64/$(LIBJVM_DTRACE_G) 96 XLIBJVM_DTRACE_G = 64/$(LIBJVM_DTRACE_G)
97
98 XLIBJVM_DB_DEBUGINFO = 64/$(LIBJVM_DB_DEBUGINFO)
99 XLIBJVM_DB_G_DEBUGINFO = 64/$(LIBJVM_DB_G_DEBUGINFO)
100 XLIBJVM_DTRACE_DEBUGINFO = 64/$(LIBJVM_DTRACE_DEBUGINFO)
101 XLIBJVM_DTRACE_G_DEBUGINFO = 64/$(LIBJVM_DTRACE_G_DEBUGINFO)
91 102
92 $(XLIBJVM_DB): $(DTRACE_SRCDIR)/$(JVM_DB).c $(JVMOFFS).h $(LIBJVM_DB_MAPFILE) 103 $(XLIBJVM_DB): $(DTRACE_SRCDIR)/$(JVM_DB).c $(JVMOFFS).h $(LIBJVM_DB_MAPFILE)
93 @echo Making $@ 104 @echo Making $@
94 $(QUIETLY) mkdir -p 64/ ; \ 105 $(QUIETLY) mkdir -p 64/ ; \
95 $(CC) $(SYMFLAG) $(ARCHFLAG/$(ISA)) -D$(TYPE) -I. -I$(GENERATED) \ 106 $(CC) $(SYMFLAG) $(ARCHFLAG/$(ISA)) -D$(TYPE) -I. -I$(GENERATED) \
96 $(SHARED_FLAG) $(LFLAGS_JVM_DB) -o $@ $(DTRACE_SRCDIR)/$(JVM_DB).c -lc 107 $(SHARED_FLAG) $(LFLAGS_JVM_DB) -o $@ $(DTRACE_SRCDIR)/$(JVM_DB).c -lc
97 [ -f $(XLIBJVM_DB_G) ] || { ln -s $(LIBJVM_DB) $(XLIBJVM_DB_G); } 108 [ -f $(XLIBJVM_DB_G) ] || { ln -s $(LIBJVM_DB) $(XLIBJVM_DB_G); }
109 ifneq ($(OBJCOPY),)
110 $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(XLIBJVM_DB_DEBUGINFO)
111 $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(XLIBJVM_DB_DEBUGINFO) $@
112 ifeq ($(STRIP_POLICY),all_strip)
113 $(QUIETLY) $(STRIP) $@
114 else
115 ifeq ($(STRIP_POLICY),min_strip)
116 $(QUIETLY) $(STRIP) -x $@
117 # implied else here is no stripping at all
118 endif
119 endif
120 [ -f $(XLIBJVM_DB_G_DEBUGINFO) ] || { ln -s $(LIBJVM_DB_DEBUGINFO) $(XLIBJVM_DB_G_DEBUGINFO); }
121 endif
98 122
99 $(XLIBJVM_DTRACE): $(DTRACE_SRCDIR)/$(JVM_DTRACE).c $(DTRACE_SRCDIR)/$(JVM_DTRACE).h $(LIBJVM_DTRACE_MAPFILE) 123 $(XLIBJVM_DTRACE): $(DTRACE_SRCDIR)/$(JVM_DTRACE).c $(DTRACE_SRCDIR)/$(JVM_DTRACE).h $(LIBJVM_DTRACE_MAPFILE)
100 @echo Making $@ 124 @echo Making $@
101 $(QUIETLY) mkdir -p 64/ ; \ 125 $(QUIETLY) mkdir -p 64/ ; \
102 $(CC) $(SYMFLAG) $(ARCHFLAG/$(ISA)) -D$(TYPE) -I. \ 126 $(CC) $(SYMFLAG) $(ARCHFLAG/$(ISA)) -D$(TYPE) -I. \
103 $(SHARED_FLAG) $(LFLAGS_JVM_DTRACE) -o $@ $(DTRACE_SRCDIR)/$(JVM_DTRACE).c -lc -lthread -ldoor 127 $(SHARED_FLAG) $(LFLAGS_JVM_DTRACE) -o $@ $(DTRACE_SRCDIR)/$(JVM_DTRACE).c -lc -lthread -ldoor
104 [ -f $(XLIBJVM_DTRACE_G) ] || { ln -s $(LIBJVM_DTRACE) $(XLIBJVM_DTRACE_G); } 128 [ -f $(XLIBJVM_DTRACE_G) ] || { ln -s $(LIBJVM_DTRACE) $(XLIBJVM_DTRACE_G); }
129 ifneq ($(OBJCOPY),)
130 $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(XLIBJVM_DTRACE_DEBUGINFO)
131 $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(XLIBJVM_DTRACE_DEBUGINFO) $@
132 ifeq ($(STRIP_POLICY),all_strip)
133 $(QUIETLY) $(STRIP) $@
134 else
135 ifeq ($(STRIP_POLICY),min_strip)
136 $(QUIETLY) $(STRIP) -x $@
137 # implied else here is no stripping at all
138 endif
139 endif
140 [ -f $(XLIBJVM_DTRACE_G_DEBUGINFO) ] || { ln -s $(LIBJVM_DTRACE_DEBUGINFO) $(XLIBJVM_DTRACE_G_DEBUGINFO); }
141 endif
105 142
106 endif # ifneq ("${ISA}","${BUILDARCH}") 143 endif # ifneq ("${ISA}","${BUILDARCH}")
107 144
108 ifdef USE_GCC 145 ifdef USE_GCC
109 LFLAGS_GENOFFS += -D_REENTRANT 146 LFLAGS_GENOFFS += -D_REENTRANT
146 $(LIBJVM_DB): $(DTRACE_SRCDIR)/$(JVM_DB).c $(JVMOFFS.o) $(XLIBJVM_DB) $(LIBJVM_DB_MAPFILE) 183 $(LIBJVM_DB): $(DTRACE_SRCDIR)/$(JVM_DB).c $(JVMOFFS.o) $(XLIBJVM_DB) $(LIBJVM_DB_MAPFILE)
147 @echo Making $@ 184 @echo Making $@
148 $(QUIETLY) $(CC) $(SYMFLAG) $(ARCHFLAG) -D$(TYPE) -I. -I$(GENERATED) \ 185 $(QUIETLY) $(CC) $(SYMFLAG) $(ARCHFLAG) -D$(TYPE) -I. -I$(GENERATED) \
149 $(SHARED_FLAG) $(LFLAGS_JVM_DB) -o $@ $(DTRACE_SRCDIR)/$(JVM_DB).c -lc 186 $(SHARED_FLAG) $(LFLAGS_JVM_DB) -o $@ $(DTRACE_SRCDIR)/$(JVM_DB).c -lc
150 [ -f $(LIBJVM_DB_G) ] || { ln -s $@ $(LIBJVM_DB_G); } 187 [ -f $(LIBJVM_DB_G) ] || { ln -s $@ $(LIBJVM_DB_G); }
188 ifneq ($(OBJCOPY),)
189 $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJVM_DB_DEBUGINFO)
190 $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJVM_DB_DEBUGINFO) $@
191 ifeq ($(STRIP_POLICY),all_strip)
192 $(QUIETLY) $(STRIP) $@
193 else
194 ifeq ($(STRIP_POLICY),min_strip)
195 $(QUIETLY) $(STRIP) -x $@
196 # implied else here is no stripping at all
197 endif
198 endif
199 [ -f $(LIBJVM_DB_G_DEBUGINFO) ] || { ln -s $(LIBJVM_DB_DEBUGINFO) $(LIBJVM_DB_G_DEBUGINFO); }
200 endif
151 201
152 $(LIBJVM_DTRACE): $(DTRACE_SRCDIR)/$(JVM_DTRACE).c $(XLIBJVM_DTRACE) $(DTRACE_SRCDIR)/$(JVM_DTRACE).h $(LIBJVM_DTRACE_MAPFILE) 202 $(LIBJVM_DTRACE): $(DTRACE_SRCDIR)/$(JVM_DTRACE).c $(XLIBJVM_DTRACE) $(DTRACE_SRCDIR)/$(JVM_DTRACE).h $(LIBJVM_DTRACE_MAPFILE)
153 @echo Making $@ 203 @echo Making $@
154 $(QUIETLY) $(CC) $(SYMFLAG) $(ARCHFLAG) -D$(TYPE) -I. \ 204 $(QUIETLY) $(CC) $(SYMFLAG) $(ARCHFLAG) -D$(TYPE) -I. \
155 $(SHARED_FLAG) $(LFLAGS_JVM_DTRACE) -o $@ $(DTRACE_SRCDIR)/$(JVM_DTRACE).c -lc -lthread -ldoor 205 $(SHARED_FLAG) $(LFLAGS_JVM_DTRACE) -o $@ $(DTRACE_SRCDIR)/$(JVM_DTRACE).c -lc -lthread -ldoor
156 [ -f $(LIBJVM_DTRACE_G) ] || { ln -s $@ $(LIBJVM_DTRACE_G); } 206 [ -f $(LIBJVM_DTRACE_G) ] || { ln -s $@ $(LIBJVM_DTRACE_G); }
207 ifneq ($(OBJCOPY),)
208 $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJVM_DTRACE_DEBUGINFO)
209 $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJVM_DTRACE_DEBUGINFO) $@
210 ifeq ($(STRIP_POLICY),all_strip)
211 $(QUIETLY) $(STRIP) $@
212 else
213 ifeq ($(STRIP_POLICY),min_strip)
214 $(QUIETLY) $(STRIP) -x $@
215 # implied else here is no stripping at all
216 endif
217 endif
218 [ -f $(LIBJVM_DTRACE_G_DEBUGINFO) ] || { ln -s $(LIBJVM_DTRACE_DEBUGINFO) $(LIBJVM_DTRACE_G_DEBUGINFO); }
219 endif
157 220
158 $(DTRACE).d: $(DTRACE_SRCDIR)/hotspot.d $(DTRACE_SRCDIR)/hotspot_jni.d \ 221 $(DTRACE).d: $(DTRACE_SRCDIR)/hotspot.d $(DTRACE_SRCDIR)/hotspot_jni.d \
159 $(DTRACE_SRCDIR)/hs_private.d $(DTRACE_SRCDIR)/jhelper.d 222 $(DTRACE_SRCDIR)/hs_private.d $(DTRACE_SRCDIR)/jhelper.d
160 $(QUIETLY) cat $^ > $@ 223 $(QUIETLY) cat $^ > $@
161 224