73 # - skip internal Nevada builds 150-158 74 # - if not skipped, print define for Nevada-B159 or later 75 SOLARIS_11_B159_OR_LATER := \ 76 $(shell uname -r -v \ 77 | sed -n \ 78 -e '/^[0-4]\. /b' \ 79 -e '/^5\.[0-9] /b' \ 80 -e '/^5\.10 /b' \ 81 -e '/ snv_[0-9][0-9]$$/b' \ 82 -e '/ snv_[01][0-4][0-9]$$/b' \ 83 -e '/ snv_15[0-8]$$/b' \ 84 -e 's/.*/-DSOLARIS_11_B159_OR_LATER/' \ 85 -e 'p' \ 86 ) 87 88 # Uncomment the following to simulate building on Nevada-B159 or later 89 # when actually building on Nevada-B158 or earlier: 90 #SOLARIS_11_B159_OR_LATER=-DSOLARIS_11_B159_OR_LATER 91 92 93 $(LIBSAPROC): $(ADD_GNU_DEBUGLINK) $(FIX_EMPTY_SEC_HDR_FLAGS) $(SASRCFILES) $(SADISOBJ) $(SAMAPFILE) 94 $(QUIETLY) if [ "$(BOOT_JAVA_HOME)" = "" ]; then \ 95 echo "ALT_BOOTDIR, BOOTDIR or JAVA_HOME needs to be defined to build SA"; \ 96 exit 1; \ 97 fi 98 @echo $(LOG_INFO) Making SA debugger back-end... 99 $(QUIETLY) $(CXX) \ 100 $(SYMFLAG) $(ARCHFLAG) $(SHARED_FLAG) $(PICFLAG) \ 101 -I$(SASRCDIR) \ 102 -I$(GENERATED) \ 103 -I$(BOOT_JAVA_HOME)/include \ 104 -I$(BOOT_JAVA_HOME)/include/$(Platform_os_family) \ 105 $(SOLARIS_11_B159_OR_LATER) \ 106 $(SASRCFILES) \ 107 $(SADISOBJ) \ 108 $(SA_LFLAGS) \ 109 -o $@ \ 110 -ldl -ldemangle -lthread -lc 111 112 $(SADISOBJ): $(SADISSRCFILES) 113 $(QUIETLY) $(CC) \ 114 $(SYMFLAG) $(ARCHFLAG) $(SHARED_FLAG) $(PICFLAG) \ 115 -I$(SASRCDIR) \ 116 -I$(GENERATED) \ 117 -I$(BOOT_JAVA_HOME)/include \ 118 -I$(BOOT_JAVA_HOME)/include/$(Platform_os_family) \ 119 $(SOLARIS_11_B159_OR_LATER) \ 120 $(SADISSRCFILES) \ 121 -c -o $(SADISOBJ) 122 123 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) 124 # gobjcopy crashes on "empty" section headers with the SHF_ALLOC flag set. 125 # Clear the SHF_ALLOC flag (if set) from empty section headers. 126 # An empty section header has sh_addr == 0 and sh_size == 0. 127 # This problem has only been seen on Solaris X64, but we call this tool 128 # on all Solaris builds just in case. 129 $(QUIETLY) $(FIX_EMPTY_SEC_HDR_FLAGS) $@ 130 $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBSAPROC_DEBUGINFO) 131 # $(OBJCOPY) --add-gnu-debuglink=... corrupts SUNW_* sections. 132 # Use $(ADD_GNU_DEBUGLINK) until a fixed $(OBJCOPY) is available. 133 # $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBSAPROC_DEBUGINFO) $@ 134 $(QUIETLY) $(ADD_GNU_DEBUGLINK) $(LIBSAPROC_DEBUGINFO) $@ 135 ifeq ($(STRIP_POLICY),all_strip) 136 $(QUIETLY) $(STRIP) $@ 137 else 138 ifeq ($(STRIP_POLICY),min_strip) 139 $(QUIETLY) $(STRIP) -x $@ 140 # implied else here is no stripping at all 141 endif 142 endif 143 ifeq ($(ZIP_DEBUGINFO_FILES),1) 144 $(ZIPEXE) -q -y $(LIBSAPROC_DIZ) $(LIBSAPROC_DEBUGINFO) 145 $(RM) $(LIBSAPROC_DEBUGINFO) 146 endif 147 endif 148 149 install_saproc: $(BULDLIBSAPROC) 150 $(QUIETLY) if [ -f $(LIBSAPROC) ] ; then \ 151 echo "Copying $(LIBSAPROC) to $(DEST_SAPROC)"; \ 152 test ! -f $(LIBSAPROC_DEBUGINFO) || \ 153 $(CP) -f $(LIBSAPROC_DEBUGINFO) $(DEST_SAPROC_DEBUGINFO); \ 154 test ! -f $(LIBSAPROC_DIZ) || \ | 73 # - skip internal Nevada builds 150-158 74 # - if not skipped, print define for Nevada-B159 or later 75 SOLARIS_11_B159_OR_LATER := \ 76 $(shell uname -r -v \ 77 | sed -n \ 78 -e '/^[0-4]\. /b' \ 79 -e '/^5\.[0-9] /b' \ 80 -e '/^5\.10 /b' \ 81 -e '/ snv_[0-9][0-9]$$/b' \ 82 -e '/ snv_[01][0-4][0-9]$$/b' \ 83 -e '/ snv_15[0-8]$$/b' \ 84 -e 's/.*/-DSOLARIS_11_B159_OR_LATER/' \ 85 -e 'p' \ 86 ) 87 88 # Uncomment the following to simulate building on Nevada-B159 or later 89 # when actually building on Nevada-B158 or earlier: 90 #SOLARIS_11_B159_OR_LATER=-DSOLARIS_11_B159_OR_LATER 91 92 93 $(LIBSAPROC): $(SASRCFILES) $(SADISOBJ) $(SAMAPFILE) 94 $(QUIETLY) if [ "$(BOOT_JAVA_HOME)" = "" ]; then \ 95 echo "ALT_BOOTDIR, BOOTDIR or JAVA_HOME needs to be defined to build SA"; \ 96 exit 1; \ 97 fi 98 @echo $(LOG_INFO) Making SA debugger back-end... 99 $(QUIETLY) $(CXX) \ 100 $(SYMFLAG) $(ARCHFLAG) $(SHARED_FLAG) $(PICFLAG) \ 101 -I$(SASRCDIR) \ 102 -I$(GENERATED) \ 103 -I$(BOOT_JAVA_HOME)/include \ 104 -I$(BOOT_JAVA_HOME)/include/$(Platform_os_family) \ 105 $(SOLARIS_11_B159_OR_LATER) \ 106 $(SASRCFILES) \ 107 $(SADISOBJ) \ 108 $(SA_LFLAGS) \ 109 -o $@ \ 110 -ldl -ldemangle -lthread -lc 111 112 $(SADISOBJ): $(SADISSRCFILES) 113 $(QUIETLY) $(CC) \ 114 $(SYMFLAG) $(ARCHFLAG) $(SHARED_FLAG) $(PICFLAG) \ 115 -I$(SASRCDIR) \ 116 -I$(GENERATED) \ 117 -I$(BOOT_JAVA_HOME)/include \ 118 -I$(BOOT_JAVA_HOME)/include/$(Platform_os_family) \ 119 $(SOLARIS_11_B159_OR_LATER) \ 120 $(SADISSRCFILES) \ 121 -c -o $(SADISOBJ) 122 123 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) 124 $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBSAPROC_DEBUGINFO) 125 $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBSAPROC_DEBUGINFO) $@ 126 ifeq ($(STRIP_POLICY),all_strip) 127 $(QUIETLY) $(STRIP) $@ 128 else 129 ifeq ($(STRIP_POLICY),min_strip) 130 $(QUIETLY) $(STRIP) -x $@ 131 # implied else here is no stripping at all 132 endif 133 endif 134 ifeq ($(ZIP_DEBUGINFO_FILES),1) 135 $(ZIPEXE) -q -y $(LIBSAPROC_DIZ) $(LIBSAPROC_DEBUGINFO) 136 $(RM) $(LIBSAPROC_DEBUGINFO) 137 endif 138 endif 139 140 install_saproc: $(BULDLIBSAPROC) 141 $(QUIETLY) if [ -f $(LIBSAPROC) ] ; then \ 142 echo "Copying $(LIBSAPROC) to $(DEST_SAPROC)"; \ 143 test ! -f $(LIBSAPROC_DEBUGINFO) || \ 144 $(CP) -f $(LIBSAPROC_DEBUGINFO) $(DEST_SAPROC_DEBUGINFO); \ 145 test ! -f $(LIBSAPROC_DIZ) || \ |