Print this page
9852 enable ld(1) guidance and deflib assertions for the illumos build

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/intel/ath/Makefile
          +++ new/usr/src/uts/intel/ath/Makefile
↓ open down ↓ 90 lines elided ↑ open up ↑
  91   91  #       Include common targets.
  92   92  #
  93   93  include $(UTSBASE)/intel/Makefile.targ
  94   94  
  95   95  #
  96   96  #       If you have any special case that general
  97   97  #       Makefile rules don't serve for you, just do
  98   98  #       it yourself.
  99   99  #
 100  100  #       The amd64 version of this object has the .eh_frame section tagged
 101      -#       as SHT_PROGBITS, while the ABI requires SHT_AMD64_UNWIND. The Solaris
 102      -#       ld enforces this, so use elfedit to bring the object in line with
 103      -#       this requirement.
      101 +#       as SHT_PROGBITS. Historically ld did not support this and instead we
      102 +#       used elfedit to transform it. The reason why we don't have the source to
      103 +#       this and instead a uuencoded .o is all together another mystery.
 104  104  #
 105  105  ATHEROS_HAL=$(UTSBASE)/common/io/ath/hal_x86_$(CLASS).o.uu
 106  106  $(OBJS_DIR)/hal.o:     $(ATHEROS_HAL)
 107  107          uudecode -o $@ $(ATHEROS_HAL)
 108      -        if [ `elfedit -r -e 'ehdr:e_machine' $@` = EM_AMD64 ]; \
 109      -                then elfedit -e 'shdr:sh_type .eh_frame SHT_AMD64_UNWIND' $@; fi
    
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX