Wed, 20 Jun 2012 14:18:25 -0700
7175255: symlinks are wrong, which caused jdk8-promote-2 to fail (client/64/64 directories in debuginfo zips)
Summary: Fix bad paths in client/64 and server/64 debug info and symlink creation
Reviewed-by: ohair, dholmes
1.1 --- a/make/solaris/makefiles/add_gnu_debuglink.make Thu May 24 12:03:42 2012 -0700 1.2 +++ b/make/solaris/makefiles/add_gnu_debuglink.make Wed Jun 20 14:18:25 2012 -0700 1.3 @@ -24,8 +24,11 @@ 1.4 1.5 # Rules to build add_gnu_debuglink, used by vm.make on Solaris 1.6 1.7 -GENERATED = ../generated 1.8 -ADD_GNU_DEBUGLINK = $(GENERATED)/add_gnu_debuglink 1.9 +# Allow $(ADD_GNU_DEBUGLINK) to be called from any directory. 1.10 +# We don't set or use the GENERATED macro to avoid affecting 1.11 +# other HotSpot Makefiles. 1.12 +TOPDIR = $(shell echo `pwd`) 1.13 +ADD_GNU_DEBUGLINK = $(TOPDIR)/../generated/add_gnu_debuglink 1.14 1.15 ADD_GNU_DEBUGLINK_DIR = $(GAMMADIR)/src/os/solaris/add_gnu_debuglink 1.16 ADD_GNU_DEBUGLINK_SRC = $(ADD_GNU_DEBUGLINK_DIR)/add_gnu_debuglink.c
2.1 --- a/make/solaris/makefiles/dtrace.make Thu May 24 12:03:42 2012 -0700 2.2 +++ b/make/solaris/makefiles/dtrace.make Wed Jun 20 14:18:25 2012 -0700 2.3 @@ -94,23 +94,24 @@ 2.4 # Making 64/libjvm_db.so: 64-bit version of libjvm_db.so which handles 32-bit libjvm.so 2.5 ifneq ("${ISA}","${BUILDARCH}") 2.6 2.7 -XLIBJVM_DB = 64/$(LIBJVM_DB) 2.8 -XLIBJVM_DB_G = 64/$(LIBJVM_DB_G) 2.9 -XLIBJVM_DTRACE = 64/$(LIBJVM_DTRACE) 2.10 -XLIBJVM_DTRACE_G = 64/$(LIBJVM_DTRACE_G) 2.11 +XLIBJVM_DIR = 64 2.12 +XLIBJVM_DB = $(XLIBJVM_DIR)/$(LIBJVM_DB) 2.13 +XLIBJVM_DB_G = $(XLIBJVM_DIR)/$(LIBJVM_DB_G) 2.14 +XLIBJVM_DTRACE = $(XLIBJVM_DIR)/$(LIBJVM_DTRACE) 2.15 +XLIBJVM_DTRACE_G = $(XLIBJVM_DIR)/$(LIBJVM_DTRACE_G) 2.16 2.17 -XLIBJVM_DB_DEBUGINFO = 64/$(LIBJVM_DB_DEBUGINFO) 2.18 -XLIBJVM_DB_DIZ = 64/$(LIBJVM_DB_DIZ) 2.19 -XLIBJVM_DB_G_DEBUGINFO = 64/$(LIBJVM_DB_G_DEBUGINFO) 2.20 -XLIBJVM_DB_G_DIZ = 64/$(LIBJVM_DB_G_DIZ) 2.21 -XLIBJVM_DTRACE_DEBUGINFO = 64/$(LIBJVM_DTRACE_DEBUGINFO) 2.22 -XLIBJVM_DTRACE_DIZ = 64/$(LIBJVM_DTRACE_DIZ) 2.23 -XLIBJVM_DTRACE_G_DEBUGINFO = 64/$(LIBJVM_DTRACE_G_DEBUGINFO) 2.24 -XLIBJVM_DTRACE_G_DIZ = 64/$(LIBJVM_DTRACE_G_DIZ) 2.25 +XLIBJVM_DB_DEBUGINFO = $(XLIBJVM_DIR)/$(LIBJVM_DB_DEBUGINFO) 2.26 +XLIBJVM_DB_DIZ = $(XLIBJVM_DIR)/$(LIBJVM_DB_DIZ) 2.27 +XLIBJVM_DB_G_DEBUGINFO = $(XLIBJVM_DIR)/$(LIBJVM_DB_G_DEBUGINFO) 2.28 +XLIBJVM_DB_G_DIZ = $(XLIBJVM_DIR)/$(LIBJVM_DB_G_DIZ) 2.29 +XLIBJVM_DTRACE_DEBUGINFO = $(XLIBJVM_DIR)/$(LIBJVM_DTRACE_DEBUGINFO) 2.30 +XLIBJVM_DTRACE_DIZ = $(XLIBJVM_DIR)/$(LIBJVM_DTRACE_DIZ) 2.31 +XLIBJVM_DTRACE_G_DEBUGINFO = $(XLIBJVM_DIR)/$(LIBJVM_DTRACE_G_DEBUGINFO) 2.32 +XLIBJVM_DTRACE_G_DIZ = $(XLIBJVM_DIR)/$(LIBJVM_DTRACE_G_DIZ) 2.33 2.34 $(XLIBJVM_DB): $(ADD_GNU_DEBUGLINK) $(FIX_EMPTY_SEC_HDR_FLAGS) $(DTRACE_SRCDIR)/$(JVM_DB).c $(JVMOFFS).h $(LIBJVM_DB_MAPFILE) 2.35 @echo Making $@ 2.36 - $(QUIETLY) mkdir -p 64/ ; \ 2.37 + $(QUIETLY) mkdir -p $(XLIBJVM_DIR) ; \ 2.38 $(CC) $(SYMFLAG) $(ARCHFLAG/$(ISA)) -D$(TYPE) -I. -I$(GENERATED) \ 2.39 $(SHARED_FLAG) $(LFLAGS_JVM_DB) -o $@ $(DTRACE_SRCDIR)/$(JVM_DB).c -lc 2.40 [ -f $(XLIBJVM_DB_G) ] || { ln -s $(LIBJVM_DB) $(XLIBJVM_DB_G); } 2.41 @@ -124,8 +125,10 @@ 2.42 $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(XLIBJVM_DB_DEBUGINFO) 2.43 # $(OBJCOPY) --add-gnu-debuglink=... corrupts SUNW_* sections. 2.44 # Use $(ADD_GNU_DEBUGLINK) until a fixed $(OBJCOPY) is available. 2.45 -# $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(XLIBJVM_DB_DEBUGINFO) $@ 2.46 - $(QUIETLY) $(ADD_GNU_DEBUGLINK) $(XLIBJVM_DB_DEBUGINFO) $@ 2.47 +# $(OBJCOPY) --add-gnu-debuglink=$(LIBJVM_DB_DEBUGINFO) $(LIBJVM_DB) ; 2.48 +# Do this part in the $(XLIBJVM_DIR) subdir so $(XLIBJVM_DIR) is not 2.49 +# in the link name: 2.50 + ( cd $(XLIBJVM_DIR) && $(ADD_GNU_DEBUGLINK) $(LIBJVM_DB_DEBUGINFO) $(LIBJVM_DB) ) 2.51 ifeq ($(STRIP_POLICY),all_strip) 2.52 $(QUIETLY) $(STRIP) $@ 2.53 else 2.54 @@ -136,7 +139,9 @@ 2.55 endif 2.56 [ -f $(XLIBJVM_DB_G_DEBUGINFO) ] || { ln -s $(XLIBJVM_DB_DEBUGINFO) $(XLIBJVM_DB_G_DEBUGINFO); } 2.57 ifeq ($(ZIP_DEBUGINFO_FILES),1) 2.58 - $(ZIPEXE) -q -y $(XLIBJVM_DB_DIZ) $(XLIBJVM_DB_DEBUGINFO) $(XLIBJVM_DB_G_DEBUGINFO) 2.59 +# Do this part in the $(XLIBJVM_DIR) subdir so $(XLIBJVM_DIR) is not 2.60 +# in the archived name: 2.61 + ( cd $(XLIBJVM_DIR) && $(ZIPEXE) -q -y $(LIBJVM_DB_DIZ) $(LIBJVM_DB_DEBUGINFO) $(LIBJVM_DB_G_DEBUGINFO) ) 2.62 $(RM) $(XLIBJVM_DB_DEBUGINFO) $(XLIBJVM_DB_G_DEBUGINFO) 2.63 [ -f $(XLIBJVM_DB_G_DIZ) ] || { ln -s $(XLIBJVM_DB_DIZ) $(XLIBJVM_DB_G_DIZ); } 2.64 endif 2.65 @@ -144,7 +149,7 @@ 2.66 2.67 $(XLIBJVM_DTRACE): $(ADD_GNU_DEBUGLINK) $(FIX_EMPTY_SEC_HDR_FLAGS) $(DTRACE_SRCDIR)/$(JVM_DTRACE).c $(DTRACE_SRCDIR)/$(JVM_DTRACE).h $(LIBJVM_DTRACE_MAPFILE) 2.68 @echo Making $@ 2.69 - $(QUIETLY) mkdir -p 64/ ; \ 2.70 + $(QUIETLY) mkdir -p $(XLIBJVM_DIR) ; \ 2.71 $(CC) $(SYMFLAG) $(ARCHFLAG/$(ISA)) -D$(TYPE) -I. \ 2.72 $(SHARED_FLAG) $(LFLAGS_JVM_DTRACE) -o $@ $(DTRACE_SRCDIR)/$(JVM_DTRACE).c -lc -lthread -ldoor 2.73 [ -f $(XLIBJVM_DTRACE_G) ] || { ln -s $(LIBJVM_DTRACE) $(XLIBJVM_DTRACE_G); } 2.74 @@ -153,8 +158,10 @@ 2.75 $(QUIETLY) $(FIX_EMPTY_SEC_HDR_FLAGS) $@ 2.76 $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(XLIBJVM_DTRACE_DEBUGINFO) 2.77 # $(OBJCOPY) --add-gnu-debuglink=... corrupts SUNW_* sections. 2.78 -# $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(XLIBJVM_DTRACE_DEBUGINFO) $@ 2.79 - $(QUIETLY) $(ADD_GNU_DEBUGLINK) $(XLIBJVM_DTRACE_DEBUGINFO) $@ 2.80 +# $(OBJCOPY) --add-gnu-debuglink=$(LIBJVM_DTRACE_DEBUGINFO) $(LIBJVM_DTRACE) ; 2.81 +# Do this part in the $(XLIBJVM_DIR) subdir so $(XLIBJVM_DIR) is not 2.82 +# in the link name: 2.83 + ( cd $(XLIBJVM_DIR) && $(ADD_GNU_DEBUGLINK) $(LIBJVM_DTRACE_DEBUGINFO) $(LIBJVM_DTRACE) ) 2.84 ifeq ($(STRIP_POLICY),all_strip) 2.85 $(QUIETLY) $(STRIP) $@ 2.86 else 2.87 @@ -165,7 +172,9 @@ 2.88 endif 2.89 [ -f $(XLIBJVM_DTRACE_G_DEBUGINFO) ] || { ln -s $(XLIBJVM_DTRACE_DEBUGINFO) $(XLIBJVM_DTRACE_G_DEBUGINFO); } 2.90 ifeq ($(ZIP_DEBUGINFO_FILES),1) 2.91 - $(ZIPEXE) -q -y $(XLIBJVM_DTRACE_DIZ) $(XLIBJVM_DTRACE_DEBUGINFO) $(XLIBJVM_DTRACE_G_DEBUGINFO) 2.92 +# Do this part in the $(XLIBJVM_DIR) subdir so $(XLIBJVM_DIR) is not 2.93 +# in the archived name: 2.94 + ( cd $(XLIBJVM_DIR) && $(ZIPEXE) -q -y $(LIBJVM_DTRACE_DIZ) $(LIBJVM_DTRACE_DEBUGINFO) $(LIBJVM_DTRACE_G_DEBUGINFO) ) 2.95 $(RM) $(XLIBJVM_DTRACE_DEBUGINFO) $(XLIBJVM_DTRACE_G_DEBUGINFO) 2.96 [ -f $(XLIBJVM_DTRACE_G_DIZ) ] || { ln -s $(XLIBJVM_DTRACE_DIZ) $(XLIBJVM_DTRACE_G_DIZ); } 2.97 endif
3.1 --- a/make/solaris/makefiles/fix_empty_sec_hdr_flags.make Thu May 24 12:03:42 2012 -0700 3.2 +++ b/make/solaris/makefiles/fix_empty_sec_hdr_flags.make Wed Jun 20 14:18:25 2012 -0700 3.3 @@ -24,8 +24,11 @@ 3.4 3.5 # Rules to build fix_empty_sec_hdr_flags, used by vm.make on Solaris 3.6 3.7 -GENERATED = ../generated 3.8 -FIX_EMPTY_SEC_HDR_FLAGS = $(GENERATED)/fix_empty_sec_hdr_flags 3.9 +# Allow $(FIX_EMPTY_SEC_HDR_FLAGS) to be called from any directory. 3.10 +# We don't set or use the GENERATED macro to avoid affecting 3.11 +# other HotSpot Makefiles. 3.12 +TOPDIR = $(shell echo `pwd`) 3.13 +FIX_EMPTY_SEC_HDR_FLAGS = $(TOPDIR)/../generated/fix_empty_sec_hdr_flags 3.14 3.15 FIX_EMPTY_SEC_HDR_FLAGS_DIR = $(GAMMADIR)/src/os/solaris/fix_empty_sec_hdr_flags 3.16 FIX_EMPTY_SEC_HDR_FLAGS_SRC = $(FIX_EMPTY_SEC_HDR_FLAGS_DIR)/fix_empty_sec_hdr_flags.c