Mercurial > hg > graal-jvmci-8
comparison make/linux/makefiles/vm.make @ 6020:d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
Summary: Add support for ENABLE_FULL_DEBUG_SYMBOLS and ZIP_DEBUGINFO_FILES build flags. Add support for .diz files.
Reviewed-by: dholmes, ohair, sspitsyn
author | dcubed |
---|---|
date | Fri, 23 Mar 2012 11:50:33 -0700 |
parents | 719f7007c8e8 |
children | 74c359c4a9e5 |
comparison
equal
deleted
inserted
replaced
4958:3b24e7e01d20 | 6020:d652a62d6e03 |
---|---|
1 # | 1 # |
2 # Copyright (c) 1999, 2011, Oracle and/or its affiliates. All rights reserved. | 2 # Copyright (c) 1999, 2012, 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. |
59 Src_Dirs_I += $(GENERATED) | 59 Src_Dirs_I += $(GENERATED) |
60 # The order is important for the precompiled headers to work. | 60 # The order is important for the precompiled headers to work. |
61 INCLUDES += $(PRECOMPILED_HEADER_DIR:%=-I%) $(Src_Dirs_I:%=-I%) | 61 INCLUDES += $(PRECOMPILED_HEADER_DIR:%=-I%) $(Src_Dirs_I:%=-I%) |
62 | 62 |
63 # SYMFLAG is used by {jsig,saproc}.make | 63 # SYMFLAG is used by {jsig,saproc}.make |
64 ifneq ($(OBJCOPY),) | 64 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) |
65 # always build with debug info when we can create .debuginfo files | 65 # always build with debug info when we can create .debuginfo files |
66 SYMFLAG = -g | 66 SYMFLAG = -g |
67 else | 67 else |
68 ifeq (${VERSION}, debug) | 68 ifeq (${VERSION}, debug) |
69 SYMFLAG = -g | 69 SYMFLAG = -g |
137 JVM = jvm | 137 JVM = jvm |
138 LIBJVM = lib$(JVM).so | 138 LIBJVM = lib$(JVM).so |
139 LIBJVM_G = lib$(JVM)$(G_SUFFIX).so | 139 LIBJVM_G = lib$(JVM)$(G_SUFFIX).so |
140 | 140 |
141 LIBJVM_DEBUGINFO = lib$(JVM).debuginfo | 141 LIBJVM_DEBUGINFO = lib$(JVM).debuginfo |
142 LIBJVM_DIZ = lib$(JVM).diz | |
142 LIBJVM_G_DEBUGINFO = lib$(JVM)$(G_SUFFIX).debuginfo | 143 LIBJVM_G_DEBUGINFO = lib$(JVM)$(G_SUFFIX).debuginfo |
144 LIBJVM_G_DIZ = lib$(JVM)$(G_SUFFIX).diz | |
143 | 145 |
144 SPECIAL_PATHS:=adlc c1 gc_implementation opto shark libadt | 146 SPECIAL_PATHS:=adlc c1 gc_implementation opto shark libadt |
145 | 147 |
146 SOURCE_PATHS=\ | 148 SOURCE_PATHS=\ |
147 $(shell find $(HS_COMMON_SRC)/share/vm/* -type d \! \ | 149 $(shell find $(HS_COMMON_SRC)/share/vm/* -type d \! \ |
329 fi \ | 331 fi \ |
330 fi \ | 332 fi \ |
331 fi \ | 333 fi \ |
332 } | 334 } |
333 ifeq ($(CROSS_COMPILE_ARCH),) | 335 ifeq ($(CROSS_COMPILE_ARCH),) |
334 ifneq ($(OBJCOPY),) | 336 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) |
335 $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJVM_DEBUGINFO) | 337 $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJVM_DEBUGINFO) |
336 $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJVM_DEBUGINFO) $@ | 338 $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJVM_DEBUGINFO) $@ |
337 ifeq ($(STRIP_POLICY),all_strip) | 339 ifeq ($(STRIP_POLICY),all_strip) |
338 $(QUIETLY) $(STRIP) $@ | 340 $(QUIETLY) $(STRIP) $@ |
339 else | 341 else |
341 $(QUIETLY) $(STRIP) -g $@ | 343 $(QUIETLY) $(STRIP) -g $@ |
342 # implied else here is no stripping at all | 344 # implied else here is no stripping at all |
343 endif | 345 endif |
344 endif | 346 endif |
345 $(QUIETLY) [ -f $(LIBJVM_G_DEBUGINFO) ] || ln -s $(LIBJVM_DEBUGINFO) $(LIBJVM_G_DEBUGINFO) | 347 $(QUIETLY) [ -f $(LIBJVM_G_DEBUGINFO) ] || ln -s $(LIBJVM_DEBUGINFO) $(LIBJVM_G_DEBUGINFO) |
348 ifeq ($(ZIP_DEBUGINFO_FILES),1) | |
349 $(ZIPEXE) -q -y $(LIBJVM_DIZ) $(LIBJVM_DEBUGINFO) $(LIBJVM_G_DEBUGINFO) | |
350 $(RM) $(LIBJVM_DEBUGINFO) $(LIBJVM_G_DEBUGINFO) | |
351 [ -f $(LIBJVM_G_DIZ) ] || { ln -s $(LIBJVM_DIZ) $(LIBJVM_G_DIZ); } | |
352 endif | |
346 endif | 353 endif |
347 endif | 354 endif |
348 | 355 |
349 DEST_SUBDIR = $(JDK_LIBDIR)/$(VM_SUBDIR) | 356 DEST_SUBDIR = $(JDK_LIBDIR)/$(VM_SUBDIR) |
350 DEST_JVM = $(DEST_SUBDIR)/$(LIBJVM) | 357 DEST_JVM = $(DEST_SUBDIR)/$(LIBJVM) |
351 DEST_JVM_DEBUGINFO = $(DEST_SUBDIR)/$(LIBJVM_DEBUGINFO) | 358 DEST_JVM_DEBUGINFO = $(DEST_SUBDIR)/$(LIBJVM_DEBUGINFO) |
359 DEST_JVM_DIZ = $(DEST_SUBDIR)/$(LIBJVM_DIZ) | |
352 | 360 |
353 install_jvm: $(LIBJVM) | 361 install_jvm: $(LIBJVM) |
354 @echo "Copying $(LIBJVM) to $(DEST_JVM)" | 362 @echo "Copying $(LIBJVM) to $(DEST_JVM)" |
355 $(QUIETLY) test -f $(LIBJVM_DEBUGINFO) && \ | 363 $(QUIETLY) test -f $(LIBJVM_DEBUGINFO) && \ |
356 cp -f $(LIBJVM_DEBUGINFO) $(DEST_JVM_DEBUGINFO) | 364 cp -f $(LIBJVM_DEBUGINFO) $(DEST_JVM_DEBUGINFO) |
365 $(QUIETLY) test -f $(LIBJVM_DIZ) && \ | |
366 cp -f $(LIBJVM_DIZ) $(DEST_JVM_DIZ) | |
357 $(QUIETLY) cp -f $(LIBJVM) $(DEST_JVM) && echo "Done" | 367 $(QUIETLY) cp -f $(LIBJVM) $(DEST_JVM) && echo "Done" |
358 | 368 |
359 #---------------------------------------------------------------------- | 369 #---------------------------------------------------------------------- |
360 # Other files | 370 # Other files |
361 | 371 |