Print this page
crt: Need a position-independent CRT for PIE
- Implement the greatest possible part of the crt1 in C
- Implement SPARC versions of the ASM sections of crt1
- Build crt1 position-independently, minor ASM updates to be position
  independent
- Implement crt1 with the hook expected by modern GCC to support
  profiling, make gcrt1 a symlink for source compatibility (older GCC
  initializes profiling at firsnt use of _mcount if necessary, so
  doesn't need the gcrt)
- Split the CRT out of developer/library/lint into a separate c-runtime package

Split Close
Expand all
Collapse all
          --- old/usr/src/cmd/sgs/rtld/sparcv9/Makefile
          +++ new/usr/src/cmd/sgs/rtld/sparcv9/Makefile
↓ open down ↓ 38 lines elided ↑ open up ↑
  39   39  P_MACHOBJS=     sparc_elf.o     _setup.o
  40   40  
  41   41  CP_MACHOBJS=    common_sparc.o
  42   42  
  43   43  S_MACHOBJS=     
  44   44  
  45   45  P_ASOBJS=       boot.o          boot_elf.o      caller.o
  46   46  
  47   47  S_ASOBJS=       
  48   48  
  49      -CRTSRCS=        ../../../../lib/common/sparcv9
       49 +CRTSRCS=        ../../../../lib/crt/sparcv9
  50   50  CRTI=           pics/crti.o
  51   51  CRTN=           pics/crtn.o
  52   52  CRTS=           $(CRTI)         $(CRTN)
  53   53  
  54   54  CHKSRCS=        $(SRCBASE)/uts/common/krtld/reloc.h
  55   55  
  56   56  BASEPLAT =      sparc
  57   57  
  58   58  include         $(SRC)/Makefile.master
  59   59  
↓ open down ↓ 47 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX